最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java中的異或問題代碼解析

 更新時(shí)間:2017年12月22日 09:33:50   作者:Islandww  
這篇文章主要介紹了java中的異或問題代碼解析,具有一定借鑒價(jià)值,需要的朋友可以參考下。

java的位運(yùn)算符中有一個(gè)叫異或的運(yùn)算符,用符號(hào)(^)表示,其運(yùn)算規(guī)則是:兩個(gè)操作數(shù)的位中,相同則結(jié)果為0,不同則結(jié)果為1。下面看一個(gè)例子:

public class TestXOR{
	public static void main(String[] args){
		int i = 15, j = 2;
		System.out.println("i ^ j = " + (i ^ j));
	}
}

運(yùn)行結(jié)果是:i^j=13.

分析上面程序,i=15轉(zhuǎn)成二進(jìn)制是1111,j=2轉(zhuǎn)成二進(jìn)制是0010,根據(jù)異或的運(yùn)算規(guī)則得到的是1101,轉(zhuǎn)成十進(jìn)制就是13.

利用這個(gè)規(guī)則我們可以靈活運(yùn)用到某些算法。比如,假定有2K+1個(gè)數(shù),其中有2k個(gè)相同,需要找出不相同的那個(gè)數(shù),比如:2、3、4、4、3、5、6、6、5。我們利用異或運(yùn)算符就可以這樣寫:

public class TestXOR{
	public static void main(String[] args){
		int[] array = {2,3,4,4,3,5,6,6,5};
		int v = 0;
		for (int i = 0;i < array.length;i++) {
			v ^= array[i];
		}
		System.out.println("只出現(xiàn)一次的數(shù)是:" + v);
	}
}

結(jié)果是:只出現(xiàn)一次的數(shù)是2.

我們就是巧用異或運(yùn)算符的規(guī)則,得出一個(gè)數(shù)和0異或還是自己,一個(gè)數(shù)和自己異或是0的原理。

上述計(jì)算方式:v=2^3^4^4^3^5^6^6^5;

根據(jù)交換律以及上述規(guī)則

可以推出只出現(xiàn)一次的數(shù)(需滿足前提條件2k個(gè)相同)

總結(jié)

以上就是本文關(guān)于java中的異或問題代碼解析的全部內(nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關(guān)專題,如有不足之處,歡迎留言指出。感謝朋友們對(duì)本站的支持!

相關(guān)文章

  • Springboot實(shí)現(xiàn)給前端返回一個(gè)tree結(jié)構(gòu)方法

    Springboot實(shí)現(xiàn)給前端返回一個(gè)tree結(jié)構(gòu)方法

    這篇文章主要介紹了SpringBoot返回給前端一個(gè)tree結(jié)構(gòu)的實(shí)現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • ElasticSearch啟動(dòng)成功卻無法在瀏覽器訪問問題解決辦法

    ElasticSearch啟動(dòng)成功卻無法在瀏覽器訪問問題解決辦法

    因工作的需要,要使用elasticsearch,安裝完了,啟動(dòng)也成功了之后發(fā)現(xiàn)了問題,這篇文章主要給大家介紹了關(guān)于ElasticSearch啟動(dòng)成功卻無法在瀏覽器訪問問題的解決辦法,需要的朋友可以參考下
    2024-10-10
  • 使用IDEA搭建ssm框架的詳細(xì)圖文教程

    使用IDEA搭建ssm框架的詳細(xì)圖文教程

    這篇文章主要介紹了使用IDEA搭建ssm框架的詳細(xì)教程,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09
  • 使用springboot每日推送早安問候語到用戶微信的全過程

    使用springboot每日推送早安問候語到用戶微信的全過程

    近期網(wǎng)上又出現(xiàn)一股給女朋友做微信公眾號(hào)推送的潮流,所以這篇文章主要給大家介紹了關(guān)于如何使用springboot每日推送早安問候語到用戶微信的相關(guān)資料,文中通過圖文以及實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-11-11
  • SpringBoot如何在線程中獲取@Service Bean類

    SpringBoot如何在線程中獲取@Service Bean類

    這篇文章主要介紹了SpringBoot如何在線程中獲取@Service Bean類,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • Java中接口的多態(tài)詳解

    Java中接口的多態(tài)詳解

    大家好,本篇文章主要講的是Java中接口的多態(tài)詳解,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下
    2022-02-02
  • IDEA SpringBoot項(xiàng)目配置熱更新的步驟詳解(無需每次手動(dòng)重啟服務(wù)器)

    IDEA SpringBoot項(xiàng)目配置熱更新的步驟詳解(無需每次手動(dòng)重啟服務(wù)器)

    這篇文章主要介紹了IDEA SpringBoot項(xiàng)目配置熱更新的步驟,無需每次手動(dòng)重啟服務(wù)器,本文通過圖文實(shí)例代碼相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-04-04
  • Java中Arrays.asList()需要注意的坑

    Java中Arrays.asList()需要注意的坑

    在Java中,我們經(jīng)常需要將數(shù)組轉(zhuǎn)換為List來方便地進(jìn)行操作,Arrays.asList()方法是一種常見的方式,本文主要介紹了Java中Arrays.asList()需要注意的坑,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-08-08
  • Mybatis?sql與xml文件讀取方法詳細(xì)分析

    Mybatis?sql與xml文件讀取方法詳細(xì)分析

    這篇文章主要介紹了Mybatis?sql與xml文件讀取方法,在執(zhí)行一個(gè)自定義sql語句時(shí),dao對(duì)應(yīng)的代理對(duì)象時(shí)如何找到sql,也就是dao的代理對(duì)象和sql之間的關(guān)聯(lián)關(guān)系是如何建立的
    2023-01-01
  • Spring Cache自定義緩存key和過期時(shí)間的實(shí)現(xiàn)代碼

    Spring Cache自定義緩存key和過期時(shí)間的實(shí)現(xiàn)代碼

    使用 Redis的客戶端 Spring Cache時(shí),會(huì)發(fā)現(xiàn)生成 key中會(huì)多出一個(gè)冒號(hào),而且有一個(gè)空節(jié)點(diǎn)的存在,查看源碼可知,這是因?yàn)?nbsp;Spring Cache默認(rèn)生成key的策略就是通過兩個(gè)冒號(hào)來拼接,本文給大家介紹了Spring Cache自定義緩存key和過期時(shí)間的實(shí)現(xiàn),需要的朋友可以參考下
    2024-05-05

最新評(píng)論

汽车| 南投市| 板桥市| 广昌县| 新干县| 铜川市| 沙湾县| 宝丰县| 邢台市| 新乐市| 洪洞县| 崇文区| 延吉市| 三都| 罗城| 丹棱县| 德庆县| 龙陵县| 密云县| 馆陶县| 乌鲁木齐市| 南宫市| 阿拉尔市| 青铜峡市| 崇信县| 长阳| 汉川市| 得荣县| 全州县| 萨迦县| 芜湖市| 三穗县| 河津市| 平凉市| 德安县| 望谟县| 鹤岗市| 平远县| 天峻县| 武乡县| 甘南县|