![](https://img-blog.csdnimg.cn/20190918140053667.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
leetcode热门200题
leetcode热门题
龙崎流河
沉淀
展开
-
543. 二叉树的直径
给定一棵二叉树,你需要计算它的直径长度。一棵二叉树的直径长度是任意两个结点路径长度中的最大值。这条路径可能穿过也可能不穿过根结点。原创 2022-11-04 16:47:00 · 81 阅读 · 0 评论 -
19.删除链表的倒数第 N 个结点
给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。原创 2022-11-02 12:20:39 · 114 阅读 · 0 评论 -
18. 四数之和
该题思路和三数之和一样,四个指针,两个指针枚举,两个指针采用双指针法,在前两个指针后的部分进行首尾指针移动,找出目标值。需要注意测试用例:测试用例[1000000000,1000000000,1000000000,1000000000] -294967296这种情况sum会超过int类型发生溢出,因此可以将target设置为long类型防止溢出。原创 2022-11-02 10:26:01 · 136 阅读 · 0 评论 -
前中后三种二叉树遍历的非递归代码
递归具有固有的局限性,如果二叉树的深度太大,那么递归代码可能会导致调用的栈溢出问题,其次递归代码太简单,面试官增加难度会要求你写非递归形式。原创 2022-10-31 11:38:51 · 134 阅读 · 0 评论 -
17.电话号码的字母组合
给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。原创 2022-10-27 20:46:44 · 230 阅读 · 0 评论 -
百度面试:环形链表分成三等份
三指针法,具体见代码,需要注意如果出现不是三的倍数个数的链表,需要问面试官怎么分,比如7个节点,可以分成三种,1,1,5 与2,2,3与3,3,1,一般情况下都是分成3,3,1这种,我的代码也是这么分的,具体详细见代码,不再赘述。原创 2022-10-25 16:29:56 · 290 阅读 · 0 评论 -
字节真题:单链表相加
定义一个逆序函数,该函数使用的递归,先将两个链表逆序,然后同位相加大于等于10,则进一位该位取余,别忘了特殊情况比如9944链表和链表56,最后进的一位再建立一个值为1的节点,然后连接上,最后再将相加后的链表逆序得到结果,具体详细见代码,时间空间复杂度都为O(n)。原创 2022-10-25 12:49:23 · 190 阅读 · 0 评论 -
15.16 三数之和 最接近的三数之和
给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i!= j、i!= k 且 j!= k ,同时还满足 nums[i] + nums[j] + nums[k] == 0。请你返回所有和为 0 且不重复的三元组。注意:答案中不可以包含重复的三元组。原创 2022-10-23 21:54:21 · 70 阅读 · 0 评论 -
14.最长公共前缀
编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。原创 2022-10-23 01:56:58 · 98 阅读 · 0 评论 -
12.13 整数转罗马数字,罗马数字转整数
将每个罗马字符和其对应的数字都存入键值对中,遍历字符串,累加对应的哈希表的值,当出现下图情况,也就是CM=900,C对应的值100原创 2022-10-21 17:32:59 · 112 阅读 · 0 评论 -
11.盛最多水的容器
给定一个长度为 n 的整数数组 height。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i])。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。返回容器可以储存的最大水量。说明:你不能倾斜容器。原创 2022-10-21 15:17:58 · 103 阅读 · 0 评论 -
正则表达式匹配
请实现一个函数用来匹配包含’. ‘和’‘的正则表达式。模式中的字符’.‘表示任意一个字符,而’'表示它前面的字符可以出现任意次(含0次)。在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串"aaa"与模式"a.a"和"abaca"匹配,但与"aa.a"和"ab*a"均不匹配。原创 2022-09-21 16:10:26 · 145 阅读 · 0 评论 -
9.回文数
给你一个整数 x ,如果 x 是一个回文整数,返回 true;否则,返回 false。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。原创 2022-10-20 10:55:01 · 101 阅读 · 0 评论 -
8. 字符串转换整数 (atoi)
请你来实现一个 myAtoi(string s) 函数,使其能将字符串转换成一个 32 位有符号整数(类似 C/C++ 中的 atoi 函数)。函数 myAtoi(string s) 的算法如下:读入字符串并丢弃无用的前导空格检查下一个字符(假设还未到字符末尾)为正还是负号,读取该字符(如果有)。确定最终结果是负数还是正数。如果两者都不存在,则假定结果为正。读入下一个字符,直到到达下一个非数字字符或到达输入的结尾。字符串的其余部分将被忽略。原创 2022-10-19 15:59:02 · 67 阅读 · 0 评论 -
7.整数反转
给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。假设环境不允许存储 64 位整数(有符号或无符号)。原创 2022-10-19 15:13:06 · 83 阅读 · 0 评论 -
6.Z 字形变换
将一个给定字符串 s 根据给定的行数 numRows ,以从上往下、从左到右进行 Z 字形排列。比如输入字符串为 “PAYPALISHIRING” 行数为 3 时,排列如下:之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:“PAHNAPLSIIGYIR”。原创 2022-10-19 14:54:43 · 53 阅读 · 0 评论 -
5.最长回文子串
给你一个字符串 s,找到 s 中最长的回文子串。原创 2022-10-19 11:20:50 · 83 阅读 · 0 评论 -
4.寻找两个正序数组的中位数
给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数。算法的时间复杂度应该为 O(log (m+n))。原创 2022-10-17 23:36:47 · 290 阅读 · 0 评论 -
2. 两数相加
给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。原创 2022-10-17 12:23:59 · 60 阅读 · 0 评论 -
1. 两数之和
给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。原创 2022-10-17 11:15:24 · 64 阅读 · 0 评论