- 博客(58)
- 资源 (2)
- 收藏
- 关注
转载 Subsets
class Solution {public: vector> subsets(vector& nums) { vector> res; vector emp; res.push_back(emp); sort(nums.begin(),nums.end()); if(!nums.
2015-05-28 00:08:33 276
原创 Combinations
class Solution {public: vector> combine(int n, int k) { vector> result; vector cur; dfs(result,cur,1,k,n); return result; } void dfs(vector>
2015-05-27 19:44:59 219
转载 Sqrt(x)
class Solution {public: int mySqrt(int x) { long long low=0; long long high=x; long long result=0; while(low<=high) { long long
2015-05-27 19:38:27 273
转载 Permutations II
class Solution {public: vector> permuteUnique(vector& nums) { vector> result; if(nums.empty()) return result; else dfs(result,nums,0,nums.si
2015-05-27 19:12:00 248
原创 Permutations
class Solution {public: vector> permute(vector& nums) { vector> result; if(nums.empty()) return result; else dfs(result,nums,0,nums.si
2015-05-27 18:32:24 239
转载 Remove Element
class Solution {public: int removeElement(vector& nums, int val) { if(nums.empty()) return 0; const int n=nums.size(); int count=0; for(in
2015-05-27 18:22:44 227
转载 Generate Parentheses
class Solution {public: vector generateParenthesis(int n) { vector result; if(n > 0) dfs(result,"",n,n); return result; } void dfs(
2015-05-27 17:50:53 207
转载 Set Matrix Zeroes
class Solution {public: void setZeroes(vector>& matrix) { if(matrix.empty()|| matrix[0].empty()) return; int m=matrix.size(); int n=matrix[0].size();
2015-05-27 16:50:12 430
转载 Valid Number
class Solution {public: bool isNumber(string s) { const int n = s.size(); int i = 0; while(i < n && s[i] == ' ') ++i; if(i == n) retur
2015-05-27 12:12:38 245
原创 成对交换双向链表中的结点
头文件:#include class ListNode{public: ListNode* next; ListNode* pre; int val; ListNode(int x):val(x),next(NULL),pre(NULL){};};源文件:#include "ListNode.h"#include #include using namespac
2015-05-27 11:58:41 555
转载 Insert Interval
/** * 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 So
2015-05-27 11:01:50 246
原创 Swap Nodes in Pairs
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode* sw
2015-05-25 23:32:53 255
原创 Kth Largest Element in an Array
class Solution {public: int findKthLargest(vector& nums, int k) { if(nums.empty()) return 0; make_heap(nums.begin(),nums.end()); int i=0; int num=
2015-05-25 22:59:38 216
转载 Trapping Rain Water
class Solution {public: int trap(vector& height) { if(height.empty()) return 0; int left=0; int right=height.size()-1; int size=0;
2015-05-24 19:17:33 275
转载 Sort List
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public: ListNode* so
2015-05-20 17:42:04 213
转载 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 So
2015-05-18 21:09:21 210
转载 Pow(x, n)
class Solution {public: double myPow(double x, int n) { if(n<0) { if(n==INT_MIN) return pow(x,n+1)/x; else {
2015-05-18 20:44:22 250
原创 Reverse Integer
class Solution {public: int reverse(int x) { long long result=0; string s=""; int sign=1; if(x<0) sign=-1; int temp=x*sign; s=to_s
2015-05-17 21:43:18 205
转载 String to Integer (atoi)
class Solution {public: int myAtoi(string str) { long long res = 0; int sign = 1; const int n=str.size(); int i=0; while(str[i] ==' ' && i ++i;
2015-05-17 21:08:52 372
转载 Compare Version Numbers
class Solution {public: int compareVersion(string version1, string version2) { const int m = version1.size(); const int n = version2.size(); int i = 0; int j
2015-05-17 20:21:16 266
原创 Count and Say
class Solution {public: string countAndSay(int n) { if(n<=0) return ""; string result="1"; for(int i=2;i<=n;++i) { string temp="";
2015-05-17 17:59:01 219
原创 Valid Parentheses
class Solution {public: bool isValid(string s) { if(s.empty()||s.size()==1) return false; stack stackdata; int i=0; const int n=s.size();
2015-05-17 16:51:13 258
原创 ZigZag Conversion
class Solution {public: string convert(string s, int numRows) { if(s.empty()|| numRows<=0) return ""; if(numRows==1||numRows>=s.size()) return s;
2015-05-17 16:13:37 229
原创 Length of Last Word
class Solution {public: int lengthOfLastWord(string s) { if(s.empty()) return 0; int count=0; bool firstspace=true; const int n=s.size();
2015-05-16 11:23:08 200
转载 Longest Common Prefix
class Solution {public: string longestCommonPrefix(vector& strs) { const int n=strs.size(); if(n==0) return ""; else if(n==1) return strs[0];
2015-05-15 15:49:46 216
转载 Longest Substring Without Repeating Characters
class Solution {public: int lengthOfLongestSubstring(string s) { const int n=s.size(); if(n==0) return 0; else { unordered_map m;
2015-05-15 15:32:33 228
转载 Longest Palindromic Substring
class Solution {public: string longestPalindrome(string s) { const int n=s.size(); if(n==0) return ""; else if(n==1) return s; else
2015-05-15 15:04:30 215
原创 Best Time to Buy and Sell Stock III
1、分别计算出0天到i天的最大利润和i天到最后一天的最大利润,两者相加,找出最大的,但是超时了。class Solution {public: int maxProfit(vector& prices) { const int size=prices.size(); if(size==0) return 0;
2015-05-09 23:25:30 245
转载 Best Time to Buy and Sell Stock II
class Solution {public: int maxProfit(vector &prices) { if(prices.empty()) return 0; int max=0; int start=prices[0]; int last=prices
2015-05-09 22:50:12 267
转载 Word Break II
class Solution {public: vector wordBreak(string s, unordered_set& wordDict) { const int n=s.length(); vector result(n,false); for(int i=0;i<n;++i) {
2015-05-09 22:22:21 385
原创 Unique Paths II
class Solution {public: int uniquePathsWithObstacles(vector>& obstacleGrid) { const int m=obstacleGrid.size(); const int n=obstacleGrid[0].size(); if(obstacl
2015-05-08 16:01:20 270
原创 Unique Paths
class Solution {public: int uniquePaths(int m, int n) { vector> dp(m,vector(n,1)); //dp[i][j] 表示到第i行,第j列的路径条数,初始化为1的目的在于初始化边框上的数值 for(int i=1;i<m;++i) for(int j=
2015-05-08 15:36:59 260
原创 Decode Ways
class Solution {public: int numDecodings(string s) { const int size=s.size(); vector dp(size+1); //dp[i]代表到第i个符号有多少种解码方式 dp[0]=1; //初始化dp[0]为1,为了计算的需要 i
2015-05-08 11:37:50 237
转载 Best Time to Buy and Sell Stock
class Solution {public: int maxProfit(vector& prices) { const int size=prices.size(); if(size==0) return 0; int curMin=prices[0]; int MaxPro=0;
2015-05-08 10:09:52 249
转载 Maximum Product Subarray
class Solution {public: int maxProduct(vector& nums) { const int size=nums.size(); if(size==0) return 0; int maxLast=nums[0]; int minLast=
2015-05-07 23:03:08 276
转载 House Robber
class Solution {public: int rob(vector& nums) { const int size=nums.size(); int maxRob=INT_MIN; if(size==0) return 0; else if(size==1)
2015-05-07 22:26:22 232
转载 Maximum Subarray
class Solution {public: int maxSubArray(vector& nums) { const int n=nums.size(); int maxSum=0; //每一段的最大值,局部最优 int result=INT_MIN; //全局最优 for(in
2015-05-07 22:02:00 271
转载 Triangle
class Solution {public: int minimumTotal(vector > &triangle) { if(!triangle.size()) return 0; vector dp(triangle.size()); int minT=INT_MAX; dp[0]=tria
2015-05-07 17:33:01 251
转载 3Sum Closest
class Solution {public: int threeSumClosest(vector& nums, int target) { int size=nums.size(); sort(nums.begin(),nums.end()); int mindiff=INT_MAX; int r
2015-05-06 23:04:42 214
转载 4Sum
class Solution {public: vector> fourSum(vector& nums, int target) { int size=nums.size(); vector> result; vector cur; if(size<4) return re
2015-05-06 22:03:12 199
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人