commit
afc6f12ee6
|
|
@ -58,7 +58,7 @@
|
|||
|
||||
* fast和slow同时移动,直到fast指向末尾,如题:
|
||||
<img src='https://code-thinking.cdn.bcebos.com/pics/19.%E5%88%A0%E9%99%A4%E9%93%BE%E8%A1%A8%E7%9A%84%E5%80%92%E6%95%B0%E7%AC%ACN%E4%B8%AA%E8%8A%82%E7%82%B92.png' width=600> </img></div>
|
||||
|
||||
//图片中有错别词:应该将“只到”改为“直到”
|
||||
* 删除slow指向的下一个节点,如图:
|
||||
<img src='https://code-thinking.cdn.bcebos.com/pics/19.%E5%88%A0%E9%99%A4%E9%93%BE%E8%A1%A8%E7%9A%84%E5%80%92%E6%95%B0%E7%AC%ACN%E4%B8%AA%E8%8A%82%E7%82%B93.png' width=600> </img></div>
|
||||
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@
|
|||
|
||||
那么二叉树如何可以自底向上查找呢?
|
||||
|
||||
回溯啊,二叉树回溯的过程就是从低到上。
|
||||
回溯啊,二叉树回溯的过程就是从底到上。
|
||||
|
||||
后序遍历(左右中)就是天然的回溯过程,可以根据左右子树的返回值,来处理中节点的逻辑。
|
||||
|
||||
|
|
|
|||
|
|
@ -172,7 +172,7 @@ if (result.size() == ticketNum + 1) {
|
|||
|
||||
回溯的过程中,如何遍历一个机场所对应的所有机场呢?
|
||||
|
||||
这里刚刚说过,在选择映射函数的时候,不能选择`unordered_map<string, multiset<string>> targets`, 因为一旦有元素增删multiset的迭代器就会失效,当然可能有牛逼的容器删除元素迭代器不会失效,这里就不在讨论了。
|
||||
这里刚刚说过,在选择映射函数的时候,不能选择`unordered_map<string, multiset<string>> targets`, 因为一旦有元素增删multiset的迭代器就会失效,当然可能有牛逼的容器删除元素迭代器不会失效,这里就不再讨论了。
|
||||
|
||||
**可以说本题既要找到一个对数据进行排序的容器,而且还要容易增删元素,迭代器还不能失效**。
|
||||
|
||||
|
|
|
|||
|
|
@ -75,7 +75,7 @@ for (int i = startIndex; i < candidates.size() && sum + candidates[i] <= target;
|
|||
|
||||
除了这些难点,**本题还有细节,例如:切割过的地方不能重复切割所以递归函数需要传入i + 1**。
|
||||
|
||||
所以本题应该是一个道hard题目了。
|
||||
所以本题应该是一道hard题目了。
|
||||
|
||||
**本题的树形结构中,和代码的逻辑有一个小出入,已经判断不是回文的子串就不会进入递归了,纠正如下:**
|
||||
|
||||
|
|
|
|||
|
|
@ -78,7 +78,7 @@
|
|||
* 求解每一个子问题的最优解
|
||||
* 将局部最优解堆叠成全局最优解
|
||||
|
||||
这个四步其实过于理论化了,我们平时在做贪心类的题目 很难去按照这四步去思考,真是有点“鸡肋”。
|
||||
这个四步其实过于理论化了,我们平时在做贪心类的题目时,如果按照这四步去思考,真是有点“鸡肋”。
|
||||
|
||||
做题的时候,只要想清楚 局部最优 是什么,如果推导出全局最优,其实就够了。
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue