选择排序pyzhon代码
时间: 2023-05-18 14:03:05 浏览: 50
以下是选择排序的 Python 代码:
def selection_sort(arr):
for i in range(len(arr)):
min_idx = i
for j in range(i+1, len(arr)):
if arr[j] < arr[min_idx]:
min_idx = j
arr[i], arr[min_idx] = arr[min_idx], arr[i]
return arr
arr = [64, 25, 12, 22, 11]
print("排序前的数组:", arr)
print("排序后的数组:", selection_sort(arr))
希望这个代码能对你有所帮助。
相关问题
选择排序Java代码
选择排序是一种简单直观的排序算法,它的基本思想是每次从待排序的元素中选择最小(或最大)的元素,放到已排序序列的末尾。以下是选择排序的Java代码示例:
```java
public class SelectionSort {
public static void selectionSort(int[] arr) {
int n = arr.length;
for (int i = 0; i < n-1; i++) {
int minIndex = i;
// 找到未排序部分的最小元素的索引
for (int j = i+1; j < n; j++) {
if (arr[j] < arr[minIndex]) {
minIndex = j;
}
}
// 将最小元素与未排序部分的第一个元素交换位置
int temp = arr[minIndex];
arr[minIndex] = arr[i];
arr[i] = temp;
}
}
public static void main(String[] args) {
int[] arr = {64, 25, 12, 22, 11};
selectionSort(arr);
System.out.println("排序后的数组:");
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i] + " ");
}
}
}
```
以上代码中,`selectionSort`方法实现了选择排序算法。在每一轮循环中,通过遍历未排序部分找到最小元素的索引,然后将其与未排序部分的第一个元素交换位置。`main`方法中演示了如何使用该方法对一个整数数组进行排序。
插入排序选择排序代码
当然,我可以为您介绍一下插入排序和选择排序的代码实现。
首先是插入排序的代码实现:
```python
def insertion_sort(arr):
for i in range(1, len(arr)):
key = arr[i]
j = i - 1
while j >= 0 and arr[j] > key:
arr[j + 1] = arr[j]
j -= 1
arr[j + 1] = key
return arr
```
接下来是选择的代码实现:
```python
def selection_sort(arr):
for i in range(len(arr)):
min_idx = i
for j in range(i + 1, len(arr)):
if arr[j] < arr[min_idx]:
min_idx = j
arr[i], arr[min_idx] = arr[min_idx], arr[i]
return arr
```
以上是两种常见的排序算法的代码实现,插入排序和选择排序。您可以根据需要使用这些代码来对列表进行排序。