自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 【无标题】

给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。用层序遍历后代码简单的不得了,挺好的,之前没掌握的层序遍历也学会了。给定一个二叉树,在树的最后一行找到最左边的值。根据一棵树的中序遍历与后序遍历构造二叉树。说明: 叶子节点是指没有子节点的节点。注意: 你可以假设树中没有重复的元素。没想出来,回头补上,确实有难度。没太理解透,待补充。

2023-08-13 22:12:01 59 1

原创 代码随想录day17 二叉树part04 LeetCode110.平衡二叉树 257. 二叉树的所有路径 404.左叶子之和

之前担心单节点二叉树的根节点和二叉树左叶子都是满足node and not node.left and not node.right的,即算法没有办法分辨单节点和左叶子,实际上用到的判断条件并不是这个,并且单节点是满足不了判断条件root.left and not root.left.left and not root.left.right的,此前的担心是多余的。开始递归,当左右子树的高度差大于1时,返回-1,代表此子树不符合平衡二叉树性质,若暂时要求,则继续递归,直到末尾。终止条件1:读取到空,返回0。

2023-08-12 22:10:44 70 1

原创 代码随想录day16 二叉树part03 LeetCode104.二叉树的最大深度 111.二叉树的最小深度 222.完全二叉树的节点个数

递归理解的不太行,写完题目即便通过了也不知道自己在干什么,博客完全不知道怎么扩充内容,这两天找个时间做一下总结吧。

2023-08-11 22:05:44 70 1

原创 代码随想录day15 二叉树 part02 层序遍历 10 LeetCode 226.翻转二叉树 ● 101.对称二叉树 2

先用递归写翻转二叉树和对称二叉树吧,层序遍历尽量写。

2023-08-10 22:11:25 60 1

原创 代码随想录day14 二叉树part01 理论基础 、递归遍历 、迭代遍历、 统一迭代

【代码】代码随想录day14 二叉树part01 理论基础 、递归遍历 、迭代遍历、 统一迭代。

2023-08-09 21:33:27 52

原创 代码随想录day13 栈与队列part03 LeetCode 239. 滑动窗口最大值 347.前 K 个高频元素

给定一个数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。第一反应做出来的东西,如下:时间复杂度过大,最后十几个样本过不了测试,这也不是这一题的本意。利用deque()是基本的一步,目前主要的错误在于求窗口内最大值的代码需要优化,每一轮都调用max(dq)的话,复杂度会是n * k,这个k是可以优化的。最后还是老老实实看了视频,单独定义pop,push和front。

2023-08-08 15:38:49 45

原创 代码随想录day11 栈与队列part02 LeetCode 20 有效的括号1047. 删除字符串中的所有相邻重复项 150. 逆波兰表达式求值

输入: ["10", "6", "9", "3", "+", "-11", " * ", "/", " * ", "17", "+", "5", "+"]这一题应该属于是思路清晰,但是操作细节多的题目了,栈先进先出的特性确实十分适合这种运算操作,更准确的话应该反过来说,本来计算机的运算就是基于栈的。给定逆波兰表达式总是有效的。给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们。

2023-08-05 16:35:36 82 1

原创 代码随想录day10 栈与队列理论基础 LeetCode232.用栈实现队列225. 用队列实现栈

push(x) -- 将一个元素放入队列的尾部。虽然一遍过了,但是长度短到让人心慌......peek() -- 返回队列首部的元素。empty() -- 返回队列是否为空。pop() -- 从队列首部移除元素。

2023-08-04 17:32:52 46 1

原创 代码随想录 day08 字符串part01 LeetCod344.反转字符串 541. 反转字符串II 剑指Offer 05.替换空格 151.翻转字符串里的单词剑指Offer58-II.左旋转字符串

比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。思路是很简单的,不过我的老问题依然存在,处理循环的边界做的很差,for循环写了很久没debug成功,看了提示以后调整成for i in range(0,l,2*k)的形式才通过测试。输入:["H","a","n","n","a","h"]输出:["h","a","n","n","a","H"]输入:["h","e","l","l","o"]输出:["o","l","l","e","h"]

2023-08-02 17:01:40 27

原创 代码随想录day07 哈希表part02 LeetCode454.四数相加II 383. 赎金信 15. 三数之和 18. 四数之和

3个for循环套for循环完成,3*n^2完成,还有优化空间,思路为:先求出a,b数组的和以及出现次数,存入dict1,同理求出c,d数组的情况,存入dict2,再做一次for套for循环,找出和为0的组合,计数方面直接加上,dict1内对应元素出现次数*dict2内对应元素出现次数,一遍直接过,但是时间和空间方面的表现都相当难看。满足要求的四元组集合为: [ [-1, 0, 0, 1], [-2, -1, 1, 2], [-2, 0, 0, 2] ]继续改进,跳过相邻且相等的值十分重要。

2023-08-01 22:38:24 85 1

原创 代码随想录 day 06 哈希表理论基础 LeetCode 242.有效的字母异位词 349. 两个数组的交集 202. 快乐数 1. 两数之和

本题确保二者的每一个字母的出现次数相等即可,字母一共26个,显然是适合构建哈希表的,s中出现某一字母时,哈希表对应位置数值加一,t中出现时则减一,最终对比结果得出结论。「快乐数」定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是 无限循环 但始终变不到 1。给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。哈希表的第一天,内容还算相对简单的,重点在于理解哈希表的思想。

2023-07-31 22:47:08 61 1

原创 代码随想录 day04 LeetCode24. 两两交换链表中的节点 19.删除链表的倒数第N个节点 面试题 02.07. 链表相交 142.环形链表II

推荐双指针,保持fast比slow快n+1步,当fast.next = None时,slow.next = slow.next.next即可,初步结果如下,还没有处理边界情况。为了表示给定链表中的环,使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。如果两个链表没有交点,返回 null。笨方法就是翻转,删除第n个,再翻转,但这肯定不是好的方法,不多做解释。给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。给定一个链表,两两交换其中相邻的节点,并返回交换后的链表。

2023-07-31 22:04:12 33 1

原创 代码随想录day03 链表part01 链表理论基础 203.移除链表元素 707.设计链表 206.反转链表

代码随想录-链表基础知识python下的单链表节点定义,包含节点数值和指向的下一节点信息LeetCode 203 移除链表元素给你一个链表的头节点head和一个整数val,请你删除链表中所有满足的节点,并返回新的头节点。示例如下,head = [1,2,6,3,4,5,6],val = 6。else:但是在测试中发现这样无法解决head满足删除条件时的问题,所以修改为return dummyNode.next,成功通过。

2023-07-29 17:52:37 59

原创 代码随想录训练营 day02 数组part2 LeetCode 977有序数组的平方,209寻找最小长度子列,59螺旋矩阵II

初次博客,感觉还是没有太好地把解题过程中的感悟写出来,后面一步一步加强吧。

2023-07-28 21:17:05 74 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除