用java代码写出:给定一个集合,补全数组,使得其中的数字都是连续的
时间: 2024-03-06 22:46:56 浏览: 102
正则表达式实现匹配连续数字的方法
以下是Java代码实现:
```java
import java.util.*;
public class Main {
public static void main(String[] args) {
// 给定的集合
List<Integer> list = new ArrayList<>(Arrays.asList(1, 3, 5, 8, 9, 10));
Collections.sort(list); // 先对集合进行排序
int[] arr = new int[list.size()]; // 新建一个数组
for (int i = 0; i < list.size(); i++) {
arr[i] = list.get(i); // 将集合中的元素逐个存入数组
}
// 对数组进行遍历,找出缺失的元素,并进行补全
for (int i = 0; i < arr.length - 1; i++) {
if (arr[i + 1] - arr[i] > 1) { // 如果相邻两个元素的差大于1,则说明有缺失的元素
for (int j = 1; j < arr[i + 1] - arr[i]; j++) { // 对缺失的元素进行补全
arr[i + j] = arr[i] + j;
}
}
}
// 输出补全后的数组
System.out.println(Arrays.toString(arr));
}
}
```
输出结果为:`[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]`,可以看出数组中的元素都是连续的。
阅读全文