刷题日记0726

今日目标5道

哦莫又是晚上开始做。时间过得好快呀。

4/5

  1. 两数相加II 中等

s1.top();从stack 获取栈顶元素

s1.push();stack 顶部加入元素

s1.pop();stack 顶部弹出元素

时间复杂度都为 O(1)

看题解写了一遍

闻到了淡淡的蛋卷的味道。?

  1. 二叉树的最大深度 简单

* struct TreeNode {

* int val;

* TreeNode *left;

* TreeNode *right;

* TreeNode() : val(0), left(nullptr), right(nullptr) {}

* TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}

* TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {}

* };

树结点的结构

val 结点存放的值

left 左子节点

right 右子节点

三个结点构造器

可恶的蚊子!

不会写,看题解。

妙哇。

时间复杂度:O(n),其中 n 为二叉树节点的个数。每个节点在递归中只被遍历一次。

空间复杂度:O(height)递归函数需要栈空间,而栈空间取决于递归的深度,因此空间复杂度等价于二叉树的高度

学习了学习了。就这个代码爽!

  1. 二叉树的最小深度

看题解。

接上一题的思路,继续递归。递归好,人菜。

INT_MAX:是 C/C++ 标准库中定义的一个宏常量,表示当前平台上 int 类型能表示的最大正值。它定义在 <limits.h>(C语言)或 <climits>(C++)头文件中。

不是蛋卷的味道,是万年青饼干的味道,好香。

时间复杂度可以,空间复杂度可以。

  1. 二叉树的中序遍历 简单

感觉不像刷题,像是回到数据结构的课堂。

看题解。

preorder 前序,inorder 中序,postorder 后序

就这个递归爽

空间复杂度:O(n)。空间复杂度取决于递归的栈深度,而栈深度在二叉树为一条链的情况下会达到 O(n) 的级别。

时空复杂度理解。

休息一下。

睡了。

相关推荐
爱coding的橙子2 小时前
每日算法刷题Day78:10.23:leetcode 一般树7道题,用时1h30min
算法·leetcode·深度优先
Swift社区2 小时前
LeetCode 403 - 青蛙过河
算法·leetcode·职场和发展
Dream it possible!4 小时前
LeetCode 面试经典 150_链表_两数相加 (57_2_C++_中等)
leetcode·链表·面试
仰泳的熊猫9 小时前
LeetCode:51. N 皇后
数据结构·c++·算法·leetcode
独自破碎E9 小时前
LeetCode 381: O(1) 时间插入、删除和获取随机元素 - 允许重复
java·算法·leetcode
Miraitowa_cheems10 小时前
LeetCode算法日记 - Day 81: 最大子数组和
java·数据结构·算法·leetcode·决策树·职场和发展·深度优先
im_AMBER12 小时前
Leetcode 35
笔记·学习·算法·leetcode
码农多耕地呗12 小时前
力扣101.对称二叉树(java)
算法·leetcode
软行14 小时前
LeetCode 每日一题 166. 分数到小数
数据结构·c++·算法·leetcode·哈希算法
阿昭L14 小时前
leetcode合并有序链表
leetcode·链表