摘要:
1 我们经常会遇到这样一种情况, 我们的目的是收集若干个符合条件的元素的组合, 但是由于元素有可能会重复, 所以, 我们收集到的组合也有很大的可能会重复. 但是我们要求获得的组合不能允许有重复, 这就要牵扯到去重的操作 2 对于去重, 我们的第一想法就是, 先把所有可能的情况进行收集, 然后再在所有 阅读全文
摘要:
1 我们都知道, 对于引用类型的变量, 这个变量存储的是一个地址, 而不是一个值 2 正是因为这一点, 我们总以为, 不管我们对这个变量做什么操作, 都是直接操作的这个变量所指向的那个对象 3 其实, 这一点是极其错误的: 我们应该知道, 首先, 我们不管是什么变量, 它首先是一个变量, 我们操作的 阅读全文
摘要:
GET{ 方法(){ 1 这一题, 也是回溯法组合类问题的典型题目 2 但是通过这一题, 又可以发现自身一个很大的问题, 那就是做题之前没有规划好题目的解题流程, 导致真正写代码解题时, 哪里漏了补哪里, 但是往往补了东墙西墙破, 再也无法大局观 3 所以, 我们解题之前, 一定要规划好解题流程, 阅读全文
摘要:
GET{ 方法(){ 1 这一题是回溯算法的第一类经典题目, 组合问题 2 回溯法出现的原因是: 其实本没有回溯法, 有的只是递归, 回溯法出现只是因为递归的过程中为了收集元素, 使用了一个共同的容器, 由于本次收集的结果会影响下一次收集的结果, 所以, 我们需要在本次收集完结果并进行收集完结果进行 阅读全文
摘要:
1 在运用布局时, 有时会用到多种不同的布局方式, 但是对这些个布局方式之间是否会相互影响以及会怎样进行相互影响, 在这里需要进行一下稍微的总结 2 后来又想了一下, 这个需求好像是因为, 在使用了一个大的布局方式之后, 我们需要对其中一些子元素的位置进行一些微调整, 而不改变原有的块布局 这就需要 阅读全文
摘要:
1 Lamba表达式出现的罪魁祸首是函数式接口 啥叫函数式接口, 就是, 一个接口, 内部有且只有一个抽象方法, md, 只有一个待实现的方法还要造成一个接口, 有亿点点多余 为了简化这种接口的实现, 所以出现了Lamba表达式 2 如果说Lamba表达式的出现是为了简化函数式接口的实现(只是体现在 阅读全文
摘要:
GET{ 注意点(){ 1 自己在做题时, 往往是想通用性的解答方式, 考虑了一些更加特殊的情况, 这一点可能很好, 但是, 需要注意的是, 如果我们只是专注于解题, 那么只需要考虑把题目做出来就可以了, 利用好题目的提示以及考虑范围 如果是在进行总结性的学习并且在总结套路的话, 那么就需要把所有的 阅读全文
摘要:
1 遇到二叉树树相关的题目, 第一想到的应该就是递归, 无二叉树不递归, 每一个递归模型都可以抽象成一个二叉树模型 2 我们都应该知道, 二叉树的节点应该有两个节点, 分别是左子节点和右子节点, 如果一个节点的一边的子节点已经不存在了, 那就没有继续递归的必要了 3 所以, 递归终止条件的判断依据就 阅读全文
摘要:
GET{ 方法论(){ 通过这一道题目了解到前序遍历结果集与后序遍历结果集之间的关系, 即: 前序遍历结果集中的第一个元素一定是这颗二叉树的最顶级父元素, 通过这个元素对中序遍历结果集进行分割, 左边的部分是这个元素的左子树的中序遍历结果, 右边部分是这个元素的右子树的中序遍历结果 通过左子树的中序 阅读全文
摘要:
GET{ 方法论(){ 通过这一道题目了解到中序遍历结果集与后序遍历结果集之间的关系, 即: 后序遍历结果集中的最后一个元素一定是这颗二叉树的最顶级父元素, 通过这个元素对中序遍历结果集进行分割, 左边的部分是这个元素的左子树的中序遍历结果, 右边部分是这个元素的右子树的中序遍历结果 通过左子树的中 阅读全文