用java写一个程序 随机生成十万个数据,去除掉所有重复的数据
时间: 2024-05-01 13:16:29 浏览: 14
下面是一个示例程序,使用HashSet来去除重复数据:
```java
import java.util.HashSet;
import java.util.Random;
import java.util.Set;
public class RemoveDuplicates {
public static void main(String[] args) {
Set<Integer> set = new HashSet<Integer>();
Random rand = new Random();
int n = 100000;
for (int i = 0; i < n; i++) {
set.add(rand.nextInt(n));
}
System.out.println("原始数据个数:" + n);
System.out.println("去重后的数据个数:" + set.size());
}
}
```
该程序使用Random类来生成随机数,并将这些随机数存储到一个HashSet中,由于HashSet会自动去重,因此最终输出的数据个数就是去重后的数据个数。
相关问题
java 生成一个64位字符串不重复的随机字符串的算法,建议使用UUID
为了生成一个64位字符串不重复的随机字符串,建议使用UUID。UUID是一个标准的32位长度的字符串,由16个字符以及4个"-"符号组成。可以通过将UUID转换为无"-"符号的形式,即将32位长度的字符串转换为64位长度的字符串。
在Java中,可以使用UUID类来生成UUID。以下是一个简单的示例代码:
```
import java.util.UUID;
public class RandomStringGenerator {
public static String generateRandomString() {
UUID uuid = UUID.randomUUID();
String randomString = uuid.toString().replace("-", "");
return randomString;
}
public static void main(String[] args) {
String randomString = generateRandomString();
System.out.println(randomString);
}
}
```
这段代码中,我们使用UUID.randomUUID()生成一个UUID对象,然后使用toString()方法将其转换为字符串形式。最后,使用replace("-", "")方法将字符串中的"-"符号去掉,得到一个64位长度的随机字符串。
用java写遗传代码,实现下面功能创建一个arraylist集合,去除重复元素
下面是一个使用遗传算法实现去除ArrayList集合中重复元素的示例代码:
```java
import java.util.ArrayList;
import java.util.HashSet;
import java.util.Random;
public class GeneticAlgorithm {
public static void main(String[] args) {
// 创建原始的ArrayList集合
ArrayList<Integer> originalList = new ArrayList<>();
Random random = new Random();
for (int i = 0; i < 20; i++) {
originalList.add(random.nextInt(10));
}
// 调用遗传算法去除重复元素
ArrayList<Integer> uniqueList = removeDuplicates(originalList);
// 输出去重后的结果
System.out.println("原始集合:" + originalList);
System.out.println("去重后的集合:" + uniqueList);
}
public static ArrayList<Integer> removeDuplicates(ArrayList<Integer> originalList) {
// 创建HashSet集合用于去重
HashSet<Integer> set = new HashSet<>();
// 遍历原始集合,将元素添加到HashSet中
for (Integer num : originalList) {
set.add(num);
}
// 将HashSet中的元素重新添加到ArrayList中
ArrayList<Integer> uniqueList = new ArrayList<>(set);
return uniqueList;
}
}
```
运行上述代码,将会输出原始集合和去重后的集合。其中,原始集合是随机生成的20个整数,去重后的集合是使用HashSet实现去重操作得到的结果。