![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 68
jinyangjie0
学如逆水行舟,不进则退
展开
-
算法入门9-哈希表、有序表和链表的使用
这是个过渡篇章,简单介绍哈希表、有序表和链表的使用,这是刷算法题必备的基础知识。哈希表、有序表和链表的深入实现原理,会在后续篇章中介绍,目前暂不需要。原创 2021-12-24 17:14:58 · 964 阅读 · 0 评论 -
算法入门8-排序总结
对常见排序,选择排序、冒泡排序、插入排序、归并排序、快速排序、堆排序,进行稳定性分析、排序优先选择、排序推论、工程上对排序的改进等介绍。原创 2021-12-21 13:01:38 · 301 阅读 · 0 评论 -
算法入门7-基数排序
基数排序是一种非比较型的排序算法,其原理是将一个数分割,然后按每个位数来对比排序。由于每个位数都是一个很小的有限范围,所以可以用计数排序来做位数上的对比,将每一位数的对比时间复杂度降为O(n + k)(k为位数上的取值范围)。多少位数,就做多少轮的位数对比,最后整个基数排序时间复杂度为O(m * (n + k))(m为执行的计数排序次数,k为位数上的取值范围)。原创 2021-12-21 10:54:12 · 275 阅读 · 0 评论 -
算法入门6-计数排序
计数排序的原理是,统计数组中每个数出现的次数,那么,数组中每个数排序后的位置,就是比它小的数的出现次数累加和。原创 2021-12-20 16:02:53 · 502 阅读 · 0 评论 -
算法入门5-堆排序
堆排序,实际是将数组转化成堆,利用堆的结构,保存每一次的对比结果,加快排序的过程。原创 2021-12-20 11:18:46 · 402 阅读 · 0 评论 -
算法入门4-快速排序
快速排序本质是寻找基准值在数组中索引的过程。实际操作是选取一个基准值,遍历数组,将小于基准值的数放到数组左边,等于基准值的数放到数组中间,大于基准值的数放到数组右边,那么,中间等于区域就是基准值的索引位置,也就是基准值已经排好序。然后小于区域继续选取自己的基准值,大于区域继续选取自己的基准值,继续根据基准值划分区域,递归这个过程,直到整个数组有序。原创 2021-12-17 18:03:15 · 401 阅读 · 0 评论 -
算法入门3-归并排序
归并排序是常见的排序方法,下面介绍归并排序的定义、实现步骤、时间复杂度分析,以及扩展的小和问题、逆序对问题。由归并改造的题目,是面试工作中常考题型,需要重点掌握。原创 2021-12-17 13:26:57 · 616 阅读 · 0 评论 -
算法入门2-简单排序
选择排序、冒泡排序、插入排序,都是时间复杂度O(N^2)的排序算法。它们的排序过程简单且直观,所以一并称为简单排序。原创 2021-12-16 16:12:49 · 687 阅读 · 0 评论 -
算法入门1-认识复杂度和位运算
认识复杂度和位运算原创 2021-12-16 11:31:02 · 718 阅读 · 0 评论