06 2017 档案
摘要:http://www.cppblog.com/Darren/archive/2009/06/09/87224.html priority_queue用法 priority_queue 调用 STL里面的 make_heap(), pop_heap(), push_heap() 算法实现,也算是堆的另
阅读全文
摘要:1、 需要记忆的部分: 分治法的基本思想是将一个规模为n 的问题分解为k 个规模较小的子问题,这些子问题互相独立且与原问题相同。递归的解这些子问题,然后将各子问题的解合并得到原问题的解。 对于二叉树问题,首先需要熟练记住二叉树的前序中序遍历的递归版本和迭代版本,后序也可以看一下,记住BFS的实现过程
阅读全文
摘要:1、二分搜索的模板。 算法面试中,如果需要优化O(n)的时间复杂度,那么只能是O(logn)的二分法。 注意二分法大多数情况都是适用于排序数组。自己写二分的时候经常忘记写return -1; http://www.lintcode.com/zh-cn/problem/first-position-o
阅读全文
摘要:1、总结 链表类问题都是in-place,空间复杂度都是O(1)的,在所有的排序算法中,时间复杂度为O(nlogn)的有三个: 1)快速排序(不开辟空间); 2)归并排序(需要开辟O(n)的空间,但是在list问题上不开辟空间); 3)堆排序(首先需要有一个堆)。 while里面写判断条件的时候规律
阅读全文

浙公网安备 33010602011771号