求数组里面仅仅出现一次的数字的个数
2013-04-22 17:23
197 查看
O(n)
public class FindOneEle {
public static int find(int[] array) {
String searchStr = "";
for (int i : array) {
searchStr += "/" + String.valueOf(i) + "/";
}
int sumOfOneEle = 0;
for (int i : array) {
String s = String.valueOf(i);
String temp = searchStr.replace("/" + s + "/", "");
int count = (searchStr.length() - temp.length()) / (s.length() + 2);
if (count == 1) {
sumOfOneEle++;
}
searchStr = temp;
}
return sumOfOneEle;
}
/**
* @param args
*/
public static void main(String[] args) {
int[] in = {23, 14, 11, 23, 45, 111, 24, 24};
System.out.println(find(in));
}
public class FindOneEle {
public static int find(int[] array) {
String searchStr = "";
for (int i : array) {
searchStr += "/" + String.valueOf(i) + "/";
}
int sumOfOneEle = 0;
for (int i : array) {
String s = String.valueOf(i);
String temp = searchStr.replace("/" + s + "/", "");
int count = (searchStr.length() - temp.length()) / (s.length() + 2);
if (count == 1) {
sumOfOneEle++;
}
searchStr = temp;
}
return sumOfOneEle;
}
/**
* @param args
*/
public static void main(String[] args) {
int[] in = {23, 14, 11, 23, 45, 111, 24, 24};
System.out.println(find(in));
}
相关文章推荐
- 40 - 找出数组中仅仅出现一次的数字
- 第六十一题(找出数组中两个仅仅出现一次的数字)
- 【剑指Offer学习】【面试题40:数组中仅仅出现一次的数字】
- 【剑指offer】数组中仅仅出现一次的数字(1)
- 【剑指offer】数组中仅仅出现一次的数字(1)
- 【剑指offer】数字数组中只出现一次(2)
- 计数排序——有一个数组,里面是从1到1,000,000的整数,其中有一个数字出现了两次,你怎么找出那个重复的数字?
- 数组中三个只出现一次的数字
- Single Number --- 找出数组中出现一次的数字
- 剑指Offer——数组中只出现一次的数字
- 《剑指offer》——数组中只出现一次的数字
- 剑指offer第40题 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- 数组中只出现一次的数字
- C++ 算法之 数组中只出现一次的数字
- 一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字
- 位操作-找到数组中只出现一次的数字
- 找出数组中两个只出现一次的数字
- 剑指offer题解 数组中只出现一次的数字