摘要: 226. 翻转二叉树 //这道题其实就是遍历二叉树,然后交换每个节点的左右子节点即可。这里我就使用了一个栈来存储需要遍历的节点,每次循环弹出一个,然后交换其左右子节点就好了 class Solution { public TreeNode invertTree(TreeNode root) { St 阅读全文
posted @ 2024-07-16 22:50 12点不睡觉还想干啥? 阅读(16) 评论(0) 推荐(0)
摘要: Day 13 二叉树part01 二叉树的递归遍历 这个用递归就好,现在写起来基本没问题 二叉树的迭代遍历 这个是重点,今天写的时候居然一次写出来了,多刷还是有用的。前中后三种遍历方式,其迭代版本的难度排序 前 < 中 < 后。所以写的时候也是按这个顺序去做的。 144. 二叉树的前序遍历 使用一个 阅读全文
posted @ 2024-07-15 23:33 12点不睡觉还想干啥? 阅读(27) 评论(0) 推荐(0)
摘要: [150. 逆波兰表达式求值](https://leetcode.cn/problems/reverse-string/) 使用栈即可,遍历token数组,遇到运算符就弹栈,取出两个数做运算然后压栈。遇到数字就压栈。最终栈中剩余的唯一数字就是结果。 class Solution { public i 阅读全文
posted @ 2024-07-14 01:07 12点不睡觉还想干啥? 阅读(25) 评论(0) 推荐(0)
摘要: [151. 反转字符串中的单词](https://leetcode.cn/problems/reverse-string/) class Solution { public String reverseWords(String s) { StringBuilder sb = new StringBu 阅读全文
posted @ 2024-07-11 22:43 12点不睡觉还想干啥? 阅读(16) 评论(0) 推荐(0)
摘要: 344. 反转字符串 class Solution { public void reverseString(char[] s) { int left = 0, right = s.length - 1; while(left < right){ char tmp = s[left]; s[left] 阅读全文
posted @ 2024-07-10 21:40 12点不睡觉还想干啥? 阅读(19) 评论(0) 推荐(0)
摘要: 454. 四数相加 II // 这道题使用哈希就可解决,使用一个map存储前两个数组中,所有组合产生的sum的频率;对于后两个数组中所有的组合,每出现一个和的相反数出现在map中,则代表出现了这个相反数频率个组合可以满足四数相加为0 class Solution { public int fourS 阅读全文
posted @ 2024-07-09 21:55 12点不睡觉还想干啥? 阅读(11) 评论(0) 推荐(0)
摘要: 242. 有效的字母异位词 383. 赎金信 class Solution { //这里只给出了242的代码,赎金信的解法可以说是基本相同的 public boolean isAnagram(String s, String t) { int[] map = new int[26]; for(cha 阅读全文
posted @ 2024-07-08 22:24 12点不睡觉还想干啥? 阅读(16) 评论(0) 推荐(0)
摘要: 24. 两两交换链表中的节点 迭代的版本:最重要的就是要知道循环变量怎么取,对于这道题,我们只需要存储需要交换的两个节点的前一个节点即可,只有当这个节点后面有两个节点时才进入循环,其实把握住这一点之后这题就非常容易了。 递归的版本:这道题用递归做简直不要太简单,首先明白递归结束的条件,显然当链表为空 阅读全文
posted @ 2024-07-06 22:17 12点不睡觉还想干啥? 阅读(19) 评论(0) 推荐(0)
摘要: 203. 移除链表元素 class Solution { public ListNode removeElements(ListNode head, int val) { ListNode virHead = new ListNode(0, head); ListNode tmp = virHead 阅读全文
posted @ 2024-07-05 21:32 12点不睡觉还想干啥? 阅读(18) 评论(0) 推荐(0)
摘要: 977. 有序数组的平方 class Solution { public int[] sortedSquares(int[] nums) { int[] ans = new int[nums.length]; int left = 0, right = nums.length - 1; for(in 阅读全文
posted @ 2024-07-04 22:35 12点不睡觉还想干啥? 阅读(42) 评论(0) 推荐(0)