首页 > 编程语言 > 详细

八大排序算法的python实现(七)基数排序

时间:2017-08-04 17:59:32      阅读:224      评论:0      收藏:0      [点我收藏+]

代码:

#coding:utf-8
#author:徐卜灵
import math
#print  math.ceil(3.2)   向上取整4.0
#print math.floor(3.2) 向下取整3.0
#print math.log(100,10) base 为10 结果为2.0
def Radiz_sort(L):
    k = int(math.ceil(math.log(max(L),10))) #最大为几位数  max(L)
    bucket = [[] for i in range(10)]  #建立10个空列表
    print bucket
    for i in range(1,k+1):
        for j in L:
            bucket[j/(10**(i-1))%(10 ** i)].append(j)
        del L[:]
        for z in bucket:
            L += z
            del z[:]
    print L
# bucket = [[] for i in range(10)]
# print bucket
L = [1, 3, 2, 32, 5, 4]
Radiz_sort(L)

怎么少了一种?先写这些,以后再修改一下。

八大排序算法的python实现(七)基数排序

原文:http://www.cnblogs.com/xubing-613/p/7286348.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!