定义一个数组,写出冒泡排序或选择排序
时间: 2023-08-01 22:12:50 浏览: 96
好的,以下是定义一个数组并使用冒泡排序和选择排序排序的示例代码:
```python
# 定义一个数组
arr = [5, 2, 8, 3, 1]
# 冒泡排序
for i in range(len(arr)):
for j in range(len(arr) - 1):
if arr[j] > arr[j + 1]:
arr[j], arr[j + 1] = arr[j + 1], arr[j]
print("冒泡排序后的数组:", arr)
# 选择排序
for i in range(len(arr)):
min_index = i
for j in range(i + 1, len(arr)):
if arr[j] < arr[min_index]:
min_index = j
arr[i], arr[min_index] = arr[min_index], arr[i]
print("选择排序后的数组:", arr)
```
输出结果为:
```
冒泡排序后的数组: [1, 2, 3, 5, 8]
选择排序后的数组: [1, 2, 3, 5, 8]
```
希望能对你有所帮助!
相关问题
用Java定义一个数组,写出冒泡排序或选择排序
好的,以下是定义一个数组并使用冒泡排序和选择排序排序的示例代码:
```java
public class Main {
public static void main(String[] args) {
// 定义一个数组
int[] arr = {5, 2, 8, 3, 1};
// 冒泡排序
for (int i = 0; i < arr.length; i++) {
for (int j = 0; j < arr.length - 1; j++) {
if (arr[j] > arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
System.out.println("冒泡排序后的数组:" + Arrays.toString(arr));
// 选择排序
for (int i = 0; i < arr.length; i++) {
int minIndex = i;
for (int j = i + 1; j < arr.length; j++) {
if (arr[j] < arr[minIndex]) {
minIndex = j;
}
}
int temp = arr[i];
arr[i] = arr[minIndex];
arr[minIndex] = temp;
}
System.out.println("选择排序后的数组:" + Arrays.toString(arr));
}
}
```
输出结果为:
```
冒泡排序后的数组:[1, 2, 3, 5, 8]
选择排序后的数组:[1, 2, 3, 5, 8]
```
希望能对你有所帮助!
用Java定义一个数组,写出冒泡排序,选择排序和插入排序
好的,以下是定义一个数组并使用冒泡排序、选择排序和插入排序排序的示例代码:
```java
public class Main {
public static void main(String[] args) {
// 定义一个数组
int[] arr = {5, 2, 8, 3, 1};
// 冒泡排序
bubbleSort(arr);
System.out.println("冒泡排序后的数组:" + Arrays.toString(arr));
// 选择排序
selectionSort(arr);
System.out.println("选择排序后的数组:" + Arrays.toString(arr));
// 插入排序
insertionSort(arr);
System.out.println("插入排序后的数组:" + Arrays.toString(arr));
}
// 冒泡排序
public static void bubbleSort(int[] arr) {
for (int i = 0; i < arr.length; i++) {
for (int j = 0; j < arr.length - 1 - i; j++) {
if (arr[j] > arr[j + 1]) {
swap(arr, j, j + 1);
}
}
}
}
// 选择排序
public static void selectionSort(int[] arr) {
for (int i = 0; i < arr.length - 1; i++) {
int minIndex = i;
for (int j = i + 1; j < arr.length; j++) {
if (arr[j] < arr[minIndex]) {
minIndex = j;
}
}
swap(arr, i, minIndex);
}
}
// 插入排序
public static void insertionSort(int[] arr) {
for (int i = 1; i < arr.length; i++) {
int current = arr[i];
int j = i - 1;
while (j >= 0 && arr[j] > current) {
arr[j + 1] = arr[j];
j--;
}
arr[j + 1] = current;
}
}
// 交换数组中的两个元素
public static void swap(int[] arr, int i, int j) {
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
}
```
输出结果为:
```
冒泡排序后的数组:[1, 2, 3, 5, 8]
选择排序后的数组:[1, 2, 3, 5, 8]
插入排序后的数组:[1, 2, 3, 5, 8]
```
希望能对你有所帮助!
阅读全文