使用Python实现基数排序算法原理的实例

2024年 1月 22日 88.1k 0

基数排序算法是桶排序算法的一种,是对基于相同位置的值,进行分组排序。可能这么说有点不好理解,可以看下面的基数排序算法原理实例。

基数排序算法原理实例

指定数组[121,432,564,23,1,45,788],将数组进行基数排序,如图:

基数排序算法原理实例 Python实现基数排序算法

先进行个位数值的排序,再进行十位数值的排序,最后再排序百位数值,最后输出经过排序后的数组为[001,023,045,121,432,564,788]

Python代码实现基数排序算法

def countingSort(array, place):
size = len(array)
output = [0] * size
count = [0] * 10

for i in range(0, size):
index = array[i] // place
count[index % 10] += 1

for i in range(1, 10):
count[i] += count[i - 1]

i = size - 1
while i >= 0:
index = array[i] // place
output[count[index % 10] - 1] = array[i]
count[index % 10] -= 1
i -= 1

for i in range(0, size):
array[i] = output[i]

def radixSort(array):
# Get maximum element
max_element = max(array)

place = 1
while max_element // place > 0:
countingSort(array, place)
place *= 10

data = [121, 432, 564, 23, 1, 45, 788]
radixSort(data)
print(data)

登录后复制

以上就是使用Python实现基数排序算法原理的实例的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!

相关文章

JavaScript2024新功能:Object.groupBy、正则表达式v标志
PHP trim 函数对多字节字符的使用和限制
新函数 json_validate() 、randomizer 类扩展…20 个PHP 8.3 新特性全面解析
使用HTMX为WordPress增效:如何在不使用复杂框架的情况下增强平台功能
为React 19做准备:WordPress 6.6用户指南
如何删除WordPress中的所有评论

发布评论