数据结构与算法
文章平均质量分 62
己卯少一天
菜到安详
展开
-
【刷HOT100】——【基础】快速排序
快速排序是一种经常被用到的排序算法,许多语言中的sort函数也是基于快速排序实现的。因此在面试中,时常会看到要求手写快速排序的题目。时间复杂度O(nlogn)快速排序的主要思路为:选择一个数selected作为界限,我们的目标是在完成一轮排序后,数组左边的值都小于这个选定的数,数组右边的值都大于它。设置两个指针分别在最左和最右。若左右指针未到达同一位置则循环(while(left<right)),对于右侧指针不断左移,如果指向的value[right]<selected则停止循环,因原创 2021-03-09 00:37:39 · 204 阅读 · 0 评论 -
《算法笔记》(一)——日期差值问题、散列(哈希查找)
学习内容均来自由胡凡、曾磊主编的《算法笔记》,对其中的内容进行总结整理方便自己的复习和省察日期处理问题日期处理问题一般分为两种,一种是给定起始日期和天数,要求计算指定天数后的日期是什么;另一种是给定头尾两个日期,计算它们之间的天数。这类问题主要要考虑到的有:平闰年问题和大小月问题,因此有些细节问题会比较复杂。其他的类似于制作一张万年历表,都是基于上述两种问题得来的。思路可以用模拟的方...原创 2019-08-27 18:14:30 · 345 阅读 · 0 评论