Python选择排序法代码
时间: 2023-11-05 12:04:22 浏览: 33
以下是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
```
该函数接受一个列表作为输入,返回一个排序好的列表。算法首先遍历整个列表,找到最小的元素并将其放在列表的第一个位置。然后它继续遍历剩余的元素,并找到最小的元素。这个元素和列表的第二个位置交换。这个过程一直持续到整个列表都被排序好。
以下是一个使用示例:
```python
arr = [64, 25, 12, 22, 11]
sorted_arr = selection_sort(arr)
print(sorted_arr)
```
输出:
```
[11, 12, 22, 25, 64]
```
相关问题
Python冒泡排序算法代码例子
当然,以下是Python实现冒泡排序算法的代码例子:
```python
def bubble_sort(arr):
n = len(arr)
# 遍历所有数组元素
for i in range(n):
# Last i elements are already sorted
for j in range(0, n-i-1):
# traverse the array from 0 to n-i-1
# Swap if the element found is greater than the next element
if arr[j] > arr[j+1] :
arr[j], arr[j+1] = arr[j+1], arr[j]
```
这段代码中,我们首先定义了一个`bubble_sort`函数来实现冒泡排序。排序的主循环通过遍历数组来进行。内部循环是在数组中遍历当前未排序的元素,如果发现前一个元素比后一个元素大,那么就交换它们的位置。这样,每次内部循环都可以将最大的元素移动到数组的末尾。
python的选择排序法代码
Sure, I can provide you with the code for Selection Sort in Python. Here it is:
def selection_sort(arr):
for i in range(len(arr)):
min_idx = i
for j in range(i+1, len(arr)):
if arr[min_idx] > arr[j]:
min_idx = j
arr[i], arr[min_idx] = arr[min_idx], arr[i]
return arr
Hope this helps!