前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python|关于基数排序(1)

Python|关于基数排序(1)

作者头像
算法与编程之美
发布2021-07-09 15:56:35
2800
发布2021-07-09 15:56:35
举报

基数排序(radix sort)属于“分配式排序”(distribution sort),又称“桶子法”(bucket sort)或bin sort,顾名思义,它是透过键值的部份资讯,将要排序的元素分配至某些“桶”中,藉以达到排序的作用,基数排序法是属于稳定性的排序,其时间复杂度为O (nlog(r)m),其中r为所采取的基数,而m为堆数,在某些时候,基数排序法的效率高于其它的稳定性排序法。

在基数排序中又分为; 1)多位关键位排序 2)链式基数排序。今天我们先来谈一谈1)多位关键字排序。

解决方案

多关键字排序中存在高位优先和低位优先。

记有d个关键字:

高位优先:顾名思义先对最高位进行排序例如在扑克牌中我们就先对花色k1进行排序然后对子序列进行次关键字kd-1排位。一直重复到最后一个次级子序列kd。

低位优先:首先对最低位排序码例kd:对所有对象进行一趟排序,

在依次对kd-已排数码的个数直到排完所有排数码最后一趟排序完成即可得到低位优先的有序数列。

结语

以上就是基数排序中的多关键字排序,文笔粗糙,我会加油改进的。下次我们来学习链式基数排序。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-07-04,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 算法与编程之美 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档