- 博客(4)
- 收藏
- 关注
原创 算法笔记:回溯法(2)
树的回溯二叉树的所有路径class Solution { public List<String> binaryTreePaths(TreeNode root) { List<String> res = new ArrayList<>(); dfs(root, "", res); return res; } public void dfs(TreeNode root, String p
2021-06-27 19:47:57 82
原创 算法笔记:二叉树
算法笔记:二叉树1.二叉树的基本遍历二叉树的前序遍历①递归法:/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode() {} * TreeNode(int val) { this.val = val; } * TreeNode(int v
2021-06-23 22:20:07 158
原创 算法笔记:回溯法(1)
算法笔记:回溯法1. 回溯法的基本模板result = []def backtrack(路径, 选择列表): if 满足结束条件: result.add(路径) return for 选择 in 选择列表: do:做选择 backtrack(路径, 选择列表) do:撤销选择2. 回溯法的要点在参数里面一般有一个最终的结果集res,有一个路径path,当path符合题意时就被添加到结果集res中。
2021-06-13 20:27:34 205
原创 算法笔记:链表
算法1:有关于链表的题1.一般思想建立一个虚拟头结点prehead,以减少边界判断条件,最后如果答案要返回整个链表,那么就return prehead.next。使用pre代表符合题意的有效链表的结尾,当在循环中再一次选到符合题意的节点head后,pre->next = head;pre = pre->next。由上一点可知,我们遍历整个链表是通过head指针不断的向后移动,pre也在不断的移动,所以返回时需要用到虚拟头结点,虚拟头结点指向第一个符合题意的节点。2.实际应用1.
2021-03-26 16:06:47 285
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人