计算一个数组里的重复值并且删去(java)
主要思想:
数组可以无序
假设数字里的值都为正
循环判断数组 如果与前面的数字相同则变为-1
然后记录-1的个数算出重复值
然后重新new一个减去重复值长度的新数组
和原数组判断 不为-1的全部复制进来即可
代码如下:
- package Del_Same_Num;
- public class Del_Same_Num {
- static int count=0;
- //计算重复值
- public static int count_same_number(int[] a)
- {
- for(int i=0;i<a.length;i++)
- {
- for(int j=i+1;j<a.length;j++)
- {
- if(a[i]==a[j]&&a[i]!=-1)
- {
- System.out.print("i="+i+":"+"j="+j+'\t');
- a[j]=-1;
- count++;
- System.out.println("有重复值是"+a[i]);
- }
- }
- }
- System.out.println("一共有"+count+"个重复值");
- return count;
- }
- public static int[] change(int src[])
- {
- int length=src.length-count_same_number(src);
- int[] target=new int[length];
- int index=0;
- for(int i=0;i<src.length;i++)
- {
- if(src[i]!=-1)
- {
- target[index]=src[i];
- index++;
- }
- }
- display(target);
- return target;
- }
- //显示
- public static void display(int[] a)
- {
- for(int i=0;i<a.length;i++)
- {
- System.out.print(a[i]+" ");
- }
- System.out.println();
- }
- public static void main(String[] args) {
- int a[]={1,2,2,3,4,1,1,21,4,5,5,6,7,19,20,21};
display(a);- change(a);
- }
- }
运行效果:
计算一个数组里的重复值并且删去(java)的更多相关文章
- php判断检测一个数组里有没有重复的值
php判断检测一个数组里有没有重复的值 php里有一个处理数组重复值得函数array_unique,我们的思路就是用这个函数来实现的. if (count($array) != count(array ...
- JavaScript怎么把对象里的数据整合进另外一个数组里
https://blog.csdn.net/qq_26222859/article/details/70331833 var json1 = [ {"guoshui":[ 3000 ...
- JavaScript去除数组中的重复值
用原型函数(prototype)可以定义一些很方便的自定义函数,实现各种自定义功能. Javascript 中的原型函数(prototype)的工作原理,在 javascript 中每次声明新函数的过 ...
- Java数组,去掉重复值、增加、删除数组元素
import java.util.List; import java.util.ArrayList; import java.util.Set; import java.util.HashSet; p ...
- RemoveDuplicatesFromSortedArrayI II,移除有序数组里的重复元素以及移除数组里的某个元素
RemoveDuplicatesFromSortedArrayI: 问题描述:给定一个有序数组,去掉其中重复的元素.并返回新数组的长度.不能使用新的空间. [1,1,2,3] -> [1,2,3 ...
- leetcode 刷题(数组篇)26题 删除有序数组中的重复值 (双指针)
题目描述 给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度. 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额 ...
- 字符串数组(String []) 去掉重复值的方法
public class Demo { /** * 去掉重复值 */ public static void main(String[] args) { String test = "100, ...
- java中使用hashSet的特性,判断数组是否有重复值
public static boolean cheakRepeat(int[] array){ HashSet<Integer> hashSet = new HashSet<Inte ...
- input的选中与否以及将input的value追加到一个数组里
html布局 <div class="mask"> //每一个弹层都有一个隐藏的input <label> <input hidden="& ...
随机推荐
- cookie那些事
本文面向对cookie有基本了解的读者,小白出门左转 设置cookie (HTTP 响应头) Set-Cookie: {name}={value};path={path};domain={doma ...
- 练习使用jquery.并将验证强度的功能加到注册页面中
- 百度地图API用法(传地址)
网上找了很多都是没用的,非动态用法,最后在官网论坛才问到的 现在来一步一步教大家用 1 这是地址: http://developer.baidu.com/map/ 选择web开发 先获取密钥 ...
- 使用安卓中的TextToSpeech控件实现朗读文字
首先感谢原文的博主,本文中的代码均来自该博主:(原文地址)http://flycatdeng.iteye.com/blog/1827245 朗读文字不需要任何的权限,这个控件的好处是首先不要权限,其次 ...
- cocos2d-x 2.2.6中c++通过JNI与java互调
1.HelloCpp.java /**************************************************************************** Copyri ...
- Oralce 按分隔符把一列转成多行
1.前言 最近因项目需求,需要把员工的工作组返回给前台,但是数据库是把员工的工作组Id,都存在一个字段内了(以“逗号”分隔),而这样不符合前台的需要,他们需要一行,一行的数据.如: 数据库: user ...
- (转)ubuntu下如何查看软件安装目录以及安装版本
1.查询版本 aptitude show 软件名 例如:aptitude show kde-runtime 显示如下: ****@ubuntu:~$ aptitude show kde-runtime ...
- 一个数n的最大质因子
#include<cstdio> #include<cmath> using namespace std; #define Max(x, y) (x > y ? x : ...
- (原)Vs中debug和release结果不一致
转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5598091.html 前两天调试程序,出现了一个很蛋疼的问题,debug和release结果不一致.网 ...
- C#读写word
操作word之前需要在COM引入Microsoft Office 12.0 Object Library(文件库可能不一样) 然后添加using Microsoft.Office.Interop.Wo ...