文章分类 -  leetcode

摘要:1、评价一个算法流程的好坏,先看时间复杂度(最差情况下)的指标,然后再分析不同数据样本下的实际运行时间(即实际跑数据),也就是“常数项时间”。 二分法时间复杂度:O(log2n)。例如 length = 8的有序数组,砍一半成4,成2,成1,砍 3 次,23 = 8;length = 16的有序数组 阅读全文
posted @ 2022-07-20 13:23 ajjoker 阅读(74) 评论(0) 推荐(0)
摘要:一、递归 + 回溯(DFS) 1219. 黄金矿工 二、 阅读全文
posted @ 2022-02-08 14:26 ajjoker 阅读(26) 评论(0) 推荐(0)
摘要:1、对复杂度有 log 的要求,一般都需要用到二分查找;常见的数组元素查找并不需要二分法,直接 indexOf 就行,但是如果数组元素是对象的话,就可能会先排序再用到二分查找。(4. 寻找两个正序数组的中位数) 2、最长子串可以考虑用滑动窗口 (3. 无重复字符的最长子串) 3、有类似查表操作时,可 阅读全文
posted @ 2022-01-09 15:34 ajjoker 阅读(29) 评论(0) 推荐(0)
摘要:排序 1.在一个数组中,如果一个数是要被排序的(假如递增),那么它的左边一定有一个数比它大,或者右边有一个数比它小;题目:正反(max,min)两次遍历找到待排序区间 2.sort函数 只对字母进行排序,只需要使用sort();数字才需要排序函数 // 排序需要提供比较函数,该函数比较两个值的大小, 阅读全文
posted @ 2020-11-22 10:44 ajjoker 阅读(589) 评论(0) 推荐(0)