![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
lc算法
shineNEVERLAND
这个作者很懒,什么都没留下…
展开
-
258. Add Digits
class Solution { public: int add(int num) { int each = 0; while(num) { each += num%10; num /=10; } return each; } int ad...原创 2016-03-07 21:53:26 · 178 阅读 · 0 评论 -
Nim Game
【以上来自牛客网】 【总结】 一、这种类型的题,有两种猫腻。一种是 给定N堆硬币(或者石头什么的);另一种是每次最多取k个。 [ 还有一种是每次只能取K1,K2,K3个,这种情况待完善 ] 1.第一种猫腻的情况下,判断第N堆的硬币个数,是否为“非平衡态”。若为“非平衡态”,则“先取者为胜”;若为“平衡态”,则“后取者为胜”。 2.若每次最多只能取K个。判断第N堆的硬币...原创 2016-04-05 17:56:55 · 365 阅读 · 0 评论 -
赛马问题
//参考链接:http://blog.csdn.net/gukesdo/article/details/7583131 题目:一共有25匹马,有一个赛场,赛场有5个赛道,就是说最多同时可以有5匹马一起比赛。假设每匹马都跑的很稳定,不用任何其他工具,只通过马与马之间的比赛,试问,最少得比多少场才能知道跑得最快的5匹马? 【解法一:最基本的解法】(很好理解) 1)分成5组A,B,C,...原创 2016-08-09 16:37:33 · 248 阅读 · 0 评论 -
108. Convert Sorted Array to Binary Search Tree
代码如上。重点解释一下为什么函数参数中vector内存炸穿,vector&不会。 【原因】对象传值复制初始化,引用传值复制初始化引用本身不会复制对象。 之前只是知道,但从来没有实际用的过程中,体会到区别。 另外,关于这个题的另一个问题,结束条件是if(left > right) return NULL; 这里要好好体会一下。原创 2016-09-01 17:05:23 · 156 阅读 · 0 评论 -
generate Parentheses----leetcode
1.和valid parentheses不一样,valid那个题,只需要遍历序列,当遇到序列的左括号,则入栈,遇到序列的右括号查看栈顶元素是否为左括号可以和当前右括号匹配,如果可以,则将这个栈顶元素(左括号)删除;当遍历完序列后,如果栈为空,则序列是有效的,否则序列是无效的。 2.这个题开始以为和华为oj上的火车进站一样,求序列符号的全排列,后来run code了一发发现不是,好惨。找到了一篇文原创 2016-08-31 17:57:35 · 183 阅读 · 0 评论 -
234. countprime
[cpp] view plain copy print? int countPrimes(int n) { int i =0, count=0; for (i=1; i<n; i++) { if (isprime(i)) { count++; ...转载 2016-04-19 23:18:24 · 268 阅读 · 0 评论 -
204. Count Primes
class Solution { public: bool judge(int n) { if(n < 2) return false; if(n == 2) return true; if(n % 2 == 0) return false; ...原创 2016-05-14 14:18:55 · 234 阅读 · 0 评论 -
242. Valid Anagram
class Solution { public: void count(string str, vector& letters) { for(long long i = 0;i { switch(str[i] - 'a') { case 0:原创 2016-03-12 00:33:53 · 284 阅读 · 0 评论 -
206. Reverse Linked List
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ class Solution { public: ListNode* re...原创 2016-03-08 21:59:34 · 171 阅读 · 0 评论 -
【遗留----2016.03.07】
1.链表、树的基本操作 2.Add Digits(不用递归和循环的方法:数学) 3.Same Tree(树的层次遍历和层次建立) 4.链表的建立原创 2016-03-07 22:38:16 · 194 阅读 · 0 评论 -
这两天做leetcode的心得
就做了两天,但还是有一点点收获。 1.对于特殊用例的判断。例如0,1,等及其组合啊,还有节点是否为空等。 2.这个是Leetcode,考的是算法,可以把自己的思路大致在纸上整理一下,再开始动手敲代码。 3.数据结构的熟悉:链表、树、图等的一些基本操作。还有就是设计到一些数学知识。 还有些题目有遗留问题,有待解决。原创 2016-03-07 22:36:50 · 369 阅读 · 0 评论 -
104. Maximum Depth of Binary Tree
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */ clas...原创 2016-03-07 22:32:37 · 176 阅读 · 0 评论 -
263. Ugly Number
class Solution { public: bool isUgly(int num) { if( num return false; if(1 == num || 2 == num || 3 == num || 5 == num) return true; while(原创 2016-03-07 22:30:14 · 168 阅读 · 0 评论 -
144. Binary Tree Preorder Traversal
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */ clas...原创 2016-03-07 22:28:07 · 169 阅读 · 0 评论 -
100. Same Tree
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * };原创 2016-03-07 22:06:35 · 198 阅读 · 0 评论 -
283. Move Zeroes
class Solution { public: void moveZeroes(vector<int>& nums) { int size = (int)(nums.size()); if( 0 == size || 1 == size ) return ; int tmp = 0; ...原创 2016-03-07 21:58:25 · 182 阅读 · 0 评论 -
237. Delete Node in a Linked List
class Solution { public: void deleteNode(ListNode* node) { ListNode* p = node; if( NULL == p || NULL == p->next ) return ; p->val = (p->next)->val; ...原创 2016-03-07 22:19:51 · 197 阅读 · 0 评论