![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leetcode
文章平均质量分 56
SYSU_qsh
这个作者很懒,什么都没留下…
展开
-
【Leetcode】128_最长连续序列
题目 思路1. 如果题目没有时间要求的话可以考虑直接排序然后统计的暴力解法2. 题目要求时间复杂度为O(n),所以可以考虑使用一个哈希表used记录每个元素是否使用(被遍历过): 对于每一个元素首先判断其是否被遍历过,遍历过则pass,没遍历过才会有下面的故事: 1)先对该元素数轴上左边的数字(打印该元素)进行搜索,统计一下数目,并且遍历过的记录为true...原创 2018-07-26 00:22:00 · 253 阅读 · 0 评论 -
LeetCode 腾讯精选练习50 题——7. 整数反转
一、题目二、解法一开始是打算这么写的......没想到还有ans = ans*10 + x %10这样简单的性质。还有判断溢出(2^31=2147483648)时发现标准答案的很直接:class Solution {public: int reverse(int x) { int temp = x; int bit = 0; ...原创 2019-02-25 21:19:45 · 188 阅读 · 0 评论 -
【Leetcode】226. 翻转二叉树
题目解答递归方法的话很简单,直接写一个inverse函数(输入为TreeNode*)——对于当前节点的left子树和right子树都进行inverse操作。如果要用非递归实现的话也很简单,先把root节点压栈,然后写一个while循环,当这个栈不为空时进行如下操作:把栈顶元素弹出来,如果为NULL则continue;否则把弹出来的节点的左右指针交换然后再把它们压入栈中。代码如下:...原创 2019-03-19 18:30:06 · 211 阅读 · 0 评论 -
【Leetcode】167_两数之和 II - 输入有序数组
题目思路之所以记录这道题目是因为这里用到对撞指针的办法:分别设置指向数组头和尾的指针i、j,然后将数组中i、j对应的位置的值相加,若大于target则 j--,若小于target则 i++。注意,这个方法是一定会遍历所有的可能为答案的i、j组合的,与我之前写过的盛最多水的容器类似,所以这里就不再作证明,其实这两道题目的思想感觉也很相似。代码class Solution {p...原创 2019-03-12 10:59:57 · 231 阅读 · 0 评论