简单排序法的原理是通过多次选择最小(或最大)的元素,逐步将元素放置到正确的位置,最终完成排序。虽然算法简单直观,但在大规模数据排序时效率较低。
#定义了一个选择排序的函数,接收一个列表nums作为输入。
def selectsort(nums):
#外层循环控制需要进行多少轮选择,每一轮选择会确定一个位置的元素。
for i in range(len(nums)-1):
#初始化最小值索引为当前位置i。
min_ = i
#内层循环从当前位置i的下一个位置开始遍历列表,找到未排序部分的最小值索引。
for j in range(i+1, len(nums)):
#如果找到比当前最小值还小的元素,则更新最小值索引为j。
if nums[j] < nums [min_]:
min_ = j
##如果最小值索引发生了变化(即找到了比当前位置更小的元素),则进行交换操作。
if min !=i:
#交换当前位置的元素和最小值元素的位置。
temp = nums[i]
nums[i] = nums[min_]
nums [min_]=temp
#返回排序后的列表。
return nums
if __name__=="__main__":
nums=[3,2,4,5,6,1]
#调用selectsort函数对列表nums进行选择排序,并打印排序后的结果。
print(selectsort(nums))