一个整型数组里除了两个数字只出现一次,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。
输入:
[1,4,1,6]
返回值:
[4,6]
说明:
返回的结果中较小的数排在前面
写前面的几道题写的有点废
需要一到安慰心灵的数组题
说实话,递归题练了一到又一道,心里还是虚
自己最拿手的还是数组题,哈哈~
1、首先将数组从小到大排序
2、存每个数字出现的次数到一个数组中
3、将次数出现等于1的数字存入长度为2的数组中,返回即可~
import java.util.*;
public class Solution {
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param array int整型一维数组
* @return int整型一维数组
*/
public int[] FindNumsAppearOnce (int[] array) {
// write code here
Arrays.sort(array);
int[] a = new int[2];
int[] sum= new int[array.length];
for(int i = 0; i<array.length;i++){
sum[i]=0;
for(int j=0; j<array.length;j++){
if(array[i]==array[j]){
sum[i]++;
}
}
}
for(int i=0,x=0;i<array.length;i++){
if(sum[i]==1){
a[x]=array[i];
x++;
}
}
return a;
}
}
数组真的越用越喜欢~