导航:首页 > 方法技巧 > 如何给数组去重java方法

如何给数组去重java方法

发布时间:2022-05-15 03:16:20

1. java二维double数组去重问题

转换成string放入map中,使用map的特性去重。

2. 在java中,给出一个数组,里面有重复的数字,要求将重复的数字去掉然后给新的数组进行排序

数组是没有去重的函数的,你可以用set或者map来去重 ,如果你想要代码,可以追问

3. java中怎么将字符串数组中的重复的元素去掉,但是还是保留一个。

import java.util.*;

class BaiDu
{
public static void main(String[] args)
{
TreeSet<String> tr = new TreeSet<String>();
String[] s ={"11","22","22","33","33","33"};
System.out.print("====处理前=======");
for(int i=0;i<s.length;i++){
System.out.print(s[i]+" ");
tr.add(s[i]);

}
String[] s2= new String[tr.size()];
System.out.println("=====处理后======");
for(int i=0;i<s2.length;i++){
s2[i]=tr.pollFirst();//从TreeSet中取出元素重新赋给数组
System.out.print(s2[i]+" ");
}
}
}

4. java中对字符串数组去重并忽略大小写

你是要写一个实现了这样功能的程序吗?

首先你要有思想去解决这个问题,你知道该怎么做,你才能去利用java这个语言工具去实现,其实编程最核心的就是思想(算法),当然还有数据结构,这两个东西才是程序设计的核心。

这个题很简单嘛,首先在内存里面开辟一个集合空间s,你用来存放你想要的结果,然后依次去遍历你这个数组,每次取一个(统一转换成小写),然后看看你的s里面是否包含了这个元素,没有包含就放进去,包含了就跳过这个,这样不是当你遍历完你的数组的时候,你要的结果就有了吗?

以上是我的一个思想,当然也是最常规的解法。现在就是要你用语言去实现了。看看,不会写我可以帮你,有什么问题就继续追问,没问题请记得采纳,谢谢!

5. JAVA数组去重问题

提供个思路,具体算法还是自己写比较好。

你可以用一个循环把vector里的元素取出来放进一个map里面,之所以用map就是因为map是不允许有重复元素的。

这样,map的key就是你的vector的元素,后面的value就是这个元素出现的次数。

当然,你在向map添加的时候要判断一下是否有这个元素了。

最后频率,计算一下就好了。

6. JAVA关于顺序数组数据去重,效率最高的方式是什么

JAVA关于顺序数组数据去重,效率最高的方式是使用LinkedHashSet也是Set,set的特征就是对重复的元素只保存一个,LinkedHashSet只是在内部使用链表维护元素插入的顺序

packagecom.question;

importjava.io.BufferedReader;
importjava.io.FileInputStream;
importjava.io.FileNotFoundException;
importjava.io.FileOutputStream;
importjava.io.IOException;
importjava.io.InputStream;
importjava.io.InputStreamReader;
importjava.io.OutputStream;
importjava.util.LinkedHashSet;

/**
*deletetheconflictString.
*
*@authorXxx
*/
publicclassQ16{

/**
*generatethetext.
*
*/
publicvoidinit(){

//writefile
OutputStreamoutputStream=null;
try{
outputStream=newFileOutputStream("C:/init.txt");
for(inti=0;i<100000;i++){
for(intj=0;j<2;j++){
outputStream.write(("Hello"+i).getBytes());
outputStream.write(" ".getBytes());
}
}
}catch(FileNotFoundExceptione){
e.printStackTrace();
}catch(IOExceptione){
e.printStackTrace();
}finally{
if(outputStream!=null){
outputStream=null;
}
}
}

/**
*filterthestring.
*
*@return
*/
publicLinkedHashSet<String>filter(){

//createaLinkedHashSetproject.
LinkedHashSet<String>linkedHashSet=newLinkedHashSet<String>();
try{

//readthefile.
InputStreaminputStream=newFileInputStream("C:/init.txt");
=newInputStreamReader(inputStream);
BufferedReaderbufferedReader=newBufferedReader(inputStreamReader);
Stringline=bufferedReader.readLine();

//
while(line!=null){
linkedHashSet.add(line);
line=bufferedReader.readLine();
}

}catch(FileNotFoundExceptione){
e.printStackTrace();
}catch(IOExceptione){
e.printStackTrace();
}
//returntheresult.
returnlinkedHashSet;
}

@Deprecated
publicstaticvoidmain(String[]args){
Q16q16=newQ16();
//q16.init();
LinkedHashSet<String>linkedHashSet=q16.filter();
System.out.println(linkedHashSet.size());
}
}

7. 用Java删除数组中所有相同的数,使之仅剩下一个,然后输出剩下的数据

public class ArrayUnique {

/**
* 方法1 就是申请一个和nums大小一样的数组tmpNums,
* 然后遍历nums中的元素,对每个元素判断是否在tmpNums出现过,
* 如果出现过,那么就不放到新数组里面,也就是不做处理;
* 如果没有出现过,那么就把它放到新的数组里面
* 这种方法数组原来的相对顺序可以保证
* 时间复杂度是n^2和空间复杂度是n
*
*
@param nums 输入需要去重的数组
*
@return 返回去重后数组的长度

*/

public static int unique1(int[] nums) {

if (nums.length == 0) {

return 0;
}

int[] tmpNums = new int[nums.length];
tmpNums[
0] = nums[0];

int index = 1;

for (int i = 1, len = nums.length; i < len; i++) {

int j = 0;

for (; j < index; j++) {

if (tmpNums[j] == nums[i]) {

break;
}
}

if (j == index) {
tmpNums[index
++] = nums[i];
}
}
nums
= tmpNums;

return index;
}

8. 用java语言vertor类数组编写一个去除一个数组重复数字的程序

你好,对于使用vertor,你需要先加入数据再遍历出来。根据你的问题可以有以下思路供您参考:
1、准备要去重的数组 如int num={1,2,5,2,67,5}
2、通过循环将数组中的每个元素add 到vertor中存储。
3、将存储在vertor中的数据进行遍历,然后进行比较,如果已经存在则将重复的其中一个去掉。

希望能够帮助你。

9. Java如何将数组中具有相同的元素都删去

如果是要把List中的重复元素删除的话可以先吧List转成Set去除重复元素

比如现在有个数组为 myArray ,里面有部分的重复元素

Set mySet = new HashSet();
for(Object obj : Array){
mySet.add(obj);
}

mySet中所保存的元素就是唯一的了.
再吧mySet保存到数组中

完整例子:
// 创建一个数组,里面存在重复的元素
String[] myArray = {"s","s","f","d"};
Set<String> mySet = new HashSet<String>();
// 去除重复元素
for(String s : myArray){
mySet.add(s);
}
myArray = new String[mySet.size()];
int index = 0;
// 将去重后的结果存入数组
for(String s : mySet){
myArray[index] = s;
index++;
}
// 打印出来结果
System.out.println(Arrays.toString(myArray));

10. Java数组去重复问题

最简单的方式,我觉得效率也比较高的! 你建一个set。TreeSet吧,把组数组里面的数据取出来一个一个放入set。最后set里面的数据就是没有重复的了!把set再放回ArrayList就OK。好处是,不管List有多大,放入的时候都是一个一个放的。我尝试过给6万条数据去重复,效率还是可以的

阅读全文

与如何给数组去重java方法相关的资料

热点内容
灯光控制手机的使用方法 浏览:81
目的基因检测的步骤和方法是什么 浏览:676
分数混合计算方法总结 浏览:370
英语教学方法有哪些直接法情景法 浏览:927
分析和综合思维方法的运用 浏览:783
aca电蒸锅使用方法 浏览:851
画叠被子的简便方法 浏览:361
舞蹈正确踢腿方法 浏览:820
企鹅支架训练方法 浏览:572
常用的安全风险分析评估方法有哪几种 浏览:2
配音秀中测试方法哪里看 浏览:625
人生解决问题方法 浏览:100
毛线打结方法视频 浏览:807
苹果手机里缓存的腾讯视频在哪里设置方法 浏览:636
常用表示溶液的方法有 浏览:934
三周孩子高烧有什么快速退热方法 浏览:60
疑病失眠的治疗方法 浏览:356
梦想变现的最佳方法 浏览:852
李逵败给李鬼是什么修辞方法 浏览:796
节约使用食用油的方法 浏览:342