实现冒泡游戏功能关键算法 编写一个程序,将其中重复的数字从数组移除 注意:使用循环完成,用eclipse编写
时间: 2024-10-09 17:10:13 浏览: 18
实现冒泡排序算法去重复数字的关键在于遍历和比较过程。以下是用Java编写的冒泡排序算法,它会删除数组中的重复元素:
```java
public class BubbleSortRemoveDuplicates {
public static void main(String[] args) {
int[] array = {1, 2, 3, 4, 5, 2, 6, 7, 3, 8};
bubbleSortAndRemoveDuplicates(array);
for (int num : array) {
System.out.print(num + " ");
}
}
// 冒泡排序函数,同时检查并移除重复元素
public static void bubbleSortAndRemoveDuplicates(int[] arr) {
int n = arr.length;
boolean swapped;
for (int i = 0; i < n - 1; ) {
swapped = false; // 标记是否发生过交换
for (int j = 0; j < n - 1 - i; j++) {
if (arr[j] == arr[j + 1]) { // 如果连续两个元素相等
// 将后面的元素向前移动一位
swap(arr, j, j + 1);
i++; // 更新未处理元素的索引
swapped = true; // 表明已经发生了交换,所以需要继续检查下一个元素
}
}
// 如果这一轮都没有发生交换,说明数组已排序,无需再检查
if (!swapped) {
break;
}
}
}
// 用于交换数组中两个元素的辅助方法
private static void swap(int[] arr, int i, int j) {
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
```