검지 Offer24 - 배열에 한 번만 나타나는 숫자

9266 단어 검지 Offer
하나의 정형수조에서 두 개의 숫자를 제외하고 다른 숫자는 모두 두 번 나타났다.프로그램을 써서 이 두 개의 한 번만 나오는 숫자를 찾아내세요.
//num1,num2      1   。    
// num1[0],num2[0]       
import java.util.ArrayList;
import java.util.Iterator;
import java.util.HashMap;
import java.util.Map.Entry;
public class Solution {
    public void FindNumsAppearOnce(int [] array,int num1[] , int num2[]) {
        int flag=0;
        if(array.length==0){
            num1[0]=0;
            num2[0]=0;
            return;
        }
        HashMap<Integer,Integer> map=new HashMap<>();
        for(int i=0;i<array.length;i++){
            if(map.containsKey(array[i])){
                map.put(array[i],2);
            }else{
                map.put(array[i],1);
            }
        }
        Iterator<Entry<Integer,Integer>> iterator=map.entrySet().iterator();
        while(iterator.hasNext()){
            Entry<Integer,Integer> entry=iterator.next();
            if(entry.getValue()==1&&flag==0){
                num1[0]=(Integer)entry.getKey();
                flag=1;
            }
             if(entry.getValue()==1&&flag==1){
                num2[0]=(Integer)entry.getKey();
            }
        }
    }
}

좋은 웹페이지 즐겨찾기