基數排序法.

Slides:



Advertisements
Similar presentations
Software Learning Resource Service Platform CHAPTER 7 搜尋和排序 (Search and Sort) 1.
Advertisements

办公室保健指南. 减少辐射篇 ❤显示器散发出的辐射多数不是来自它的正面,而是侧面和后面。因此,不要 把自己显示器的后面对着同事的后脑或者身体的侧面。 ❤常喝绿茶。茶叶中含有的茶多酚等活性物质,有助吸收放射性物质。 ❤尽量使用液晶显示器。
Go !报账去 ~ 中国科学技术大学财务报销及相关业务办理指南. 本次培训的主旨: 为了规范学校财务管理和会计基础工作,方便全校 教职工研究生等相关人员了解财务报销程序及报销要求 ,提高报销工作效率和质量,更好的服务全校师生,根 据国家财经法律、法规以及学校相关的财务管理制度规 定,结合我校财务工作的实际情况,进行本次培训。
魏 饴. 处级干部培训班讲座 一、卓越干部的德行素质  常修为政之德、常思贪欲之害、常怀律己之心!  孔老夫子有个观点 “ 为政以德,譬如北辰居其所而众星拱之。 ”  司马光《资治通鉴》 “ 才者,德之资也;德者,才之帅也。 ” “ 德 ” 胜 “ 才 ” 谓之 “ 君子 ” , “ 才 ”
一、真愛密碼 二、尋求真愛 三、有自尊的愛. 。如果雙方對愛情產生 質疑、困惑時,則表示 彼此之間的愛情關係仍 有 待加強或釐清,千萬別 急著為自己的人生大事 下決定。 我是一個 16 歲的未婚媽媽,發現自 己懷孕時,已經五個月大了,我知 道自己沒能力照顧孩子,在驚訝之 於,大人們只好坦然接受,幫我找.
大地遊戲王 課程實錄.
東元綜合醫院 主講人:醫事課 課長 張桂瑛 醫管處醫事課 新人教育訓練課程 -批價作業.
組長:黃昱仁 組員:邱彥儒.曾煒俊 黃詩涵.廖婉伶
一、流水贷主要规则介绍 流水贷主要准入规则 企业类型 中国大陆注册企业,生产型企业+贸易公司(个体工商户、个人独资企业均可准入)
加強水銀體溫計稽查管制及回收 回收作業須知及緊急應變措施
第4章 分錄及日記簿 4-1 借貸法則 4-2 日記簿的格式及記錄方法 4-3 分錄的意義及記錄方法 4-4 常見分錄題型分析
阶段总结 计量资料假设检验总结及实例分析.
我的青春檔案.
禁毒知识教育 ·.
励步英语授权流程.
第十三屆 Step.1 我們的目標 Step.2 我們的角色 Step.4 權利與義務 義務 權利 年繳會費五百元整
單元名稱: 愛的十字路口.
散文選及習作 [墨池記] 曾鞏 國二甲 S 洪國勛 指導教授:胡翰平 老師.
主讲人:王燕超 时间:2013年12月11日 地点:310 (报告厅)
2015年黄石市安监局禁毒培训 ——易制毒化学品安全培训
EF少儿英语学习研究报告(北京).
102學年度 第1學期 第十二屆 學生自治會期初大會.
校園反毒宣導.
先進觀念 • 輕鬆掌握 商周數位學院 《當圓形遇上三角形》 建議最佳閱讀版本:powerpoint 2000.
我們通常都會稱自己為香港人?還是中國人? 為甚麼回歸了,人們口頭上不說是中國人,而是香港人呢?
财务管理.
第5章 排序与查找 PART A 《可视化计算》.
数学运算.
对实验教学工作的认识与思考 西北工业大学 万小朋 2014年11月.
植物保护 课程整体设计 汇报 申报省级精品资源共享课建设 植物保护课程组.
房地合一新制介紹 (含本法及申報作業要點) 財政部南區國稅局澎湖分局
2011年全国中等职业学校医药卫生类专业 “创新杯”教师说课比赛
----银行间的比较 论资本构成与充足率 淡 彩 的 黑 板 淡 彩 的 黑 板 金融73班 王艺霏 王 英
第二章 數字系統:電腦內部的資料表示法 在第一章中,我們對於電腦有了初步的認識,在深入介紹電腦的各項組成元件之前,首先我們必須先了解另一種不同於人類使用習慣的二進位表示法,由於電腦的半導體、磁性、光學元件適合用來表示二進位,因此二進位表示法非常適合用來設計電腦。
政府扶持资金通览 技术改造篇.
前不久看到了这样一则报道:某个大学校园里,一个大学生出寝室要给室友留一张字条,告诉他钥匙放在哪里。可是“钥匙”两个字他不会写,就问了其他寝室的同学,问了好几个,谁也不会写,没办法,只好用“KEY”来代替了。 请大家就此事发表一下自己看法。
学籍异动学生选课辅导 学年第1学期.
長者日 每年 11月第三個星期日 表達對長者的敬意 宣傳關懷長者的訊息.
認識資源班.
利用共同供應契約 辦理大量訂購流程說明.
課程名稱:資料結構 授課老師:_____________
本科生医保资料的提交.
第九章 排序 概述 插入排序 交换排序 选择排序 归并排序 基数排序 外排序.
第十章 排序與搜尋.
統計圖表的製作.
Sorting 排序 Bubble Sort O(n2) Insert Sort Selection Sort Quick Sort
如何赢一个机械键盘
Sorting in Linear Time Michael Tsai 2013/5/21.
《结构力学认知实验》(授课形式)的上课时间改为: 5月5日(周二)晚上18:00~19:30和19:30~21:00,
《结构力学认知实验》(授课形式)的上课时间改为: 5月7日(周四)晚上18:30~20:00和20:00~21:30,
健康體育網路護照操作 STEP1 於教育部體適能網站進入「健康體育網路護照」.
第8章 資料排序 資料結構設計與C++程式應用
兒少保護通報處理流程介紹 臺中市家庭暴力及性侵害防治中心 陳秀婷/張美慧 社工督導員 2012/10/19.
數字系統 資訊工程系 國立清華大學資訊基礎教育 教學改進計畫 數字系統 資訊工程系 /4/22.
清淨家園全民運動顧厝邊部落格 綠色生活(EcoLife)網
臺中市政府環境保護局 推動綠網操作說明 中華民國100年11月28日.
畢業資格審查系統 操作步驟說明.
新制退休實務計算說明- 現職人員退休範例說明
兒童及少年保護、 家庭暴力及性侵害事件、 高風險家庭 宣導與通報
教育部特殊教育通報網 學生異動、接收操作說明.
進貨管理介接更動 有關「匯入進貨資料」傳,請注意「上游業者出貨單號」,上游業者出貨單號要配合「匯出上游出貨資料」中的「出貨單號」或是「自有系統上傳的出貨單號」。 Ø  若「自有系統上傳的出貨單號」有值,則「匯入進貨資料」中的「上游業者出貨單號」就要key入「匯出上游出貨資料」中的「自有系統上傳的出貨單號」。
99-2如何撰寫求職履歷表和自傳 國立宜蘭大學 楊淳皓老師.
106 學年度新生入學說明會 國立臺灣海洋大學 教務處簡介
批次請(休)假單 功能路徑:[請假作業專區]→[批次請(休)假單] 功能說明:提供使用者線上申請/維護 多天、不連續請(休)假
學士學位畢業論文說明 逢 學 大 甲 土 理 管 地 2009/10/05.
高雄市97年度國民小學閱讀計畫創新教學-教案達人創新教學方案
本教學投影片係屬教科書著作之延伸,亦受著作權法之保護。
資料結構 老師:李崇明 助教:楊斯竣.
Round prepared by rsabcmoi and tangent
姓名:林鳳珍 小名:阿Key 身高:160 體重:65 年齡:23
Presentation transcript:

基數排序法

不同類型的排序演算法 採取比較與交換技巧(Comparison & Swap) 利用鍵值(Key)來與欲排序的數字做比較,合乎某種條件就將Key與被比較的數字做交換的動作 相關排序演算法 插入排序法 選擇排序法 氣泡排序法 快速排序法 合併排序法 採取分配與合併技巧(Distribution & Merge) 排序過程中,透過分配與合併動作的反覆運行,達到排序的目的。 相關排序演算法:基數排序法

基數排序法 基數排序法(Radix Sort)屬於「分配式排序」(Distribution Sort),又稱為多鍵排序(Multi-Key Sort)或桶子演算法(Bucket Sort)。 基數排序是依據每個記錄的鍵值劃分為若干單元,把相同的單元放置在同一箱子,常用於卡片或信件的分類機。 基數排序法是屬於穩定性(stable)的排序,其時間複雜度為O(n logr m),其中r為所採取的基數,而m為堆數。在某些情況下所需時間是O(n),所需空間很大,需要(n*n),n為記錄數。

基數排序法的兩種運作方式 依其運作方式可分為兩種: 最低位數優先(Least Significant Digit First;LSD) 是從最右邊的位數開始,只須採用分配和合併兩個步驟。 最高位數優先(Most Significant Digit First;MSD) 是從最左邊的位數開始,採用分配、插入排序、合併等三個步驟進行。 LSD的基數排序適用於位數小的數列,如果位數多的話,使用MSD的效率會比較好,MSD的方式恰與LSD相反,是由高位數為基底開始進行分配,其他的演算方式則都相同。

最低位數優先法(LSD) 運作原理: 是從最右邊的位數開始分配 假設r為基底(Base,或稱進制),則準備r個Buckets 假設d為最大鍵值的位數個數,則須執行d回合才能完成sort工作。 以3位數的數字來排序,必須進行3回合排序 以撲克牌排序(花色+數字),必須進行2回合排序 從最低位數到最高位數執行各個回合,每回合做: 依位數值,將資料分配到對應的Bucket中Distribution(分配) 合併r個BucketsMerge(合併) 由「左而右」合併為「遞增排序」 由「右而左」合併為「遞減排序」

三位數的LSD Radix Sort (1/5) Q:欲將下列數字以LSD Radix Sort加以排序(Base=10,十進制) 179, 208, 306, 93, 859, 984, 55, 9, 271, 33

三位數的LSD Radix Sort (2/5) 運作方式: Base=10,∴準備10個桶子,編號為0~9。 最大的數值是984,有三個位數,∴d=3,同時可知道需執行3個回合才會完成Sort工作 第一回合:從最低位數(個位數)開始執行 依(個位數),將資料分配到對應的Bucket中→Distribution(分配) 合併10個Buckets(從0~9)→ Merge(合併) 第二回合:依據中間位數(十位數)執行 依(十位數),將資料分配到對應的Bucket中→ Distribution(分配) 合併10個Buckets(從0~9) → Merge(合併) 第三回合:以最高位數(百位數)執行 依(百位數),將資料分配到對應的Bucket中→ Distribution(分配)

三位數的LSD Radix Sort (3/5)

三位數的LSD Radix Sort (4/5) 依此類推,依序將十個數字放入適當的桶子中。 再依序0-9將所有桶子中的數字合併起來 如此即完成第一回合(針對個位數)的流程

三位數的LSD Radix Sort (5/5) 接著以第一回合的合併結果,進行第二回合(流程與第一回合相同)。 接著以第二回合的合併結果,進行第三回合(流程與第一回合相同)。 此時,輸出的結果即為由小到大的排序結果。

最高位數優先法(MSD) 運作原理: 從最左邊的位數開始分配 以3位數的百位數來分配,假設r為基底(Base,或稱進制),則準備r個Buckets 其基底為10 ,必須準備0-9個Buckets 將桶子中的多個物件個別獨立使用插入法進行排序 插入排序法的詳細步驟請參考『插入排序法』之單元 合併r個BucketsMerge(合併) 由「左而右」合併為「遞增排序」 由「右而左」合併為「遞減排序」

三位數的MSD Radix Sort (1/5) Q:欲將下列數字以MSD Radix Sort加以排序(Base=10,十進制) 179, 208, 306, 93, 859, 984, 55, 9, 271, 33

三位數的MSD Radix Sort (1/5) Q:欲將下列數字以MSD Radix Sort加以排序(Base=10,十進制) 179, 208, 306, 93, 859, 984, 55, 9, 271, 33 運作原理: Step1:以百位數開始進行分配 33 9 55 271 93 179 208 306 859 984 1 2 3 4 5 6 7 8

三位數的MSD Radix Sort (1/5) 運作原理: Step2:將桶子中的多個物件個別獨立使用插入法進行排序 9、33、55、93、179、208、271、306、859、984 93 55 33 271 9 179 208 306 859 984 1 2 3 4 5 6 7 8