leetcode
Zino-齐诺
这个作者很懒,什么都没留下…
展开
-
leetcode - 213. House Robber II
class Solution {public: int rob(vector<int>& nums) { if(nums.empty()) return 0; if(nums.size()==1) return nums[0]; int arr[2]={}; int i(0),ret; ...原创 2019-05-08 00:06:18 · 122 阅读 · 0 评论 -
leetcode - 560. Subarray Sum Equals K
class Solution {public: int subarraySum(vector<int>& nums, int k) { int n=nums.size(),ret(0),i; unordered_map<int,int>map; if(!n) return 0; int *p...原创 2019-04-11 14:52:01 · 113 阅读 · 0 评论 -
leetcode - 102. Binary Tree Level Order Traversal
层次遍历class Solution {public: vector<vector<int>> levelOrder(TreeNode* root) { vector<vector<int>> ret; if(root==NULL) return ret; vector<int>...原创 2019-04-02 12:26:51 · 125 阅读 · 0 评论 -
leetcode - 74. Search a 2D Matrix
二分搜索class Solution {public: bool searchMatrix(vector<vector<int>>& matrix, int target) { int m = matrix.size(); if (!m) return 0; int n = matrix[0].size(), r; if(!n) ...原创 2019-04-02 12:08:53 · 119 阅读 · 0 评论 -
leetcode - 200. Number of Islands
竟然直接用递归的深度优先遍历就是最优速度了…class Solution {public: void dps(int i,int j,int m,int n,vector<vector<char>>& grid,int num) { if(grid[i][j]!='1') return; grid[i][j]='...原创 2019-04-02 11:27:21 · 127 阅读 · 0 评论 -
leetcode - 94. Binary Tree Inorder Traversal
class Solution {public: void visit(vector<int> & ret, TreeNode* root) { if(root->left) visit(ret,root->left); ret.push_back(root->val); if(root->...原创 2019-04-07 21:47:57 · 126 阅读 · 0 评论 -
leetcode - 75. Sort Colors
class Solution {public: void sortColors(vector<int>& nums) { int p[3]={}; for(auto it:nums) { ++p[it]; } int i=0; for(int j=...原创 2019-04-07 21:42:25 · 138 阅读 · 0 评论 -
leetcode - 78. Subsets
class Solution {public: vector<vector<int>> subsets(vector<int>& nums) { vector<vector<int>> ret; int i,end; vector<int> num; ...原创 2019-04-07 21:33:39 · 101 阅读 · 0 评论 -
leetcode - 62. Unique Paths
class Solution {public: int uniquePaths(int m, int n) { long long ret(1); int i(0); if(m<n) swap(m,n); --n; for(m;i<n;++i,++m) { ...原创 2019-04-07 21:28:37 · 95 阅读 · 0 评论 -
leetcode - 56. Merge Intervals
/** * Definition for an interval. * struct Interval { * int start; * int end; * Interval() : start(0), end(0) {} * Interval(int s, int e) : start(s), end(e) {} * }; */class S...原创 2019-04-07 21:13:31 · 117 阅读 · 0 评论 -
leetcode - 55. Jump Game
class Solution {public: bool canJump(vector<int>& nums) { int maxw(0),n=nums.size(); for(int i=0;i<n&&i<=maxw;++i) { maxw=max(maxw,num...原创 2019-04-07 20:58:50 · 107 阅读 · 0 评论 -
leetcode - 49. Group Anagrams
class Solution {public: vector<vector<string>> groupAnagrams(vector<string>& strs) { string s; vector<vector<string>> ret; vector<str...原创 2019-04-07 20:40:56 · 152 阅读 · 0 评论 -
leetcode - 46. Permutations
class Solution {public: vector<vector<int> > permute(vector<int> &num) { vector<vector<int> > ret; sort(num.begin(), num.end()); r...原创 2019-04-07 20:21:57 · 122 阅读 · 0 评论 -
leetcode - 39. Combination Sum
朴素的回溯法class Solution {public: void findd(vector<vector<int>> & ret,vector<int> & num,vector<int> & can,int t,int n,int i) { if(n==t) { ...原创 2019-04-07 19:50:02 · 96 阅读 · 0 评论 -
leetcode - 17. Letter Combinations of a Phone Number
莫名其妙class Solution {public: vector<string> letterCombinations(string digits) { vector<string> vs(1,""); vector<string> ret; if(!digits.size()) return r...原创 2019-04-01 19:15:19 · 105 阅读 · 0 评论 -
leetcode - 234. Palindrome Linked List
摸不着头脑class Solution {public: bool isPalindrome(ListNode* head) { vector<int>a; while(head) { a.push_back(head->val); head=head->next;...原创 2019-04-01 18:48:06 · 103 阅读 · 0 评论 -
leetcode - 127. Word Ladder
起点和终点一起进行广度优先遍历class Solution {public: int ladderLength(string beginWord, string endWord, vector<string>& wordList) { unordered_map<string, int>hash, hash2; queue<string&...原创 2019-04-01 18:40:31 · 144 阅读 · 0 评论 -
leetcode - 621. Task Scheduler
class Solution {public: int leastInterval(vector<char>& tasks, int n) { int size=tasks.size(); if(size==1) return 1; vector<int> time(26,0); int ...原创 2019-04-11 16:37:16 · 87 阅读 · 0 评论 -
leetcode - 236. Lowest Common Ancestor of a Binary Tree
树的遍历class Solution {public: int visit(TreeNode* root,TreeNode* p,TreeNode* q,TreeNode* & pr) { if(!root) return 0; int x=(int)(root==p||root==q)+visit(root->right,p,q...原创 2019-04-02 13:57:05 · 83 阅读 · 0 评论 -
leetcode - 198. House Robber
class Solution {public: int rob(vector<int>& nums) { int arr[2]={}; int i(0); bool f(0); for(;i!=nums.size();++i,f=!f) { arr[f]=max(...原创 2019-05-07 23:52:07 · 120 阅读 · 0 评论 -
leetcode - 394. Decode String
class Solution {public: string doit(int &i,string &s) { string s1; if(i>=s.size()) return s1; for(;i<s.size();++i) { if((s[...原创 2019-05-09 17:47:01 · 169 阅读 · 0 评论 -
leetcode - 338. Counting Bits
class Solution {public: vector<int> countBits(int num) { vector<int> ret(num+1,0); for(int i=1;i<=num;++i) { ret[i]=ret[i>>1]+i%2; ...原创 2019-05-09 16:46:56 · 120 阅读 · 0 评论 -
leetcode - 337. House Robber III
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */cla...原创 2019-05-09 16:34:55 · 111 阅读 · 0 评论 -
leetcode - 238. Product of Array Except Self
class Solution {public: vector<int> productExceptSelf(vector<int>& nums) { int pro(1),count(0); vector<int> ret(nums.size(),0); for(int i=0;i<num...原创 2019-04-09 21:42:48 · 92 阅读 · 0 评论 -
leetcode - 221. Maximal Square
class Solution {public: int maximalSquare(vector<vector<char>>& matrix) { if(!matrix.size()) return 0; int m=matrix.size()+1,n=matrix[0].size()+1; int **p...原创 2019-04-09 21:37:16 · 108 阅读 · 0 评论 -
leetcode - 215. Kth Largest Element in an Array
class Solution {public: void reflesh(int *p,int k,int i) { int x=p[i]; int s=2*i+1; while(s<k) { if((s+1)<k&&p[s+1]<p[s]) { ...原创 2019-04-09 20:55:18 · 108 阅读 · 0 评论 -
leetcode - 208. Implement Trie (Prefix Tree)
class Trie {private: struct point{ char x; point* next[26]; bool end; point(char s):x(s),end(0) { for(auto &i:next) i=NULL; } ...原创 2019-04-09 19:44:29 · 149 阅读 · 0 评论 -
leetcode - 207. Course Schedule
class Solution {public: bool canFinish(int numCourses, vector<pair<int, int>>& prerequisites) { int *p=new int[numCourses]; fill(p,p+numCourses,0); vector...原创 2019-04-08 21:29:11 · 112 阅读 · 0 评论 -
leetcode - 152. Maximum Product Subarray
class Solution {public: int maxProduct(vector<int>& nums) { if(!nums.size()) return 0; vector<int>::iterator it=nums.begin(); int ma(*it),mi(*it),map,mip,...原创 2019-04-08 20:29:18 · 135 阅读 · 0 评论 -
leetcode - 148. Sort List
class Solution {public: ListNode* mer(ListNode* p1,ListNode* p2) { if(!p1) return p2; if(!p2) return p1; ListNode *head,*ret; if(p1->val>p2->val) ...原创 2019-04-08 20:02:31 · 74 阅读 · 0 评论 -
leetcode - 142. Linked List Cycle II
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode *d...原创 2019-04-08 16:29:20 · 187 阅读 · 0 评论 -
leetcode - 114. Flatten Binary Tree to Linked List
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */cla...原创 2019-04-08 16:10:55 · 99 阅读 · 0 评论 -
leetcode - 96. Unique Binary Search Trees
class Solution {public: int numTrees(int n) { if(n<2) return 1; int *dp=new int[n+1]; int i,j,k; dp[0]=dp[1]=1; for(i=2;i<=n;++i) { ...原创 2019-04-08 15:19:05 · 100 阅读 · 0 评论 -
leetcode - 105. Construct Binary Tree from Preorder and Inorder Traversal
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */cla...原创 2019-04-08 15:07:01 · 83 阅读 · 0 评论 -
leetcode - 79. Word Search
class Solution {public: bool visit(vector<vector<char>>& board, string & word,int i,int j,int n,bool **p) { if(p[i][j]) return 0; if(word[n]!=board[i][j])...原创 2019-04-08 14:28:02 · 114 阅读 · 0 评论 -
leetcode - 309. Best Time to Buy and Sell Stock with Cooldown
class Solution {public: int maxProfit(vector<int>& prices){ int n=prices.size(); vector<int>un(n+1,0); vector<int>ho(n+1,0); if(n<2) ret...原创 2019-04-10 22:05:38 · 85 阅读 · 0 评论 -
leetcode - 406. Queue Reconstruction by Height
class Solution {public: static bool cmp1(pair<int,int> a,pair<int,int> b) { return a.first<b.first; } vector<pair<int, int>> reconstructQueue(vecto...原创 2019-04-10 21:12:39 · 123 阅读 · 0 评论 -
leetcode - 21. Merge Two Sorted Lists
二路归并/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNo...原创 2019-03-30 20:59:54 · 96 阅读 · 0 评论 -
leetcode - 1. Two Sum
哈希问题class Solution {public: vector<int> twoSum(vector<int>& nums, int target) { vector<int> ret; int n=nums.size(),x; unordered_map<int,int>h...原创 2019-03-30 16:46:14 · 110 阅读 · 0 评论 -
leetcode - 34. Find First and Last Position of Element in Sorted Array
二分查找问题class Solution {public: vector<int> searchRange(vector<int>& nums, int target) { int left(0),right=nums.size()-1,mid,b,p; int end=right; vector<...原创 2019-03-30 14:15:54 · 106 阅读 · 0 评论