主要思想:

数组可以无序

假设数字里的值都为正

循环判断数组 如果与前面的数字相同则变为-1

然后记录-1的个数算出重复值

然后重新new一个减去重复值长度的新数组

和原数组判断 不为-1的全部复制进来即可

代码如下:

  1. package Del_Same_Num;
  2.  
  3. public class Del_Same_Num {
  4.  
  5. static int count=0;
  6.  
  7. //计算重复值
  8. public static int count_same_number(int[] a)
  9. {
  10. for(int i=0;i<a.length;i++)
  11. {
  12. for(int j=i+1;j<a.length;j++)
  13. {
  14. if(a[i]==a[j]&&a[i]!=-1)
  15. {
  16. System.out.print("i="+i+":"+"j="+j+'\t');
  17. a[j]=-1;
  18. count++;
  19. System.out.println("有重复值是"+a[i]);
  20. }
  21. }
  22. }
  23.  
  24. System.out.println("一共有"+count+"个重复值");
  25. return count;
  26.  
  27. }
  28.  
  29. public static int[] change(int src[])
  30. {
  31. int length=src.length-count_same_number(src);
  32. int[] target=new int[length];
  33.  
  34. int index=0;
  35. for(int i=0;i<src.length;i++)
  36. {
  37. if(src[i]!=-1)
  38. {
  39. target[index]=src[i];
  40. index++;
  41. }
  42. }
  43.  
  44. display(target);
  45. return target;
  46. }
  47.  
  48. //显示
  49. public static void display(int[] a)
  50. {
  51. for(int i=0;i<a.length;i++)
  52. {
  53. System.out.print(a[i]+" ");
  54. }
  55. System.out.println();
  56. }
  57. public static void main(String[] args) {
  58. int a[]={1,2,2,3,4,1,1,21,4,5,5,6,7,19,20,21};
    display(a);
  59. change(a);
  60. }
  61.  
  62. }

运行效果:

计算一个数组里的重复值并且删去(java)的更多相关文章

  1. php判断检测一个数组里有没有重复的值

    php判断检测一个数组里有没有重复的值 php里有一个处理数组重复值得函数array_unique,我们的思路就是用这个函数来实现的. if (count($array) != count(array ...

  2. JavaScript怎么把对象里的数据整合进另外一个数组里

    https://blog.csdn.net/qq_26222859/article/details/70331833 var json1 = [ {"guoshui":[ 3000 ...

  3. JavaScript去除数组中的重复值

    用原型函数(prototype)可以定义一些很方便的自定义函数,实现各种自定义功能. Javascript 中的原型函数(prototype)的工作原理,在 javascript 中每次声明新函数的过 ...

  4. Java数组,去掉重复值、增加、删除数组元素

    import java.util.List; import java.util.ArrayList; import java.util.Set; import java.util.HashSet; p ...

  5. RemoveDuplicatesFromSortedArrayI II,移除有序数组里的重复元素以及移除数组里的某个元素

    RemoveDuplicatesFromSortedArrayI: 问题描述:给定一个有序数组,去掉其中重复的元素.并返回新数组的长度.不能使用新的空间. [1,1,2,3] -> [1,2,3 ...

  6. leetcode 刷题(数组篇)26题 删除有序数组中的重复值 (双指针)

    题目描述 给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度. 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额 ...

  7. 字符串数组(String []) 去掉重复值的方法

    public class Demo { /** * 去掉重复值 */ public static void main(String[] args) { String test = "100, ...

  8. java中使用hashSet的特性,判断数组是否有重复值

    public static boolean cheakRepeat(int[] array){ HashSet<Integer> hashSet = new HashSet<Inte ...

  9. input的选中与否以及将input的value追加到一个数组里

    html布局 <div class="mask"> //每一个弹层都有一个隐藏的input <label> <input hidden="& ...

随机推荐

  1. cookie那些事

    本文面向对cookie有基本了解的读者,小白出门左转   设置cookie (HTTP 响应头) Set-Cookie: {name}={value};path={path};domain={doma ...

  2. 练习使用jquery.并将验证强度的功能加到注册页面中

  3. 百度地图API用法(传地址)

    网上找了很多都是没用的,非动态用法,最后在官网论坛才问到的 现在来一步一步教大家用 1 这是地址:   http://developer.baidu.com/map/ 选择web开发 先获取密钥   ...

  4. 使用安卓中的TextToSpeech控件实现朗读文字

    首先感谢原文的博主,本文中的代码均来自该博主:(原文地址)http://flycatdeng.iteye.com/blog/1827245 朗读文字不需要任何的权限,这个控件的好处是首先不要权限,其次 ...

  5. cocos2d-x 2.2.6中c++通过JNI与java互调

    1.HelloCpp.java /**************************************************************************** Copyri ...

  6. Oralce 按分隔符把一列转成多行

    1.前言 最近因项目需求,需要把员工的工作组返回给前台,但是数据库是把员工的工作组Id,都存在一个字段内了(以“逗号”分隔),而这样不符合前台的需要,他们需要一行,一行的数据.如: 数据库: user ...

  7. (转)ubuntu下如何查看软件安装目录以及安装版本

    1.查询版本 aptitude show 软件名 例如:aptitude show kde-runtime 显示如下: ****@ubuntu:~$ aptitude show kde-runtime ...

  8. 一个数n的最大质因子

    #include<cstdio> #include<cmath> using namespace std; #define Max(x, y) (x > y ? x : ...

  9. (原)Vs中debug和release结果不一致

    转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5598091.html 前两天调试程序,出现了一个很蛋疼的问题,debug和release结果不一致.网 ...

  10. C#读写word

    操作word之前需要在COM引入Microsoft Office 12.0 Object Library(文件库可能不一样) 然后添加using Microsoft.Office.Interop.Wo ...