码迷,mamicode.com
首页 > 编程语言 > 详细

剑指offer-数组中只出现一次的数字

时间:2020-03-25 21:23:58      阅读:62      评论:0      收藏:0      [点我收藏+]

标签:其他   sub   设置   除了   ++   返回结果   else   content   长度   

题目描述

一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。

//num1,num2分别为长度为1的数组。传出参数
//将num1[0],num2[0]设置为返回结果
public class Solution {
    public void FindNumsAppearOnce(int [] array,int num1[] , int num2[]) {
        
        int len = array.length;
        int temp = 0 ;
        for(int i=0;i<len;i++){
            for(int j=i+1;j<len;j++){
                if (array[j] < array[i])
                {
                    temp = array[i] ;
                    array[i] = array[j] ;
                    array[j] = temp ;
                }
            }
        }
        
        int flag = 0;
        if(array[0]!=array[1]){
            num1[0] = array[0];
            flag = 1;
        }  
        for(int i=1;i<len-1;i++){
            if(array[i]!=array[i-1] && array[i]!=array[i+1]){
                if(flag==0){
                    num1[0] = array[i];
                    flag = 1;
                }
                else{
                    num2[0] = array[i];
                }
            }
        }
        if(array[len-1]!=array[len-2]) num2[0] = array[len-1];
    }
}

 

剑指offer-数组中只出现一次的数字

标签:其他   sub   设置   除了   ++   返回结果   else   content   长度   

原文地址:https://www.cnblogs.com/loyolh/p/12569297.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!