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

java實(shí)現(xiàn)求只出現(xiàn)一次的數(shù)字

 更新時(shí)間:2023年02月09日 10:23:53   作者:YS855  
本文主要介紹了java實(shí)現(xiàn)求只出現(xiàn)一次的數(shù)字,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

題目:

給你一個(gè) 非空 整數(shù)數(shù)組 nums ,除了某個(gè)元素只出現(xiàn)一次以外,其余每個(gè)元素均出現(xiàn)兩次。找出那個(gè)只出現(xiàn)了一次的元素。

示例1:

示例2:

示例3:

異或運(yùn)算的特點(diǎn):

1.任何數(shù)和0做異或運(yùn)算,結(jié)果還是原來(lái)那個(gè)數(shù)字,即a^0=a

2.任何數(shù)和本身做異或運(yùn)算,結(jié)果為0,即a^a=0

3.異或運(yùn)算滿足交換律和結(jié)合律

思路1:

因?yàn)楸绢}中的元素只有出現(xiàn)一次和兩次的情況,所以我們用異或運(yùn)算,來(lái)判斷數(shù)字是出現(xiàn)一次還是兩次。在singleNumber()方法中,定義一個(gè)int類(lèi)型變量singleNumber=0,然后遍歷數(shù)組,依次和singleNumber進(jìn)行異或運(yùn)算,最后返回singleNumber即可。

如果兩個(gè)數(shù)相同,異或結(jié)果為0;

如果兩個(gè)數(shù)不同,異或結(jié)果為1;

比如

輸入[1,2,2],singleNumber初始化為0

singleNumber為0,和1進(jìn)行異或運(yùn)算結(jié)果為1;

singleNumber為1,和2進(jìn)行異或運(yùn)算結(jié)果為3;

singleNumber為3,和2進(jìn)行異或運(yùn)算結(jié)果為1;

package Lq_算法練習(xí);
 
import java.util.Scanner;
 
public class Demo_只出現(xiàn)一次的數(shù)字 {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        String str = in.nextLine();
        String[] strArray = str.split(",");
        //鍵盤(pán)輸入數(shù)組,數(shù)字之間用","隔開(kāi)
        int[] nums = new int[strArray.length];
        for(int i=0;i<nums.length;i++) {
            nums[i]=Integer.parseInt(strArray[i]);
            //將strArray[i]轉(zhuǎn)換成整型類(lèi)型,并賦值給nums[i]
        }
        int result = singleNumber(nums);
        System.out.println("只出現(xiàn)一次的數(shù)字為:"+result);
    }
    public static int singleNumber(int[] nums) {
        int singleNumber = 0;
        //增強(qiáng)型for循環(huán),for(類(lèi)型 變量:數(shù)組),最后輸出的是num
        /*
        相當(dāng)于
        for(int i=0;i<arr.length;i++){
        int num = arr[i];
        ...
        }
        */
        for (int num : nums) {
            singleNumber ^= num;//異或運(yùn)算,轉(zhuǎn)化為二進(jìn)制再進(jìn)行運(yùn)算
            System.out.println("num="+num);
            System.out.println(singleNumber);
        }
        return singleNumber;
    }
}

運(yùn)行結(jié)果:

思路2:

直接在main方法中輸入數(shù)組,再將數(shù)組傳入singleNumber()方法中,得出只出現(xiàn)一次的數(shù)字,最后輸出。

package Lq_算法練習(xí);
 
import java.util.Scanner;
 
public class Demo_只出現(xiàn)一次的數(shù)字 {
    public static void main(String[] args) {
        int[] array = { 1, 2, 2 };
        System.out.println("只出現(xiàn)一次的數(shù)字為:"+singleNumber(array));
 
    }
 
    public static int singleNumber(int[] array) {
        int tmp = 0; // array[0];
//使用簡(jiǎn)單的for循環(huán)
        for (int i = 0; i < array.length; i++) {// for (int i = 1; i < array.length; i++) {//少一次^
            tmp = tmp ^ array[i];
        }
        return tmp;
    }
}

運(yùn)行結(jié)果:

到此這篇關(guān)于java實(shí)現(xiàn)求只出現(xiàn)一次的數(shù)字的文章就介紹到這了,更多相關(guān)java求只出現(xiàn)一次數(shù)字內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • idea創(chuàng)建SpringBoot自動(dòng)創(chuàng)建Lombok無(wú)效果的問(wèn)題解決方案

    idea創(chuàng)建SpringBoot自動(dòng)創(chuàng)建Lombok無(wú)效果的問(wèn)題解決方案

    這篇文章主要介紹了idea創(chuàng)建SpringBoot自動(dòng)創(chuàng)建Lombok無(wú)效果的問(wèn)題解決方案,感興趣的朋友跟隨小編一起看看吧
    2024-12-12
  • Java的動(dòng)態(tài)分派和靜態(tài)分派的實(shí)現(xiàn)

    Java的動(dòng)態(tài)分派和靜態(tài)分派的實(shí)現(xiàn)

    這篇文章主要介紹了Java的動(dòng)態(tài)分派和靜態(tài)分派的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • Springboot網(wǎng)站第三方登錄 微信登錄

    Springboot網(wǎng)站第三方登錄 微信登錄

    這篇文章主要為大家詳細(xì)介紹了Springboot網(wǎng)站第三方登錄 ,微信登錄,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • Spring框架依賴注入方法示例

    Spring框架依賴注入方法示例

    這篇文章主要介紹了Spring框架依賴注入方法示例,分享了三種方法示例,具有一定參考價(jià)值,需要的朋友可以了解下。
    2017-11-11
  • Java持久化XML文件配置解析

    Java持久化XML文件配置解析

    這篇文章主要為大家介紹了Java持久化XML文件配置解析,當(dāng)你在使用?Java?編程語(yǔ)言?來(lái)編寫(xiě)軟件時(shí),實(shí)現(xiàn)持久化配置的方式。有需要的朋友可以借鑒參考下,希望能夠有所幫助<BR>
    2022-03-03
  • 分享7款開(kāi)源Java反編譯工具

    分享7款開(kāi)源Java反編譯工具

    今天我們要來(lái)分享一些關(guān)于Java的反編譯工具,反編譯聽(tīng)起來(lái)是一個(gè)非常高上大的技術(shù)詞匯,通俗的說(shuō),反編譯是一個(gè)對(duì)目標(biāo)可執(zhí)行程序進(jìn)行逆向分析,從而得到原始代碼的過(guò)程。尤其是像.NET、Java這樣的運(yùn)行在虛擬機(jī)上的編程語(yǔ)言,更容易進(jìn)行反編譯得到源代碼
    2014-09-09
  • Java集合類(lèi)知識(shí)點(diǎn)總結(jié)

    Java集合類(lèi)知識(shí)點(diǎn)總結(jié)

    本文把Java集合類(lèi)的相關(guān)知識(shí)點(diǎn)做了總結(jié),并把Java常用集合類(lèi)之間的區(qū)別做了分析,一起參考學(xué)習(xí)下。
    2018-02-02
  • 在 Spring Boot 中使用 @Autowired和 @Bean注解的示例詳解

    在 Spring Boot 中使用 @Autowired和 @Bean

    本文通過(guò)一個(gè)示例演示了如何在SpringBoot中使用@Autowired和@Bean注解進(jìn)行依賴注入和Bean管理,示例中定義了一個(gè)Student類(lèi),并通過(guò)配置類(lèi)TestConfig初始化Student對(duì)象,在測(cè)試類(lèi)中,通過(guò)@Autowired注解自動(dòng)注入Student對(duì)象并輸出其屬性值,感興趣的朋友跟隨小編一起看看吧
    2025-02-02
  • 老生常談java中的數(shù)組初始化

    老生常談java中的數(shù)組初始化

    下面小編就為大家?guī)?lái)一篇老生常談java中的數(shù)組初始化。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-04-04
  • SpringBoot圖片上傳和訪問(wèn)路徑映射

    SpringBoot圖片上傳和訪問(wèn)路徑映射

    這篇文章主要為大家詳細(xì)介紹了SpringBoot圖片上傳和訪問(wèn)路徑映射,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-08-08

最新評(píng)論

扶风县| 密云县| 南充市| 仪征市| 天峻县| 盈江县| 新沂市| 花莲县| 定日县| 佛学| 永平县| 磐石市| 灵山县| 仲巴县| 锦州市| 庆元县| 海淀区| 贞丰县| 桑植县| 长乐市| 佳木斯市| 澄迈县| 通城县| 泰和县| 上饶县| 彩票| 江北区| 丰都县| 乌审旗| 永善县| 克拉玛依市| 阳春市| 库伦旗| 武义县| 康保县| 思南县| 平阳县| 惠州市| 大安市| 东宁县| 云安县|