CodingWithAlice

我的一方小天地,如果对你有帮助,那真的太好了

React 设计原理 Part 2 架构篇

React 设计原理 Part 2 架构篇 本文主要是对《React 设计原理》一书的笔记和总结,方便之后回顾只看笔记,不再重新细读书籍。 目录 render 阶段 1.1、beginWork 1.2、completeWork commit 阶段 2.1、 还是老样子,阅读这一章之前,明确问题: 1、React 的渲染怎么实现的? 解答:主要分为两个阶段,...

React常见面试题

React常见面试题 带着问题阅读《React 设计原理》一书时,总结常见面试题,方便快速复习 1、当前主流的两种描述 UI 的方案 方案1 JSX:核心是扩展ES(ECMScript)语法,使它能够描述UI(React) JSX本质 是Facebook/Meta 提出的类XML语法的ECMScript语法糖 方案2 模板语法:核心是扩展...

回溯算法

回溯算法 参考文章:回溯算法 - 概览,其中还有很多例子 该算法的使用场景 从解决问题每一步的 所有可能选项 里系统 选择出一个可行 的解决方案。 特点: 在某一步选择一个选项后,进入下一步,然后面临新的选项。重复选择,直至达到最终状态。 回溯算法适合由 多个步骤 组成的问题,并且每个步骤都有多个选项 算法解析 回溯法解决的问题的所有选项可以用 树状结构 表示 ...

113. 路径总和 II

113. 路径总和 II/二叉树中和为目标值的路径 给你二叉树的根节点 root 和一个整数目标和 targetSum ,找出所有 从根节点到叶子节点 路径总和等于给定目标和的路径。 叶子节点 是指没有子节点的节点。 示例 1: 输入:root = [5,4,8,11,null,13,4,7,2,null,null,5,1], targetSum = 22 输出:[[5,4,11...

102. 二叉树的层序遍历

102. 二叉树的层序遍历 给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点) 示例 1: 输入:root = [3,9,20,null,null,15,7] 输出:[[3],[9,20],[15,7]] 示例 2: 输入:root = [1] 输出:[[1]] 示例 3: 输入:root = [] 输出:[] 还...

剑指offer 09. 用两个栈实现队列

剑指offer 09. 用两个栈实现队列 题目: 用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 ) 解答: 栈特点:先进后出,在栈顶进出元素 队列特点:先进先出,在队头、队尾分别进出元素 2个栈实现...

5. 最长回文子串

5. 最长回文子串 力扣 15. 给你一个字符串 s,找到 s 中最长的回文子串。如果字符串的反序与原始字符串相同,则该字符串称为回文字符串。 示例1: 输入:s = "babad" 输出:"bab" 解释:"aba" 同样是符合题意的答案。 示例 2: 输入:s = "cbbd" 输出:"bb" 解法一(自己写的) 核心:在字符串循环中,先找到重...

15. 三数之和

15. 三数之和 力扣 15. 给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i != j、i != k 且 j != k ,同时还满足 nums[i] + nums[j] + nums[k] == 0 。请你返回所有和为 0 且不重复的三元组。 注意:答案中不可以包含重复的三元组。 示例1: 输入:nums = [-...

3. 无重复字符的最长子串

3. 无重复字符的最长子串 力扣 3.给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。 示例1: 输入: s = "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 示例 2: 输入: s = "bbbbb" 输出: 1 解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。 示例 3: 输入...

2. 两数相加

2. 两数相加 力扣 3.给你两个 非空 的链表,表示两个非负的整数。 它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。 请你将两个数相加,并以相同形式返回一个表示和的链表。 你可以假设除了数字 0 之外,这两个数都不会以 0 开头。 示例1: 输入:l1 = [2,4,3], l2 = [5,6,4] 输出:[7,0,8] 解释:342 + 46...