![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
LeetCode-Medium
今天好好优秀了么
Fake it until you make it.
展开
-
137. Single Number II 【LeetCode】
问题描述 题目要求:在线性时间内,并且不要用其余的空间。 解题思路:对每个数的每一位跟1与运算,其和模3,如果为零说明那个数字在该位为0,如果模3不为0,则说明该数在该位为1。 入的坑:算术运算符比位运算符要高级,所以如果写在一边要对位运算整体加括号。 代码如下: class Solution { public: int singleNumber(vector<int>&am...原创 2019-04-06 19:09:34 · 114 阅读 · 0 评论 -
144. Binary Tree Preorder Traversal 【LeetCode】
问题描述: 遇到的问题:一直忘记考虑根节点为空的情况,导致一直超时。 代码如下: /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x),...原创 2019-04-07 17:58:00 · 103 阅读 · 0 评论 -
143. Reorder List【LeetCode】
问题描述 解题思路: 1.利用快慢指针将链表分成两半 2.将后半段链表逆转(注意,将前半段最后一个指针赋值为null) 3.将两个链表拼接起来 即例如: 1->2->3->4 变成: 1->2 4->3 然后: 1->4->2->3 代码如下: /** * Definition for singly-linked list. * struct ...原创 2019-04-07 19:30:53 · 108 阅读 · 0 评论 -
word-break 【LeetCode】
问题描述 题目意思是:判断一个字符串能不能被分割成列表里的单词。 代码如下: class Solution { public: bool wordBreak(string s, vector<string>& wordDict) { unordered_set<string> dict(wordDict.begin(),wordDict.e...原创 2019-04-11 17:30:56 · 228 阅读 · 0 评论 -
Single Number III【LeetCode】
问题描述 题目意思是找出数组里两个没重复的数。 几个技巧: 1.一个数异或两次等于0,所以遍历数组,把所有数抑或一遍,最后得到的数temp正好是我们要找的两个数的异或。 2.异或中第一次出现1的位置就是这两个数相异的第一位,把这一位置1其余位都置0,如5和3,即101和011,相异的第一位是第二位,我们可以这么来求:temp = temp & (-temp),依旧拿5和3这个例子,tem...原创 2019-04-13 10:48:03 · 125 阅读 · 0 评论 -
134. Gas Station【LeetCode】
问题描述 代码如下: class Solution { public: int canCompleteCircuit(vector<int>& gas, vector<int>& cost) { int total = 0, sum = 0, start = 0; for(int i = 0; i < gas....原创 2019-04-17 19:36:21 · 171 阅读 · 0 评论 -
133. Clone Graph【LeetCode】
问题描述 之前总是把引用符号掉了,错了好多次。。 代码如下 /** * Definition for undirected graph. * struct UndirectedGraphNode { * int label; * vector<UndirectedGraphNode *> neighbors; * UndirectedGraphNod...原创 2019-04-18 16:36:56 · 152 阅读 · 1 评论