文章封面

二叉树 part04

leetcode 513. 找树左下角的值 题目描述 给定一个二叉树的 根节点 root,请找出该二叉树的 最底层 最左边 节点的值。 假设二叉树中至少有一个节点。 示例 输入: [1,2,3,4,null,5,6,null,null,7] 输出: 7 题目链接 https://leetcode.c

算法 

二叉树 part03

leetcode 110. 平衡二叉树 题目描述 给定一个二叉树,判断它是否是 平衡二叉树 示例 输入:root = [3,9,20,null,null,15,7] 输出:true 解决思路 根据平衡二叉树的定义,左右子树高度差小于等于1,且左右子树也都是平衡的。进行自上而下递归查询 class S

算法 
文章封面
文章封面

二叉树 part02

leetcode 226. 翻转二叉树 题目描述 给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。 示例 输入:root = [4,2,7,1,3,6,9] 输出:[4,7,2,9,6,3,1] 解题思路 逐层交换左右子节点 class Solution { public

算法 

如何学习新技术:一份自我修行笔记

很喜欢士兵突击中的一句台词:”想要和得到之间,还要有做到“ 大厂高薪,人人都想有。但扪心自问,我做到了大厂的要求吗? 学是无止境的,但并不是漫无目的地学。应该有所针对地学。恰逢最近的ai面试都常问:“如何学习一门新技术,以及解决遇到的挑战和问题?”。遂有此篇。 一、在混乱中找到方向 世界上的知识有很

随笔 
文章封面
文章封面

Git 提交规范学习笔记:Conventional Commits

在写新项目的第一天,创建完工程后突然想到:“我该怎么写 commit 信息?” 于是询问 ChatGPT,遂学此规范。 这篇文章记录我对 Conventional Commits(约定式提交规范)的理解与使用。 一、Conventional Commits 是什么? Conventional Com

技术 

二叉树 part01

算法 

LeetCode 144.二叉树的前序遍历 题目描述 给你二叉树的根节点 root ,返回它节点值的 前序 遍历。 示例 输入:root = [1,null,2,3] 输出:[1,2,3] 解释: 题目链接 https://leetcode.cn/problems/binary-tree-preor

栈与队列 part02

算法 

LeetCode 150.逆波兰表达式求值 题目描述 给你一个字符串数组 tokens ,表示一个根据 逆波兰表示法 表示的算术表达式。 请你计算该表达式。返回一个表示表达式值的整数。 注意: 有效的算符为 '+'、'-'、'*' 和 '/' 。 每个操作数(运算对象)都可以是一个整数或者另一个表达

栈与队列 part01

LeetCode 323.用栈实现队列 题目描述 请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作(push、pop、peek、empty): 实现 MyQueue 类: void push(int x) 将元素 x 推到队列的末尾 int pop() 从队列的开头移除并返回元素

算法 
文章封面
文章封面

字符串 part02

LeetCode 151.翻转字符串里的单词 题目描述 给你一个字符串 s ,请你反转字符串中 单词 的顺序。 单词 是由非空格字符组成的字符串。s 中使用至少一个空格将字符串中的 单词 分隔开。 返回 单词 顺序颠倒且 单词 之间用单个空格连接的结果字符串。 **注意:**输入字符串 s中可能会存

算法 

字符串 part01

LeetCode 344.反转字符串 题目描述 编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。 不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。 示例 输入:s = ["h","e","l","l","o"] 输出

算法 
文章封面