概述
计数排序
前言:其它类似文章可搜索-微信公众号-程序员小灰(不是我,是一个幽默,厉害的大佬),这篇文章只是我的学习成果记录。
漫画:什么是计数排序
暂时需要3个方法协助完成整个排序过程(当然你可能全部写在一个方法里面,博主强迫症)。
tips:如果用Python编程,博主个人建议把方法描述写在函数中,这样方便别人调用Python内置的help()方法查看您的方法描述。
直接上代码:
countList = []
def createCountList(needSortList):
'根据需要排序的列表长度生成计数列表'
for i in range(len(needSortList)):
#计数列表最开始的元素全部为0
countList.append(0)
def countElement(needSortList):
'统计需要排序的列表的每一个元素出现的个数'
for i in range(len(needSortList)):
#计数列表的下标值等于需要排序的列表的元素值
countList[needSortList[i]] += 1
def countSort(needSortList):
'统计排序算法'
for i in range(len(countList)):
#根据需要排序的列表的每个元素出现的个数打印,相当于把需要排序的列表中相同的元素打包成一个组
#其中,每个组(相同的元素)都在计数列表中按照[0-len]的顺序排好了
for j in range(countList[i]):
#end = ' '表示不换行,追加一个空格(具体查看菜鸟教程-Python3-输入与输出)
print(i, end = ' ')
#依次运行三个程序
#假设一个需要排序的列表
needSortList = [1,3,3,2,0,0,6,6]
createCountList(needSortList)
#此时countList = [0,0,0,0,0,0,0,0]
countElement(needSortList)
#此时countList = [2,1,1,2,0,0,2,0]
countSort(needSortList)
#列表完成排序
打印结果:
#打印结果
0 0 1 2 3 3 6 6
最后
以上就是土豪百合为你收集整理的常见排序算法_计数排序(Python3.6版)(count_sort)计数排序的全部内容,希望文章能够帮你解决常见排序算法_计数排序(Python3.6版)(count_sort)计数排序所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复