找出數組中出現一次的數

package leetCode;
/**
 * 整型數組其中有一個數是出現一次的,其餘的都相同,找出這個數字。
 * eg:{4,1,1,1,1}; 輸出結果爲4
 * @author 2萌
 *
 */
public class RemoveDuplicatesTest {

	public static int removeDuplicates(int[] array) {
		if (array.length==0 || array==null) {
			return 0;
		}
		
		int index = 0;
		int m = 0 ;
		if (array.length > 3) {
			for (int i = 1; i < array.length; i++) {
				//當{4,1,1,1,1};情況時候
				if (array[index] != array[i] && array[index] != array[i+1]) {
					m = array[index];
					return m; 
					//當{1,2,1,1,1};情況時候
				} else if (array[index] != array[i] && array[index] == array[i+1]) {
					m = array[i];
					return m; 
					//當{1,1,2,1,1};情況時候
				} else if (array[index] == array[i] && array[index] != array[i+1]) {
					m = array[i+1];
					return m; 
					//當{1,1,1,1,3};情況時候
				} else if (array[index] == array[i]) {
					index++;
				} 
			}
		} else if (array.length == 3) {
			for (int i = 1; i < array.length; i++) {
				if (array[index] == array[i] && array[index] != array[i+1]) {
					m = array[i+1];
					return m;
				} else if (array[index] != array[i] && array[index] != array[i+1]) {
					m = array[index];
					return m;
				} else if (array[index] != array[i] && array[index] == array[i+1]) {
					m = array[i];
					return m;
				}
			}
		}
		
		return m;
	}
	
	public static void main(String args[]) {
		/*
		 * {4,1,1,1,1};
		 * {1,1,2,1,1};
		 * {1,1,1,1,3};
		 * {1,7,1,1,1};
		 * {1,1,3};
		 */
		int[] array = {4,1,1};
		int a = removeDuplicates(array);
		System.out.println(a);
	}
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章