本篇內(nèi)容主要講解“JavaScript位運算異或怎么使用”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“JavaScript位運算異或怎么使用”吧!
10年專注成都網(wǎng)站制作,成都定制網(wǎng)頁設(shè)計,個人網(wǎng)站制作服務(wù),為大家分享網(wǎng)站制作知識、方案,網(wǎng)站設(shè)計流程、步驟,成功服務(wù)上千家企業(yè)。為您提供網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)頁設(shè)計及定制高端網(wǎng)站建設(shè)服務(wù),專注于成都定制網(wǎng)頁設(shè)計,高端網(wǎng)頁制作,對成都加固等多個方面,擁有豐富的網(wǎng)站建設(shè)經(jīng)驗。
算法:
在位運算中,運用最多的便是異或操作^,規(guī)則如下所示:
1.a^a = 0 ,a^0 = a,2.a^b^a= a^a^b = 0^b = b備注:下面的兩個題目是單純使用異或操作的題目,一種是最基本的異或操作,一種是稍作轉(zhuǎn)換就可以完成的變形題目。
題目1: 異或的基本使用
代碼實現(xiàn):
func singleNumber(nums []int) int { if len(nums) == 0 { return 0 } res := 0 for _,v := range nums{ res ^= v } return res}// 算法:// 利用位運算,異或的使用,a^a = 0 ,a^0 = a,// 因為題目是兩個數(shù),和一個數(shù),屬于^的完美使用范疇,// 由公式:a^b^a= a^a^b = 0^b = b,可以直接將代碼取異或操作,//結(jié)果就是那個個數(shù)為1的數(shù)
題目2: 異或的變形題目
代碼實現(xiàn):
func singleNumber(nums []int) []int { if len(nums) == 0 { return nil } // step1:抵消掉數(shù)量為2的數(shù) tmp:= 0 for _,v:=range nums{ tmp ^= v } // step2:找出來第一個為1的bit位 i:=0 for { n := 1<
到此,相信大家對“JavaScript位運算異或怎么使用”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學習!