
LeetCode
文章平均质量分 75
浩south
这个作者很懒,什么都没留下…
展开
-
LeetCode--add 2 number--结构体和单链表
(一)malloc与结构体vs类和new 首先,因为c语言不是面向对象的,所以c语言中没有new这个操作,在c++中可以用new,但是其实c语言中的结构体加malloc实现的效果和c++中的类和new实现的是一样的。 首先看看c语言结构体的定义:struct ListNode { int val; struct ListNode *next;};//定义结构体变量str...原创 2018-04-22 20:46:59 · 564 阅读 · 0 评论 -
LeetCode 205. Isomorphic Strings HashMap的应用
第一种想法是如果两个字符串中包含的不重复的字符的数量相等就返回true,否则返回false,看来还是我太天真了,像abb,aab这种就不满足情况。 然后又想到一种方法就是逐个比较字符串的字符,如果不相等的话,就让t字符串中的这个字符全部替换为s字符串中的字符,然后如果在之后的比较中,如果这个被替换的字符再次出现的话,判断是否和s字符串的当前字符相等,如果不相等,那肯定就返回false...原创 2018-06-16 18:52:14 · 235 阅读 · 0 评论 -
Leetcode-38. Count and Say(c语言玩转字符串)
对于只会c的我这道题把我折磨的欲仙欲死,不过通过这道题,加深了c语言对字符串一些操作的理解,也算是功德圆满。下面是解法;#define maxn 10001char s[maxn], t[maxn];char* countAndSay(int n) { strcpy(s, "1"); strcpy(t, ""); int cnt = 1; c...转载 2018-06-02 00:10:35 · 427 阅读 · 0 评论 -
LeetCode——189.House Robber 动态规划,递归,跨函数变量调用
这道题是一道动态规划的问题,对于动态问题的求解,经过我几天的探索,发现一般可以沿着两条思路走,一种是用到递归加数组来求解,另一种就是根据状态转换方程来求解。 递归 对于这个问题,可以理解为在任意一个房子的时候,他能所拿到的最多的钱就是max(偷这个房子=在第n-2个房子的时候钱的最大值+第n个房子的钱,只要第n-1个房子没偷就行),不偷这个房子(这个时候钱的最大值等于在第n-1个房子...原创 2018-06-15 09:43:52 · 437 阅读 · 0 评论 -
LeetCode-20. Valid Parentheses--栈的使用
这个问题太适合用栈来解决了,我一看到这个题目的时候想到了栈,但是以往用栈得写一个结构体,结果是我学的太死板了。bool isValid(char* s) { char stack[1000000]; int top=-1; int len=0; while(s[len]) { if (s[len]==')') {...转载 2018-05-31 21:22:13 · 113 阅读 · 0 评论 -
Leetcode---189. Rotate Array
int gcd(int n,int m){ if(m==0) return n; return gcd(m,n%m);}void rotate(int* nums, int numsSize, int k) { int start,current,tmp,next,l; //右移转化为左移 if(k>numsSize) k=numsSize-k%n...原创 2018-06-13 21:38:44 · 139 阅读 · 0 评论 -
LeetCode-Binary Tree Level Order Traversal II-搞定指向指针的指针和malloc的用法
对于这个题目,其实就是二叉树的按层遍历,然后将按层遍历的结果倒序存放而已,正好复习一下二叉树的按层遍历。void BinTree_Level(ChainBinTree *bt,void (*oper)(ChainBinTree *p)){ ChainBinTree *p; ChainBinTree *q[QUEUE_MAXSIZE]; int head,tail=0; if(...原创 2018-06-05 18:59:19 · 377 阅读 · 0 评论 -
Leetcode-Climbing Stairs-DP problem
int climbStairs(int n) { int s; if(n==1){ return 1; }else if(n==2){ return 2; }else{ return s=climbStairs(n-1)+climbStairs(n-2); } } 这种问题很容易让人想到递归,但...原创 2018-06-03 00:32:54 · 126 阅读 · 0 评论 -
Leetcode-67. Add Binary-位运算,三目运算,异或运算
这道题如果把字符串里的字符转化为int型的话就是一个全加器了!!!!!!!!!!!!! 解法char* addBinary(char* a, char* b) { int la = strlen(a); int lb = strlen(b); int lr = la > lb ? la : lb; int carry = 0; c...原创 2018-06-02 20:32:34 · 343 阅读 · 0 评论 -
thinkphp根据日期换算星期几
<?php header("Content-type: text/html; charset=utf-8"); //获取星期方法 function get_week($date){ //强制转换日期格式 $date_str=date('Y-m-d',strtotime($date)); //封装成数组 $arr...转载 2018-05-04 21:50:22 · 1370 阅读 · 0 评论 -
3-Longest Substring Without Repeating Characters--朴素解法
首先申明,这是一种非常非常非常朴素的方法。。。。。 int lengthOfLongestSubstring(char* s){ int len=strlen(s); int max=-1; int tmp=0; if(len==0){ return 0; } for(int i=0;i<len;i++){ /...原创 2018-04-24 18:36:28 · 145 阅读 · 0 评论 -
LeetCode--7. Reverse Integer--判断整数溢出
(一)代码int reverse(int x) { if(x == 0) return x; int ret = 0; while(x!=0) { if(ret > 2147483647/10 || ret <-2147483647/10) return 0; ret = ret*10 + ...原创 2018-04-23 11:10:25 · 405 阅读 · 0 评论