![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode
文章平均质量分 86
badgirl-bb
这个作者很懒,什么都没留下…
展开
-
【LeetCode-面试经典150题-day25】
530.二叉搜索树的最小绝对差230.二叉搜索树中第K小的元素98.验证二叉搜索树原创 2023-09-17 16:27:16 · 211 阅读 · 0 评论 -
【LeetCode-面试经典150题-day24】
35.搜索插入位置74.搜索二维矩阵162.寻找峰值33.搜索旋转排序数组原创 2023-09-16 19:47:36 · 555 阅读 · 0 评论 -
【LeetCode-面试经典150题-day23】
108. 将有序数组转换为二叉搜索树148.排序链表427.建立四叉树23.合并K个升序链表原创 2023-09-11 16:57:10 · 262 阅读 · 1 评论 -
【Leetcode-面试经典150题-day22】
97. 交错字符串原创 2023-09-05 21:37:43 · 948 阅读 · 0 评论 -
【LeetCode-面试经典150题-day21】
题意:给定一个三角形triangle,找出自顶向下的最小路径和。每一步只能移动到下一行中相邻的结点上。在这里指的是与相同或者等于的两个结点。也就是说,如果正位于当前行的下标i,那么下一步可以移动到下一行的下标i或i + 1。【输入样例】triangle = [[2],[3,4],[6,5,7],[4,1,8,3]]【输出样例】11解题思路:1. 定义一个新的二维list,list[j][i]表示在第j行中,下标为i处得到的最小路径和为多少。原创 2023-09-04 15:34:05 · 644 阅读 · 0 评论 -
【LeetCode-面试经典150题-day20】
70.爬楼梯198.打家劫舍139.单词拆分322.零钱兑换300.最长递增子序列原创 2023-09-03 11:11:55 · 384 阅读 · 0 评论 -
【LeetCode-面试经典150题-day19】
39.组合总和22.括号生成79.单词搜索原创 2023-08-31 21:08:43 · 309 阅读 · 0 评论 -
【LeetCode-面试经典150题-day18】
17.电话号码的字母组合77.组合46.全排列52.N皇后Ⅱ原创 2023-08-30 18:34:17 · 257 阅读 · 0 评论 -
【LeetCode-面试经典150题-day17】
173.二叉搜索树迭代器222.完全二叉树的节点个数199.二叉树的右视图637.二叉树的层平均值102.二叉树的层序遍历103.二叉树的锯齿形层次遍历原创 2023-08-29 14:30:23 · 397 阅读 · 0 评论 -
【LeetCode-面试经典150题-day16】
题意:给你二叉树的根结点rootTreeNoderightnull【输入样例】【输出样例】[1,null,2,null,3,null,4,null,5,null,6]解题思路:先序遍历的顺序是:根 左右,使用链表先存储先序遍历的节点顺序,之后遍历链表,更新每个节点的左右指针。时间: 击败了21.30%内存: 击败了92.42%解题思路2:边遍历边展开,每一次都把右子树接到左子树的最右边节点,然后把当前节点的左子树插入到右子树上。时间: 击败了100.00%内存: 击败了62.48%原创 2023-08-28 21:09:54 · 268 阅读 · 0 评论 -
【LeetCode-面试经典150题-day15】
题意:给定一个二叉树root,返回其最大深度。二叉树的是指从根节点到最远叶子节点的最长路径上的节点数。【输入样例】【输出样例】3解题思路:递归时间: 击败了100.00%内存: 击败了36.81%原创 2023-08-26 16:40:23 · 736 阅读 · 0 评论 -
【LeetCode-面试经典150题-day14】
19.删除链表的倒数第N个结点82.删除排序链表中的重复元素Ⅱ61. 旋转链表86.分隔链表146.LRU缓存原创 2023-08-25 15:27:57 · 796 阅读 · 0 评论 -
【LeetCode-面试经典150题-day13】
题意:给你一个链表的头节点head,判断链表中是否有环。如果链表中有某个节点,可以通过连续跟踪next指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数pos来表示链表尾连接到链表中的位置(索引从 0 开始)。pos。仅仅是为了标识链表的实际情况。如果链表中存在环,则返回true。否则,返回false。【输入样例】【输出样例】true解题思路:哈希表1. 用哈希表存储所有已经访问果的节点;2.每到一个节点时,如果该节点已经存在于哈希表中,则说明该链表是环形链表;原创 2023-08-24 22:26:33 · 437 阅读 · 0 评论 -
【LeetCode-经典面试150题-day12】
题意:给定一个只包括'('')''{''}''['']'的字符串s,判断字符串是否有效。【输入样例】s="({})"【输出样例】true解题思路:经典的栈思想,用数组模拟栈,从头开始遍历字符串,遇到左括号进栈,遇到右括号弹出栈顶,并匹配,看是否能匹配上,如果匹配不上直接return false;时间: 击败了50.23%内存: 击败了28.36%题意:给你一个字符串path,表示指向某一文件或目录的 Unix 风格(以'/'开头),请你将其转化为更加简洁的规范路径。原创 2023-08-22 22:42:02 · 444 阅读 · 0 评论 -
【LeetCode-经典面试150题-day11】
题意:给定一个未排序的整数数组nums,找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。请你设计并实现时间复杂度为O(n)的算法解决此问题。【输入样例】【输出样例】4解释:最长数字连续序列是[1,2,3,4]解题思路:哈希表1. 使用set,set不包含重复元素;因此我们先将nums中的元素存入到set中,实现一个去重效果。原创 2023-08-21 17:30:18 · 364 阅读 · 0 评论 -
【LeetCode-经典面试150题-day10】
题意:给定两个字符串s和t,编写一个函数来判断t是否是s的字母异位词。若s和t中每个字符出现的次数都相同,则称s和t互为字母异位词【输入样例】【输出样例】true解题思路:比较简单,定义一个数组来记录两个字符串中的字母出现次数数组alphaNum初始化为0,一个字符串负责对其++,一个对齐--如果是字母异位词,最后alphaNum的值肯定还是全0时间: 击败了82.24%内存: 击败了71.71%原创 2023-08-20 16:34:56 · 336 阅读 · 0 评论 -
【LeetCode-经典面试150题-day9]
题意:请你判断一个9 x 9的数独是否有效。只需要,验证已经填入的数字是否有效即可。1-91-91-93x3'.'【输入样例】board =【输出样例】true解题思路:1. 按行和按列都比较简单,用一个二维数组a[i][num]来存储第i行/列中num出现的次数,num的取值范围是1~9;2. 每个3×3的小九宫格,用三维数组来实现,matrix[i][j][num]表示的是三维数组中,第i行第j列这个九宫格中,num出现的次数。原创 2023-08-19 20:02:07 · 533 阅读 · 0 评论 -
【LeetCode-经典面试150题-day8】
题意:给定一个长度为n的整数数组height。有n条垂线,第i条线的两个端点是(i, 0)和。找出其中的两条线,使得它们与x轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。你不能倾斜容器。【输入样例】【输出样例】49解题思路:转换成求长方形的最大面积1.双指针i,j分别指向数组的头和尾,i和j之间的距离为长方形的长2. 长方形的高为min(height[i],height[j]),3.定义一个变量来存储能找到的最大面积开干时间: 击败了59.09%原创 2023-08-18 16:57:16 · 157 阅读 · 0 评论 -
【LeetCode-面试经典150题-day7】
题意:给定字符串和,判断是否为的子序列。字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不是)。【输入样例】【输出样例】true解题思路:双指针枚举时间: 击败了88.73%内存: 击败了86.35%原创 2023-08-17 21:22:05 · 116 阅读 · 0 评论 -
【LeetCode-面试经典150题-day6】
题意:编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串""。【输入样例】【输出样例】"fl"解题思路:横向扫描,依次遍历字符串数组中的每个字符串,对于每个遍历到的字符串,更新最长公共前缀,当遍历完所有的字符串后,即可得到字符数组中的最长公共前缀;时间: 击败了100.00%内存: 击败了97.06%解题思路:二分查找,最长公共前缀的长度不会超过字符串数组中的最短字符串的长度。原创 2023-08-16 16:19:27 · 143 阅读 · 0 评论 -
【LeetCode-面试经典150题-day5】
单词的长度。原创 2023-08-12 17:07:09 · 70 阅读 · 0 评论 -
【LeetCode-面试经典150题-day4】
题意:给你一个整数数组citations,其中表示研究者的第i篇论文被引用的次数。计算并返回该研究者的 h。根据维基百科上h代表“高引用次数” ,一名科研人员的h是指他(她)至少发表了h篇论文,并且每篇论文被引用h次。如果h有多种可能的值,h是其中最大的那个。原创 2023-08-11 22:01:03 · 107 阅读 · 0 评论 -
【LeetCode-面试经典150题-day2】
nums[j]时,证明一个新的元素被找到,要将其赋值给“新”数组时,要先将j进行++(挪位置),不然会覆盖掉原先的不重复元素。2.利用变量count统计同一元素出现的次数,定义变量maxCount存储当前出现次数最多的元素。3.遍历数组,遇到相同的+1,遇到不同的减-1,减到0重新开始计数。【输入样例】nums=[0,0,1,1,1,2,2,3,3,4]【输出样例】5,nums=[0,1,2,3,4]【输入样例】nums=[1,1,1,2,2,3]【输出样例】5,nums=[1,1,2,2,3]原创 2023-08-09 23:58:36 · 104 阅读 · 0 评论 -
【LeetCode-面试经典150题-day1】
3.遍历数组,遇到val值时,total++,并利用temp变量将num[i]与num[j]进行交换,注意交换后j--;【输入样例】nums1=[1,2,3,0,0,0],m=3,nums2=[2,5,6],n=3。解题思路:比较笨拙的方法,从数组的末端开始比较,找到较大值存储在最后面。解题思路:不使用额外的数组空间,O(1)额外空间原地修改数组。元素的顺序可以改变。【输入样例】nums=[3,2,2,3],val=3。最终,合并后数组不应由函数返回,而是存储在数组。的元素,并返回移除后数组的新长度。原创 2023-08-09 00:00:03 · 116 阅读 · 0 评论