
leetcode
文章平均质量分 82
colin_go_go_go
虚心学习 认真思考 努力学习 多写总结 好好总结 有条不紊的来才会快
展开
-
leetcode_Evaluate Reverse Polish Notation
Evaluate the value of an arithmetic expression in Reverse Polish Notation.Valid operators are +, -, *, /. Each operand may be an integer or another expression.Some examples: ["2", "1",原创 2014-01-12 22:57:56 · 677 阅读 · 0 评论 -
Leetcode_Insertion Sort List
心得这题调试了很久,要是笔试十分有可能写错,先做个笔记吧,应该还有更简短的写法题目Sort a linked list using insertion sort.思路1、链表遍历模拟插入排序的两层循环,外层循环控制长度,内层循环控制查找应该插入的位置2、由于需要插入,故需要记录插入位置的前驱,同时特别要注意移动外层循环的指针3、用了一点小技巧,用一个dump节点原创 2014-02-17 15:18:25 · 638 阅读 · 0 评论 -
Leetcode_power(x,n)
题目求x的n次幂思路好吧 ,这题我挂了,痛定思痛啊,要注意的几个地方第一、任意非0数的0次幂是1,(0的0次幂应该是没有意义的,我姑且返回0吧)第二、最后最容易忘记的,是要记得考虑幂为负数的情况 幂的乘法优化很容易想到,就是二分,要求n次幂,若n为偶数,先求n/2时的值,将这个值平方以下就好了,奇数的话可以转化为偶数来求代码class Solution {publ原创 2014-02-28 22:38:16 · 881 阅读 · 0 评论 -
leetcode _Max Points on a Line
这道题交了N遍才过,maxPoints1是O(n^3)的暴力法,枚举不同的两点,确定一条直线,然后对所有点进行点积判断是否共线,共线则累加。超时思路二、枚举一个点,再枚举另一个点,只需记录这两点斜率是否出现过,用map保存这题比较容易出错的是1、两个相同点,是算两次,因此在枚举的时候遇到相同的点时,要记录改点的重复次数2、对于斜率不能表示的直线(两点的x值相同),需要单独记录这些点原创 2014-01-13 23:23:11 · 784 阅读 · 0 评论 -
leetcode_Sort List
题目要求对链表O(nlogn)排序,并只能用常数空间。这道题是1A的,一看这题就是要考链表实现归并排序。归并排序,整体思路(merge_sort)1、找出链表中点,将链表分成两个子链表,这里将用快慢指针的技巧2、对两个链表递归进行归并排序,返回链表头指针(mergelist)3、根据返回的头指针,合并两个链表,递归返回拼接后的头指针测试边界链表为空,或者链表只有一个元素原创 2014-01-13 23:38:46 · 716 阅读 · 0 评论 -
Leetcode_ Binary Tree to Linked List
题目给定二叉树,要求把它变为链型,节点顺序是先序思路代码原创 2014-02-25 08:46:06 · 579 阅读 · 0 评论 -
LeetCode_Path Sum
题目判断二叉树上存不存在一条值为某个数的路径思路 这道题交了两遍才过,其实还是思路的问题,之前竟然用root是不是为NULL来判断叶子节点,寒。后面重写了一遍,要注意的是如果左子树没有找到一个值的话才需要递归二叉树。代码/** * Definition for binary tree * struct TreeNode { * int val; * Tr原创 2014-02-25 09:11:11 · 558 阅读 · 0 评论 -
LeetCode_Path Sum II
题目给定一个二叉树,给定一个值,找和的等于这个值的所有路径思路经典深度优先搜索题,这类题一般都需要一个cur_sum表示当前已经的加和,每递归一层 先加上根节点的值,如果当前节点是叶子节点检测下值是否为所需和,递归结构,先递归左子树,将当前左子节点放入栈,递归完再回溯(删除栈顶),再以同样的方式递归右子树,这题没有1A,忘记考虑空树的情况了代码/** * Definiti原创 2014-02-25 09:00:19 · 531 阅读 · 0 评论 -
LeetCode_nextpermutations
题目求一个排列的下一个排列思路首先我们要弄清楚,什么叫下一个(之前没想通,用康托集合去做,但是康拓集合序前提是元素不重复),距离可以参照这篇文章http://www.cnblogs.com/devymex/archive/2010/08/17/1801122.html全排列的生成算法有很多种,有递归遍例,也有循环移位法等等。但C++/STL中定义的next_原创 2014-03-03 23:21:35 · 575 阅读 · 0 评论