原创 LeetCode-Swap Nodes in Pairs
#include <iostream> using namespace std; struct ListNode { int val; ListNode *next; }; void Swap(int *a,int *b
原创 LeetCode-Remove Duplicates from Sorted Array
#include <iostream> using namespace std; int removeDuplicates(int A[], int n)//雙指針思想,但還是wa了好多次,注意邊界 { if(n>=1)
原创 LeetCode-Convert Sorted Array to Binary Search Tree
#include <iostream> #include <vector> using namespace std; struct TreeNode { int val; TreeNode* left; Tree
原创 一點感想
現在大三了,大一大二本想練習acm,但是學校沒有社團,宿舍的同學都在忙於上課的作業和電腦遊戲,讓我有一點小失望,不過自己學習一些acm的算法不會有壞處,反而我很喜歡acm,每天如果只是看看微博,刷刷新聞,會很無聊,還是在一
原创 LeetCode-Sort Colors
class Solution { public: void sortColors(int Array[], int length) { if(Array==NULL||length<=0) retu
原创 LeetCode-Search in Rotated Sorted Array
//爭取一次過int search(int A[], int n, int target) { if(A==0 || n==0) return -1; int left = 0; int
原创 LeetCode-Triangle
int minimumTotal(vector<vector<int> > &triangle) { int n=triangle.size(); for(int layer=n-2; layer>=0; --
原创 LeetCode-Path Sum II
class Solution { public: vector<vector<int> > pathSum(TreeNode *root, int sum) { vector<vector<int> >vec;
原创 LeetCode-Merge Two Sorted Lists
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(i
原创 位圖法
註明: 左移n位就是乘以2的n次方,右移n位就是除以2的n次方 解析本例中的void set(int i) { a[i>>SHIFT] |= (1<<(i & MASK)); } 1) i>>SHIFT: 其中SH
原创 LeetCode-Remove Duplicates from Sorted Array II
class Solution { public: int Duplicate(int i,int A[]) { int count=1; for(int j=i+1;A[i]==A[j];j++) {
原创 LeetCode-Valid Sudoku
//分別檢查列,行,所在的塊,看了別人的代碼class Solution { public: bool isValidSudoku(vector<vector<char> > &board) {
原创 LeetCode-Linked List Cycle
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(i
原创 位圖法
註明: 左移n位就是乘以2的n次方,右移n位就是除以2的n次方 解析本例中的void set(int i) { a[i>>SHIFT] |= (1<<(i & MASK)); } 1) i>>SHIFT: 其中SH
原创 LeetCode-Triangle
int minimumTotal(vector<vector<int> > &triangle) { int n=triangle.size(); for(int layer=n-2; layer>=0; --