选择排序算法设计升序代码
时间: 2024-09-21 09:03:23 浏览: 24
选择排序是一种简单直观的排序算法,它的工作原理是在未排序序列中找到最小(或最大)元素,存放到排序序列的起始位置,然后继续从剩余未排序元素中寻找最小(大)元素,直到所有元素都排好序。以下是选择排序的一个升序版本的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("排序后的数组:", sorted_arr)
相关问题
对n个字符串进行选择排序算法进行升序排序
当然可以!选择排序算法是一种简单但低效的排序算法,其基本思路是在未排序的部分中找到最小值,然后将其放入已排序部分的末尾,重复这个过程直到排序完成。以下是用 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
你只需要将你的 n 个字符串存放到一个列表中,然后调用这个函数即可得到升序排列后的列表。
编写一个函数,使用选择排序算法对数组元素进行升序排序。在主程序中调用这个函数并输出结果
这是一个使用选择排序算法对数组进行升序排序的示例代码:
```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])
```
输出结果为:
```
排序后的数组:
11
12
22
25
64
```
这里我们定义了一个 `selection_sort` 函数来实现选择排序算法,它接受一个数组作为输入,并返回一个排好序的数组。在主程序中,我们先定义了一个数组 `arr`,然后调用 `selection_sort` 函数对它进行排序,并将排序后的结果打印出来。
阅读全文