基数排序算法的链表实现.pdfVIP

  1. 1、本文档共2页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基数排序算法的链表实现.pdf

! Q: Science and Technology Innovation Herald T技 术 基数排序算法的链表实现 敖友 云 (安庆师范学院计算机与信息学院 安徽安庆 246011) 摘 要:比较关键字和移动记录是实现算法排序的两个基本操作。在经典排序算法中,基数排序是一种不通过比较关键字实现排序的方 法。通过示倒说明了基数排序算法的基本思想,用C程序设计语言以链表为存储结构实现 了基数排序算法,并分析了基数排序算法的计算 复 杂性 。 关键词:算法 排序 基数排序 链表 中图分类号:TP3I2 文献标识码 :A 文章编号 :1674--098X(2011)08(b)一0023—02 排序是计算机处理数据序列最常用的 1基数排序算法的基本思想 3)按百位数分配和收集数据结点,分配 一 种操作 。排序操作将一组无序的数据序 设有一个由RADIx个单链表组成 的链 到链表集L中的数据结点的分布位置:L[0】 列按某种次序重新排列 ,从而得到一组有 表集 L【 0,1,...,RADIX一1和 一 个 由 = {8,63,83},L[1】={l09,184},L[21={269, 序的数据序列 ,以方便用户的查找 ,提高检 RECNUM个数据元素组成的单链表Head= 278},L[5】={505,589},L[9]={930};收集到 索数据 的效率 。下面给 出排序的概念 : 单链表Head中的数据结点的相应位置 : {al,a2,...,aREC },每 个 数 据 元 素 由 定义1:设有一个由 个记录R={Rlf KEYNUM个关键字组成 ,每个关键字的表 Head={930,589,505,278,269,184,109,83, =1,2….,}构成的有限序列,这 个记录对 63,8}。 达式为 ,七KEYNLJM七KEYNUM 一 七1,0 最后 ,将单链表Head中的数据按逆序 应的关键字序列为k={kiI=1,2….,}。 RADⅨ 则基数排序算法 的步骤如下 : 传 回给数组 ,得到有序数组a为 {8,63,83, 排序就是确定 1,2….,n的一种排列P。,P:, 1)f=1l l09,l84,269,278,505,589,930}。 p ,使 得 k k口, … kP (或 kp1 2)依据单链表Head中每个数据元素的 … , 第f位关键字上的数字ki,把数据结点取下 k … k ),并通过调整 R 中记录的位 分配~URADIX个链表集L中,分配的原则是 2基数排序算法的链表实现 置,得到一个新的按关键字非递减 (或非递 关键字ki=J的数据结点,都分配到链表 下面给出了基数排序算法 的C语言程 增)的有序序列R’={R R,…., }的 L[j]中; 序代码 。程序 已在VC++环境下测试通过 。 过程 。

文档评论(0)

过各自的生活 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档