去掉数组重复的元素

                                                                           去掉数组重复的元素

问题描述
  输入10个整数组成的序列,要求对其进行升序排序,并去掉重复元素。
输入格式
  10个整数。
输出格式
  多行输出,每行一个元素。
样例输入
2 2 3 3 1 1 5 5 5 5
样例输出
1
2
3

5

代码:

import java.util.*;
public class Shuzupaixuchuchong {
    public static void fun(int arr[])
    {
          int length=arr.length;
         // 共有3个for循环
          // 其中第一for循环也就是最外层的for循环,列出数组里的每一个元素。
          // 数组里面重复元素,每个元素比较后才能够得出哪些元素是重复的。
          // 前面的二个for用来比较元素,比较两个相邻元素而已
          
        for(int i=0;i<length;i++)
        {
              // 在这个地方不能将j=0,for的循环内层的for循环完了后,外层才开始循环
            for(int j=i;j<length-1;j++)

            {
                if(arr[i]==arr[j+1])
                
                {  
                    // 这个for循环将去掉重复的元素
                    for(int k=j+1;k<length-1;k++)
                    {
                        arr[k]=arr[k+1];
                    }
                    length--;
                    j--;
                }
                
                    
            }
        }
        
        Arrays.sort(arr); // 按小到大的顺序排序
        // 这for循环用来打印数组的每一个元素
        for(int i=0;i<length;i++)
        {
                System.out.println(arr[i]);    
        }
    }
    public static void main(String[] args)
    {
        Scanner in=new Scanner(System.in);
        int arr[]=new int[10];
        for(int i=0;i<arr.length;i++)
        {
            arr[i]=in.nextInt();
                    
        }
      
        fun(arr);
        
    }

}

运行结果:

去掉数组重复的元素_第1张图片

注:上面除掉重复的元素,是重复的元素排放在一起而已。但像 1 2 3 4 5 5 4 3 2 1 。除掉像这样的元素则行不通。

 大家想知道后面的这个除掉数组重复的元素,请关注我下一篇博文。 希望我的博文能够对大家有帮助吧!

 

你可能感兴趣的:(去掉数组重复的元素)