选择排序python代码
时间: 2023-07-21 15:37:46 浏览: 41
以下是选择排序的 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代码
以下是选择排序的Python代码:
```python
def selectionSort(arr):
for i in range(len(arr) - 1):
maxIndex = i # 记录最大元素的索引
# 找出最大元素
for j in range(i + 1, len(arr)):
if arr[j] > arr[maxIndex]:
maxIndex = j
# i不是最大元素时,将i和最大元素进行交换
if i != maxIndex:
arr[i], arr[maxIndex] = arr[maxIndex], arr[i]
return arr
if __name__ == "__main__":
nums = [1, 42, 65, 876, 34, 656, 4, 6757, 89, 24, 65, 42]
print("start:", nums)
print("选择排序:", selectionSort(nums))
```
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
```
该函数接受一个列表作为输入,返回一个排序好的列表。算法首先遍历整个列表,找到最小的元素并将其放在列表的第一个位置。然后它继续遍历剩余的元素,并找到最小的元素。这个元素和列表的第二个位置交换。这个过程一直持续到整个列表都被排序好。
以下是一个使用示例:
```python
arr = [64, 25, 12, 22, 11]
sorted_arr = selection_sort(arr)
print(sorted_arr)
```
输出:
```
[11, 12, 22, 25, 64]
```