实现简单选择排序算法
时间: 2023-12-17 09:29:00 浏览: 40
以下是实现简单选择排序算法的Python代码:
```python
def selection_sort(arr):
n = len(arr)
for i in range(n):
min_idx = i
for j in range(i+1, n):
if arr[j] < arr[min_idx]:
min_idx = j
arr[i], arr[min_idx] = arr[min_idx], arr[i]
return arr
```
这段代码定义了一个名为`selection_sort`的函数,它接受一个列表作为输入,并返回一个已排序的列表。函数使用两个嵌套的循环来实现选择排序算法。外部循环遍历整个列表,内部循环在未排序的部分中查找最小值,并将其与当前位置交换。这样,每次迭代后,列表的前面部分都是已排序的,而后面部分是未排序的。
相关问题
c语言实现简单选择排序算法
以下是C语言实现简单选择排序算法的代码:
```c
// 交换两个数据
void Swap(int* a, int* b) {
int temp = *a;
*a = *b;
*b = temp;
}
// 选择排序
void SelectSort(int* arr, int size) {
int i = 0;
for (i = 0; i < size-1; i++) {
int min = i;
int j = 0;
for (j = i+1; j < size; j++) {
if (arr[j] < arr[min]) {
min = j;
}
}
Swap(&arr[i], &arr[min]);
}
}
```
使用python实现简单选择排序算法
很高兴回答您的问题。简单选择排序是一种基本的排序算法,可以用 Python 编写实现。
以下是简单选择排序的 Python 代码:
def selection_sort(arr):
n = len(arr)
for i in range(n):
min_idx = i
for j in range(i+1, n):
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]
sorted_arr = selection_sort(arr)
print("排序后的数组:")
for i in range(len(sorted_arr)):
print("%d" % sorted_arr[i]),
希望能帮助到您,谢谢!
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)