黑马程序员技术交流社区
标题:
怎么去除数组中的重复元素
[打印本页]
作者:
huangsong1002
时间:
2016-7-26 21:26
标题:
怎么去除数组中的重复元素
(1)定义一个int类型的一维数组,内容为{6,2,9,6,1,2,6,7,8}
(2)去除上面定义的数组中的重复元素,打印最终结果{6, 2, 9, 1, 7, 8}
//想了一天,都没想出来,一直缺点什么
作者:
huangsong1002
时间:
2016-7-26 21:27
class Test3_Array {
public static void main(String[] args) {
int[] arr = {6,2,9,6,1,2,6,7,8};
int count=num(arr);
int[] arr1 = new int[arr.length-count-1] ;
System.out.println(count);
num1(arr,arr1);
for (int s=0;s<arr1.length ;s++ ) {
System.out.print(arr1[s]+" ");
}
}
//System.out.print("{");
//System.out.print(arr[0]);
public static int num(int[] arr){
int count=0;
for (int i=0;i<arr.length ;i++ ) {
for (int j=0;j<i ;j++ ) {
if (arr[i]==arr[j]) {
System.out.println(i);
count++;
continue;
}
//int[] arr1=new arr1[count];
}
}
return count;
}
public static void num1(int[] arr,int[] arr1){
int count1=0;
for (int i=0;i<arr.length ;i++ ) {
for (int j=0;j<i ;j++ ) {
if (arr[i]==arr[j]) {
arr1[count1]=arr[i];
count1++;
continue;
}
//int[] arr1=new arr1[count];
}
}
}
}
我感觉应该是我思路出了问题,求大神帮助
作者:
accomplonely
时间:
2016-7-26 21:32
创建一个新的数组 根据下标判断。
class Demo_Change {
public static void main(String[] args) {
System.out.println("Hello World!");
int a[]=new int[] {6,2,9,6,1,2,6,7,8};
int count=0;
a: for(int i=0;i<a.length;i++){
for(int j=i+1;j<a.length;j++){
if(a[i]==a[j]){
count++;
continue a;
}
}
}
int newArr[] = new int[a.length-count];
int index=0;
//boolean flag=false;
b: for(int i =0;i<a.length;i++){
boolean flag=false;
for(int j=0;j<newArr.length;j++){
if(a[i]==newArr[j]){
flag=true;
continue b;
}
}
if(flag==false){
newArr[index++]=a[i];
}
}
for(int i=0;i<newArr.length;i++){
System.out.print(""+newArr[i]);
}
}
}
作者:
accomplonely
时间:
2016-7-29 20:59
有问题的 数组有0不可以当时没想到
作者:
walkk
时间:
2016-7-29 21:23
就是,楼上说得好有道理我竞无言以对
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2