![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leetcode打卡
文章平均质量分 66
尼欧e
这个作者很懒,什么都没留下…
展开
-
leetCode-两数之和,三数之和,四数之和
两数之和,三数之和,四数之和两数之和三数之和四数之和两数之和传送门:LeetCode - 1 两数之和.根据题意,我们可以轻松的想到一个O(n^2) 的一个做法,双层循环就可以。但是我们是不是会有更好的方法来优化这个时间复杂度呢,诶,先排序然后使用双指针就可以将时间复杂度优化到O(nlogn) 这是一个进步,如何将它优化到一个O(n) 的做法呢,接下来,我们来一起看一看通过上图,我们分析可以得知,只需要找到在s[i] 前面是否满足存在一个数字为target - s[i]。 这样的话,我们就可以使原创 2021-01-22 20:27:54 · 92 阅读 · 0 评论 -
leetcode-5
leetcode-5 最长回文串题目描述:给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。input:babadoutput:babinput: cbbdoutput: bb分析思路:对于本题,我们要找的是最常的回文子串,那么我们可以以每一个字符作为一个子串的中间(当子串长度为奇数时),然后从这个字符开始,用双指针想左右两侧进行遍历,当左右两侧字符str[l] != str[r] 或者 l,r 超出了字符串的下标时遍历结束。将此时得到的字符串长原创 2021-01-07 18:31:24 · 115 阅读 · 0 评论 -
根据前序遍历和中序遍历恢复二叉树
根据前序遍历和中序遍历恢复二叉树在二叉树中,我们可以通过前序遍历和中序遍历恢复出一个完整的二叉树。是因为在恢复的过程中,我们通过前序遍历找到树的根节点,通过根节点和中序遍历找到二叉树的左右子树,然后再进行递归就可以。例如 某一个树的前序遍历:{1,2,4,7,3,5,6,8}某一个树的中序遍历:{4,7,2,1,5,3,8,6}通过前序遍历找到输的根节点为1,在中序遍历中,以1位分割的就是左右子树。此时,我们再看前序遍历中除1以外的其他数据,2,4,7就是他的左子树,并且左子树的根节点为2,3,5原创 2020-08-06 15:23:23 · 985 阅读 · 0 评论 -
回文数
回文数回文数应该是我们最开始接触的一类小语法题了大家最熟悉的也是字符串判断一个数是不是回文数直到今天我发现其实不用字符串才是这个题目的本意直接看一眼代码吧/***题目是我在刷leetCode的时候看到的,以前只知道用字符串,今天碰巧想到这种方式了就记录一下1. 负数肯定不是回文数 -123 != 123-2. 我们逆向从个位开始变成一个整数3. 进行比较4. 由于考虑...原创 2020-04-23 20:45:02 · 114 阅读 · 0 评论 -
逆序对数量
逆序对简述在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。样例输入7 5 6 4样例输出5/*1. 此处仅仅提供样例代码*/...原创 2020-04-24 20:37:33 · 81 阅读 · 0 评论 -
合并K个排序链表
今天是刷leetcode打卡的第3天。每日一次,例行打气。今天看到leetcode推荐了一道题名字叫“合并K个排序链表”题目描述:合并 k 个排序链表,返回合并后的排序链表。请分析和描述算法的复杂度。示例输入:[[1,4,5],[1,3,4],[2,6]]示例输出:[1,1,2,3,4,4,5,6]稍微一看,哦吼,这不就是链表合并嘛,我们首先可以想到的是一个while() 循...原创 2020-04-26 20:34:16 · 93 阅读 · 0 评论