- 博客(23)
- 资源 (1)
- 收藏
- 关注
原创 c++ hash函数
std::hashtemplate struct hash;Unary function object class that defines the default hash function used by the standard library.一元函数Member functionsoperator()Returns a hash value
2015-02-12 14:46:39
14233
转载 char * 与 string 类型相互转换方法
1:对于C风格的字符串比如char*,char str[],转换为 string char * 和char str[]类型可以直接转换为string 类型; 即,在char * chstr, char arstr[] string str=chstr
2015-02-12 13:59:03
1118
转载 int与string互转
int转string(注:itoa不是标准函数,OJ平台可能不接受)int n = 10;char temp[32];sprintf(temp, "%d", n);//long long 格式化 %lldstring str;str = temp;或者string(temp) string转intstring str = "test";int
2014-12-16 21:47:25
507
原创 Longest Valid Parentheses,二维动态规划、一维动态规划、stack
一、二维动态规划int longestValidParentheses(string s) { int len=s.length(),maxLen=0; bool valid[len][len]; //valid[i][j]表示s[i]...s[j]是否是有效的 memset(valid,false,sizeof(valid));
2014-12-10 10:31:34
1289
原创 Sqrt(x) ,二分法,牛顿迭代法
一、二分法int sqrt(int n) { int left=0,right=n; while(left long long mid=(left+right)>>1; //mid必须为long long,否则设置temp为long long不管用 long long temp=mid*mid;
2014-12-09 19:11:56
575
原创 Divide Two Integers
int divide(int dividend, int divisor) { long long a = llabs(dividend); long long b = llabs(divisor); long long ans = 0; while (a >= b) { int shift
2014-12-07 22:48:45
449
原创 pow(x, n),有时递归的时候要注意用变量保存中间结果
double pow(double x, int n) { if(n==0) return 1; else if(n==1) return x; else if(x==0) return 0; if(n
2014-12-07 15:36:12
986
原创 Merge k Sorted Lists ,优先级队列(堆)的使用
struct cmp{ bool operator() (ListNode *p,ListNode *q){ return p->val>q->val; //> 小根堆 } }; ListNode *mergeKLists(vector &li
2014-12-07 15:18:28
670
原创 Permutations II stl next_permutation的用法
vectorint> > permuteUnique(vectorint> &num) { vectorint> > ret; sort(num.begin(), num.end()); ret.push_back(num); while(next_permutation(num.begin(), num.en
2014-11-18 15:14:57
447
转载 二维vector初始化
定义二维vectorvector > vec(m ,vector(n)); //m*n的二维vector初始化二维vectorvector > vec(m ,vector(n,0)); //m*n的二维vector,所有元素初始化为0
2014-11-17 19:54:20
889
原创 Word Break II
和上一题的思路基本一致,class Solution {public: void changeOrder(string& str){ int i=0,j=0; for(;i if(str[i]==' '){ reverse(&str[j],&str[i]);
2014-10-30 18:00:15
579
原创 Word Break ,dp
bool wordBreak(string s, unordered_set &dict) { if(s.empty()||dict.empty()) return false; int len=s.length(); bool flag[len]; memset(flag,false,sizeof(
2014-10-30 11:18:17
457
原创 Symmetric Tree ,bfs
标签说是class Solution {public: bool isLevelSym(vector arr){ if(arr.empty()||arr.size()==1) return true; if(arr.size()%2==1) return false; boo
2014-10-23 10:07:56
592
原创 一些细节
假如有个struct对象struct point{ int x,y; point(int a,int b):x(a),y(b){} };
2014-10-21 12:26:53
476
原创 Surrounded Regions ,BFS
从外面往 class Solution { struct point{ int x,y; point(int a,int b):x(a),y(b){} };public: void solve(vector> &board) { if(board.empty()||board.size()==0||boar
2014-10-21 12:20:42
407
原创 Binary Tree Zigzag Level Order Traversal,bfs,层序遍历
class Solution {public: vector > zigzagLevelOrder(TreeNode *root) { vector> res; vector oneRes; if(root==NULL) return res; queue q
2014-10-21 10:41:33
503
原创 Clone Graph,bfs,map
UndirectedGraphNode *cloneGraph(UndirectedGraphNode *node) { if(node==NULL) return NULL; UndirectedGraphNode *h,*p,*q; queue queue; map mp; h=
2014-10-19 16:35:00
390
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人