数据结构:选择排序算法,详解,图解 -- 数据结构算法集

选择排序算法

  • 折半/二分查找算法
  • 冒泡排序算法
  • 插入排序算法
  • 选择排序算法
  • 快速排序算法
  • 希尔排序算法
  • 堆排序算法
  • 归并排序算法

选择排序:

是最简单直观的排序算法,
选择排序是不稳定的排序方法,具体见:选择排序

工作原理:

第一次从所有元素中选出最小元素,放到list最开始位置,
第二次从剩下元素中选出最小元素,放到list第二个位置,
......
依次类推,执行n-1次

图解

数据结构:选择排序算法,详解,图解 -- 数据结构算法集_第1张图片
python2.7.5

实现代码

# _*_ encoding:utf-8_*_

# 选择排序
def select_sort(lists):
	# 取前n-1个元素,
	for i in range(len(lists) - 1):
		# 最小值的下标
		min = i
		# '最小值'元素依次与后面元素进行比较
		for j in range(i + 1,len(lists)):
			# 依次替换真·最小元素的下标
			if lists[min] > lists[j]:
				min = j
		# 把最小的元素替换list最前面
		lists[i],lists[min] = lists[min],lists[i]	
	return lists


lt = [4,8,3,5,2,1]
print select_sort(lt)

结果

在这里插入图片描述
 
文章中有不足之处请多多指教,欢迎讨论,共同学习,共同进步

你可能感兴趣的:(数据结构与算法,python)