
LeetCode
RookieFCB
这个作者很懒,什么都没留下…
展开
-
LeetCode 26. 删除排序数组中的重复项
题目描述题解哈希表法class Solution {public: int removeDuplicates(vector<int>& nums) { int result = 0, i = 0; map<int, int>tmp; while(i != nums.size()) { ...原创 2018-12-05 00:02:32 · 117 阅读 · 0 评论 -
LeetCode 100. 相同的树
题目描述题解/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * };...原创 2019-01-05 23:23:52 · 104 阅读 · 0 评论 -
LeetCode 237. 删除链表中的节点
题目描述题解/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: voi...原创 2019-01-05 23:24:42 · 346 阅读 · 0 评论 -
LeetCode 94. 二叉树的中序遍历
题目描述题解/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * };...原创 2019-01-06 15:22:30 · 175 阅读 · 0 评论 -
LeetCode 707. 设计链表
题目描述题解struct MyListNode { int val; MyListNode* next;};class MyLinkedList {public: MyListNode* head; /** Initialize your data structure here. */ MyLinkedList() { head ...原创 2019-01-06 19:26:58 · 408 阅读 · 1 评论 -
LeetCode 53. 最大子序和
题目描述题解动态规划class Solution {public: int maxSubArray(vector<int>& nums) { int result = nums[0]; int sum = 0; for (int i = 0; i < nums.size(); ++i) { ...原创 2019-07-07 20:47:23 · 153 阅读 · 0 评论 -
LeetCode 14. 最长公共前缀
题目描述题解水平扫描class Solution {public: string longestCommonPrefix(vector<string>& strs) { string result = ""; if (size(strs) == 0) return result; if (size(strs) =...原创 2019-07-03 15:22:16 · 154 阅读 · 0 评论 -
LeetCode 20. 有效的括号
题目描述题解class Solution {public: bool isValid(string s) { if (s.size() == 0) return true; map<char, char> m; m[')'] = '('; m[']'] = '['; m['...原创 2019-07-03 16:38:18 · 121 阅读 · 0 评论 -
LeetCode 35. 搜索插入位置
题目描述题解简单遍历class Solution {public: int searchInsert(vector<int>& nums, int target) { int i = 0; for (; i < nums.size(); ++i) { if (nums[i] == target) r...原创 2019-07-06 11:15:01 · 134 阅读 · 0 评论 -
LeetCode 28. 实现strStr()
题目描述题解简单遍历匹配class Solution {public: int strStr(string haystack, string needle) { if (haystack.size() < needle.size()) return -1; if (needle.size() == 0) return 0; ...原创 2019-07-06 11:18:07 · 144 阅读 · 0 评论 -
LeetCode 38. 报数
题目描述题解输入2:表示报数序列中第一个数为一个一,即11。输入3:表示报数序列中第二个数为两个一,即21。输入4:表示报数序列中第三个数为一个二,一个一,即1211。输入5:表示报数序列中第四个数为一个一,一个二,两个一,即111211。…\dots…递归class Solution {public: string core(int n, string str) {...原创 2019-07-06 21:29:05 · 200 阅读 · 0 评论 -
LeetCode 58. 最后一个单词的长度
题目描述题解注:以字符串为"He "例,其最后一个单词的长度为2。在计算最后一个单词长度时,需过滤单词"He"后的空格。双指针法class Solution {public: int lengthOfLastWord(string s) { int end = s.size() - 1; while (end >= 0 &&...原创 2019-07-30 14:10:24 · 159 阅读 · 0 评论 -
LeetCode 74. 搜索二维矩阵
题目描述题解class Solution {public: bool searchMatrix(vector<vector<int>>& matrix, int target) { bool found = false; if(matrix.empty()) return false; ...原创 2019-01-03 16:45:14 · 836 阅读 · 0 评论 -
LeetCode 234. 回文链表
题目描述请判断一个链表是否为回文链表。示例1:输入: 1->2输出: false示例2:输入: 1->2->2->1输出: true题解/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ...原创 2018-12-28 19:41:57 · 159 阅读 · 0 评论 -
LeetCode 206. 反转链表
题目描述反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL题解/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next...原创 2018-12-28 15:29:14 · 144 阅读 · 0 评论 -
LeetCode 7. 整数反转
题目描述题解取巧法class Solution {public: int reverse(int x) { long rev = 0; while(x != 0) { int pop = x % 10; x /= 10; rev = rev * 10 + pop; ...原创 2018-12-07 20:38:06 · 172 阅读 · 0 评论 -
LeetCode 9. 回文数
题目描述题解简单法class Solution {public: bool isPalindrome(int x) { long rev = 0; int tmp = x; if(x == 0) return true; if(x < 0 || (x % 10 == 0 && x != 0)) ...原创 2018-12-08 23:54:55 · 115 阅读 · 0 评论 -
LeetCode 27. 移除元素
题目描述题解简单方法class Solution {public: int removeElement(vector&amp;lt;int&amp;gt;&amp;amp; nums, int val) { int i = 0; while(i != nums.size()) { if(nums[i] == val) { ...原创 2018-12-06 00:52:37 · 126 阅读 · 0 评论 -
LeetCode 1. 两数之和
题目描述题解暴力法class Solution {public: vector&amp;lt;int&amp;gt; twoSum(vector&amp;lt;int&amp;gt;&amp;amp; nums, int target) { vector&amp;lt;int&amp;gt; result; for(int i=0; i &原创 2018-12-03 23:26:30 · 111 阅读 · 0 评论 -
LeetCode 35. 搜索插入位置
题目描述题解两次遍历class Solution {public: int searchInsert(vector<int>& nums, int target) { for(int i = 0; i < nums.size(); i++) { if(nums[i] == target) return i; ...原创 2018-12-06 22:58:06 · 458 阅读 · 0 评论 -
LeetCode 21. 合并两个有序链表
题目描述将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4题解/** * Definition for singly-linked list. * struct ListNode { * int...原创 2018-12-26 14:02:56 · 127 阅读 · 0 评论 -
LeetCode 83. 删除排序链表中的重复元素
题目描述给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。示例 1:输入: 1->1->2输出: 1->2示例 2:输入: 1->1->2->3->3输出: 1->2->3题解/** * Definition for singly-linked list. * struct ListNode { * ...原创 2018-12-26 14:25:46 · 120 阅读 · 0 评论 -
LeetCode 141. 环形链表
题目描述给定一个链表,判断链表中是否有环。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。示例 1:输入:head = [3,2,0,-4], pos = 1输出:true解释:链表中有一个环,其尾部连接到第二个节点。示例 2:输入:head = [1,2], pos = 0输出:...原创 2018-12-26 17:04:36 · 138 阅读 · 0 评论 -
LeetCode 13. 罗马数字转整数
题目描述题解暴力判断class Solution {public: int romanToInt(string s) { int result = 0; for(int i = 0; i < s.length(); i++) { if(s.compare(i, 1, "I") == 0 && s.com...原创 2018-12-10 23:13:34 · 134 阅读 · 0 评论 -
LeetCode 160. 相交链表
题目描述题解双指针法/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ...原创 2018-12-27 15:44:21 · 147 阅读 · 0 评论 -
LeetCode 203. 移除链表元素
题目描述删除链表中等于给定值 val 的所有节点。示例:输入: 1->2->6->3->4->5->6, val = 6输出: 1->2->3->4->5题解/** * Definition for singly-linked list. * struct ListNode { * int val; * ...原创 2018-12-27 17:10:19 · 135 阅读 · 0 评论 -
LeetCode 66. 加一
题目描述题解class Solution {public: vector<int> plusOne(vector<int>& digits) { for (int end = digits.size() - 1; end >= 0; --end) { digits[end]++; ...原创 2019-07-31 10:56:38 · 144 阅读 · 0 评论