力扣刷题笔记
文章平均质量分 53
每日力扣刷题笔记
荔枝小狗
记录每天的学习内容
展开
-
0706【二叉树】102. 二叉树的层序遍历 101. 对称二叉树 104. 二叉树的最大深度 111. 二叉树的最小深度 222. 完全二叉树的节点个数 110. 平衡二叉树
102. 二叉树的层序遍历给你一个二叉树的根节点root, 检查它是否轴对称。【分析】:转化成判断两颗树:左子树和右子树。原创 2023-07-06 16:24:42 · 53 阅读 · 1 评论 -
1. 两数之和 15. 三数之和
给定一个整数数组nums和一个整数目标值target,请你在该数组中找出target的那整数,并返回它们的数组下标。原创 2023-07-04 16:32:41 · 43 阅读 · 0 评论 -
0703 【哈希】242. 有效的字母异位词 202. 快乐数 349. 两个数组的交集
然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。如果 n 是 快乐数 就返回 true;不是,则返回 false。对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和。如果这个过程 结果为 1,那么这个数就是快乐数。编写一个算法来判断一个数 n 是不是快乐数。去重存储第一个数组,然后与第二个数组比较。输出结果中的每个元素一定是。原创 2023-07-03 21:47:22 · 43 阅读 · 1 评论 -
6.28 力扣【数组】59.螺旋矩阵II / 剑指offer29.顺时针打印矩阵
左上----->右上 右上----->右下 右下------>左下 左下------>左上。按顺时针遍历,先确定上下左右边界,每遍历一轮边界收缩。输入:matrix = [[1,2,3],[4,5,6],[7,8,9]]一轮赋值顺序: 避免重复赋值,每一次的终点不赋值 n=3为例[1,3)输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。也就是循环的次数--> n/2。输出:[1,2,3,6,9,8,7,4,5]如果n为奇数,中间多一个需要单独赋值。原创 2023-06-28 16:21:13 · 62 阅读 · 1 评论 -
力扣93. 复原 IP 地址
例如:"0.1.2.201" 和 "192.168.1.1" 是 有效 IP 地址,但是 "0.011.255.245"、"192.168.1.312" 和 "192.168@1.1" 是 无效 IP 地址。给定一个只包含数字的字符串 s ,用以表示一个 IP 地址,返回所有可能的有效 IP 地址,这些地址可以通过在 s 中插入 '.' 来形成。根据题意,直接在原串上修改加入'.'来分割子串,然后思考如何回溯,在什么情况下可以插入'.'删除s.erase(s.begin() + i + 1);原创 2023-06-19 11:36:23 · 93 阅读 · 1 评论 -
力扣.子集78、90
给你一个整数数组nums,数组中的元素。返回该数组所有可能的子集(幂集)。解集包含重复的子集。你可以按返回解集。递归出口:遍历到数组末尾递归体:数组中每个元素有选择和不选择两种情况,选择当前元素:把当前元素临时保存,然后进入下一层递归,执行完回溯,把当前元素弹出不选择当前元素:直接进入下一个位置的递归给你一个整数数组 nums ,其中可能包含重复元素,请你返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。返回的解集中,子集可以按 任意顺序 排列。原创 2023-06-21 14:20:48 · 14 阅读 · 0 评论 -
491. 递增子序列
给你一个整数数组 nums ,找出并返回所有该数组中不同的递增子序列,递增子序列中 至少有两个元素。你可以按 任意顺序 返回答案。数组中可能含有重复元素,如出现两个整数相等,也可以视作递增序列的一种特殊情况。示例 1:输入:nums = [4,6,7,7]输出:[[4,6],[4,6,7],[4,6,7,7],[4,7],[4,7,7],[6,7],[6,7,7],[7,7]]原创 2023-06-21 16:59:30 · 59 阅读 · 0 评论