数据算法
没事在家,温习一下数据结构和算法。
黑白猿
这个作者很懒,什么都没留下…
展开
-
【经典算法】N003:排序三剑客升级版(Heap、Shell、Shaker)
3.1 Heap排序(选择排序升级版)选择排序法的概念简单,每次从未排序部份选一最小值,插入已排序部份的后端,其时间主要花费于在整个未排序部份寻找最小值,如果能让搜寻最小值的方式加快,选择排序法的速率也就可以加快,Heap排序法让搜寻的路径由树根至最后一个树叶,而不是整个未排序部份,因而称之为改良的选择排序法。3.1.1 解析过程Heap排序法使用Heap Tree(堆积树),树是一种资料结...原创 2020-02-15 16:24:13 · 20774 阅读 · 1 评论 -
【经典算法】N002:排序三剑客
选择排序(Selection sort)、插入排序(Insertion sort)与气泡排序(Bubble sort)这三个排序方式是初学排序所必须知道的三个基本排序方式,它们由于速度不快而不实用(平均与最快的时间复杂度都是O(n^2)),但是它们排序的方式仍然值得我们学习与探讨。2.1 选择排序将要排序的对象分作两部份,一个是已排序的,一个是未排序的,从后端未排序部份选择一个最小值,并放入前...原创 2020-02-04 23:07:38 · 24309 阅读 · 0 评论 -
【经典算法】N001:得分排行
1. 【经典算法】 得分排行1.1 算法描述如果有一教师依学生座号输入考试分数,现希望在输入完成后自己主动显示学生分数的排行。当然学生的分数可能同样。1.2 算法解析1.2.1 基础版本使用额外的一个排行数组来遍历分数数组即可。方法虽然简单,但是反覆计算的次数是n^2,如果n值变大,那么运算的时间就会拖长。 public static void printScoreRank01(int...原创 2020-02-03 21:08:26 · 19228 阅读 · 0 评论