数据结构
文章平均质量分 86
唐曌
这个作者很懒,什么都没留下…
展开
-
程序员代码面试指南之归并排序笔记02
一、归并排序1)整体是递归,左边排好序+右边排好序+merge让整体有序2)让其整体有序的过程里用了排外序方法3)利用master公式来求解时间复杂度4)当然可以用非递归实现二、归并排序复杂度T(N) = 2*T(N/2) + O(N^1)根据master可知时间复杂度为O(N*logN)merge过程需要辅助数组,所以额外空间复杂度为O(N)归并排序的实质是把比较行为变成了有序信息并传递,比O(N^2)的排序快三、用常见面试题再深入理解一下归并排序的精髓在一个数原创 2021-07-24 14:19:31 · 459 阅读 · 0 评论 -
程序员代码面试指南之笔记01
一、算法数据结构基础课第一节1.1 评估算法优劣的核心指标是什么?(1)时间复杂度(流程决定)(2)额外空间复杂度(流程决定)(3)常数项时间(实现细节决定)1.2什么是时间复杂度?时间复杂度怎么估算?(1)常数时间的操作(2)确定算法流程的总操作数量与样本数量之间的表达式关系(3)只看表达式最高阶项的部分1.3 何为常数时间的操作?如果一个操作的执行时间不以具体样本量为转移,每次执行时间都是固定时间。称这样的操作为常数时间的操作。1.4 常见的常数时间的操作原创 2021-05-22 10:32:54 · 566 阅读 · 5 评论