#一。以数列最大值创建数组
def countSort(string):
#得到数列的最大值
max1=string[0]
for i in range(len(string)):
if(max1<string[i]):
max1=string[i]
#根绝数列最大值创建数组
matrix=[0 for i in range(max1+1)]
print(matrix)
#遍历数列,填充数组
for i in range(len(string)):
matrix[string[i]]+=1
#遍历数组,输出结果
for i in range(len(matrix)):
print(i,matrix[i])
string=[4,4,6,5,3,2,8,1,7,5,6,0,10]
countSort(string)
#一。以数列最大值-最小值+1创建数组
def countSort(string):
#得到数列的最大值
max1=string[0]
for i in range(len(string)):
if(max1<string[i]):
max1=string[i]
min1 = string[0]
for i in range(len(string)):
if (min1 > string[i]):
min1 = string[i]
#根绝数列最大值创建数组
n=max1-min1+1
matrix=[0 for i in range(n)]
print(matrix)
#遍历数列,填充数组
for i in range(len(string)):
matrix[string[i]%10]+=1
#遍历数组,输出结果
for i in range(len(matrix)):
print(i+90,matrix[i])
string=[95,94,91,98,99,90,99,93,91,92]
countSort(string)
数据结构之计数排序(python实现)
最新推荐文章于 2021-08-12 21:22:46 发布