delete $
This commit is contained in:
@@ -44,7 +44,7 @@ a->right = NULL;
|
||||
|
||||
在介绍前中后序遍历的时候,有递归和迭代(非递归),还有一种牛逼的遍历方式:morris遍历。
|
||||
|
||||
morris遍历是二叉树遍历算法的超强进阶算法,morris遍历可以将非递归遍历中的空间复杂度降为$O(1)$,感兴趣大家就去查一查学习学习,比较小众,面试几乎不会考。我其实也没有研究过,就不做过多介绍了。
|
||||
morris遍历是二叉树遍历算法的超强进阶算法,morris遍历可以将非递归遍历中的空间复杂度降为O(1),感兴趣大家就去查一查学习学习,比较小众,面试几乎不会考。我其实也没有研究过,就不做过多介绍了。
|
||||
|
||||
## 周二
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
|
||||
一些录友不清楚[贪心算法:分发饼干](https://programmercarl.com/0455.分发饼干.html)中时间复杂度是怎么来的?
|
||||
|
||||
就是快排$O(n\log n)$,遍历$O(n)$,加一起就是还是$O(n\log n)$。
|
||||
就是快排O(nlog n),遍历O(n),加一起就是还是O(nlogn)。
|
||||
|
||||
## 周三
|
||||
|
||||
|
||||
@@ -70,9 +70,9 @@
|
||||
|
||||
# 周三
|
||||
|
||||
在[$O(n)$的算法居然超时了,此时的n究竟是多大?](https://programmercarl.com/前序/On的算法居然超时了,此时的n究竟是多大?.html)中介绍了大家在leetcode上提交代码经常遇到的一个问题-超时!
|
||||
在[O(n)的算法居然超时了,此时的n究竟是多大?](https://programmercarl.com/前序/On的算法居然超时了,此时的n究竟是多大?.html)中介绍了大家在leetcode上提交代码经常遇到的一个问题-超时!
|
||||
|
||||
估计很多录友知道算法超时了,但没有注意过 $O(n)$的算法,如果1s内出结果,这个n究竟是多大?
|
||||
估计很多录友知道算法超时了,但没有注意过 O(n)的算法,如果1s内出结果,这个n究竟是多大?
|
||||
|
||||
文中从计算机硬件出发,分析计算机的计算性能,然后亲自做实验,整理出数据如下:
|
||||
|
||||
@@ -95,7 +95,7 @@
|
||||
|
||||
文中给出了四个版本的代码实现,并逐一分析了其时间复杂度。
|
||||
|
||||
此时大家就会发现,同一道题目,同样使用递归算法,有的同学会写出了$O(n)$的代码,有的同学就写出了$O(\log n)$的代码。
|
||||
此时大家就会发现,同一道题目,同样使用递归算法,有的同学会写出了O(n)的代码,有的同学就写出了$O(\log n)$的代码。
|
||||
|
||||
其本质是要对递归的时间复杂度有清晰的认识,才能运用递归来有效的解决问题!
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
在[贪心算法:加油站](https://programmercarl.com/0134.加油站.html)中给出每一个加油站的汽油和开到这个加油站的消耗,问汽车能不能开一圈。
|
||||
|
||||
这道题目咋眼一看,感觉是一道模拟题,模拟一下汽车从每一个节点出发看看能不能开一圈,时间复杂度是$O(n^2)$。
|
||||
这道题目咋眼一看,感觉是一道模拟题,模拟一下汽车从每一个节点出发看看能不能开一圈,时间复杂度是O(n^2)。
|
||||
|
||||
即使用模拟这种情况,也挺考察代码技巧的。
|
||||
|
||||
|
||||
@@ -211,8 +211,8 @@ public:
|
||||
};
|
||||
```
|
||||
|
||||
* 时间复杂度:$O(n^2)$
|
||||
* 空间复杂度:$O(1)$
|
||||
* 时间复杂度:O(n^2)
|
||||
* 空间复杂度:O(1)
|
||||
|
||||
贪心解法代码如下:
|
||||
|
||||
@@ -233,8 +233,8 @@ public:
|
||||
};
|
||||
```
|
||||
|
||||
* 时间复杂度:$O(n)$
|
||||
* 空间复杂度:$O(1)$
|
||||
* 时间复杂度:O(n)
|
||||
* 空间复杂度:O(1)
|
||||
|
||||
动规解法,版本一,代码如下:
|
||||
|
||||
@@ -256,8 +256,8 @@ public:
|
||||
};
|
||||
```
|
||||
|
||||
* 时间复杂度:$O(n)$
|
||||
* 空间复杂度:$O(n)$
|
||||
* 时间复杂度:O(n)
|
||||
* 空间复杂度:O(n)
|
||||
|
||||
从递推公式可以看出,dp[i]只是依赖于dp[i - 1]的状态。
|
||||
|
||||
@@ -282,8 +282,8 @@ public:
|
||||
};
|
||||
```
|
||||
|
||||
* 时间复杂度:$O(n)$
|
||||
* 空间复杂度:$O(1)$
|
||||
* 时间复杂度:O(n)
|
||||
* 空间复杂度:O(1)
|
||||
|
||||
|
||||
建议先写出版本一,然后在版本一的基础上优化成版本二,而不是直接就写出版本二。
|
||||
|
||||
Reference in New Issue
Block a user