240 投稿
收录了16篇文章 · 1人关注
  • 接雨水问题

    问题1 盛水最多的容器 原理 首先想到最多的容器肯定是:Min(两个柱子)*(柱子之间间距) 遍历一次需要找到最多的容器,应该采用双指针算法,并...

  • 数组求和

    问题1 数组里求两数之和等于目标数 原理 这个问题可能是很多人接触LeetCode的第一道算法题了 解法很多种我还是喜欢使用map的方式来解决,...

  • 旋转数组

    问题1 旋转数组最小数 原理 这类问题的本质是使用二分法,因为遍历的效率是O(n),二分的时间复杂度为log(n)。 二分之后,一半是有序一半是...

  • 二叉树的其他问题

    问题1 把二叉搜索树转换为累加树 原理 代码 注意事项 问题2 二叉树展开为链表 原理 代码 注意事项 问题3 二叉树的序列化与反序列化 原理 ...

  • 构建二叉树

    问题1 根据前序和后序构建二叉树 原理 前序遍历为:根左右;后序遍历为:左右根 代码 注意事项 问题2 根据前序和中序构建二叉树 原理 代码 注...

  • 二叉树的直径

    问题1 二叉树的最大直径 原理 首先,需要定义一个变量记录二叉树的直径 其次,递归遍历,找到每一层二叉树的 递归的终止条件为,当前节点为空返回0...

  • 二叉树的公共祖先

    问题1 平衡二叉树的公共祖先,找到该树中两个指定节点的最近公共祖先 原理 首先需要了解平衡二叉树的特性,平衡二叉树的左子树的节点值小于根节点的值...

  • 二叉树的路径之和

    问题1 给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。 说明: 叶子节点是指没有子节...

  • 二叉树基本算法

    问题1 二叉树的高度 原理 递归遍历左侧二叉树找到最大值 递归遍历右侧二叉树找到最大值 返回左侧和右侧结构较大的 代码 注意事项 左侧的高度+右...

  • 二叉树的遍历

    问题1 二叉树的前序遍历,递归和非递归 原理 根左右 代码 注意事项 牢记二叉树的遍历口诀,前序根左右,中序左根右,后序左右根。 问题2 二叉树...

专题公告

算法分类整理和算法解题记录