leetcode
文章平均质量分 65
sdadssa1
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
leetcode做题总结,题目Simplify Path 71
题目是Simplify Path这道题思路很简单,就是按照“/”分开然后压栈,遇到特定字符进行处理即可public class Solution { public String simplifyPath(String path) { if(path.length()==0) return null; if(path.l原创 2014-12-28 03:11:34 · 697 阅读 · 0 评论 -
leedcode做题总结, 题目Unique Binary Search TreesI/II95/96
这两道题使用的是递归,一次以每一个节点作为父节点然后对两边进行递归即可,第二题是要返回所有序列,用递归从下向上传回来即可。public class Solution { private int generate(int i, int j){ if(i>=j) return 1; int sum=0; for(in原创 2015-01-08 09:32:37 · 390 阅读 · 0 评论 -
leedcode做题总结,题目Rotate Image 2012/03/17
顺时针90度旋转矩阵,从最外层开始向内一层一层旋转,一条边一条边旋转即可。之前在CC150上做过public void rotate(int[][] matrix) { int n=matrix.length; int j=0; while (n-1-j>0){ int[] tp= new int[n];原创 2014-07-12 01:32:12 · 429 阅读 · 0 评论 -
leedcode做题总结,题目Balanced Binary Tree 2012/10/08
检测平衡二叉树,应该算是很简单的题目了,原创 2014-07-12 21:08:40 · 394 阅读 · 0 评论 -
leedcode做题总结,题目Pascal's Triangle I/II-------2012/10/28
这道题不算难,先取出上一层ran原创 2014-07-10 14:45:16 · 393 阅读 · 0 评论 -
leedcode做题总结,题目Populating Next Right Pointers in Each NodeI/II---------- 2012/10/28
这个题可以用先序递归,每个节点把两个儿子连起来,注意的是每个节点还要把两个子树的每一层连起来,所以我用while来访问子树每一层最边的节点。public void connect(TreeLinkNode root) { if(root!=null){ if(root.left!=null&&root.right!=null){原创 2014-07-09 18:46:36 · 415 阅读 · 0 评论 -
leedcode做题总结,题目Same Tree 2012/09/03
这道题很是简单,但是最近一直在弄字符串链表,没弄树,结果思维定势,一开始想的是用stack或者QUEUE来深度或广度优先历遍后来才回归到最基础的递归历遍,先判是否为空,然后比较节点值,然后递归访问两个节点左child和右child。public boolean isSameTree(TreeNode p, TreeNode q) { if(p==null |原创 2014-07-09 00:00:35 · 519 阅读 · 0 评论 -
leedcode做题总结,题目Single NumberI/II 2013/10/01-02
这两道题差不多,一个INT数组里除了一个INT出现1次,其他出现2(3)次。虽然都AC了但是没有满足题目不使用额外空间的要求,还需改进。思路是用hashmap记录每个INT出现的次数,如果到达2(3)次则删去,最后MAP只剩下一个KV对则为所求。public int singleNumber(int[] A) { HashMap m = new Hash原创 2014-07-08 23:00:26 · 449 阅读 · 0 评论 -
leetcode做题总结,题目Multiply Strings 43
题目是Multiply Strings这道题大整数的乘法,和加法一样,需要按位计算然后加起来即可。但是有一个问题要注意的是这里的乘法积很可能非常大,因此需要用数组来储存。在计算的时候数组元素可以大于9,之后再历遍进位即可。public class Solution { public String multiply(String num1, String num2) {原创 2014-12-28 04:23:01 · 466 阅读 · 0 评论 -
leedcode做题总结, 题目Longest Palindromic Substring 5
题目是求一个字符串的最长回文子串,可以用两种方法,一种是动态规划,用一个矩阵,boolean[i,j] 表示字符串从i-j是否为一个回文串,我用的方法是直接判断class Solution11 { public String longestPalindrome(String input) { int max=0; String res="";原创 2015-01-25 06:46:56 · 474 阅读 · 0 评论 -
leetcode做题总结,题目Find Peak Element 2014/12/04
就是普通的历遍,没什么说的public class Solution { public int findPeakElement(int[] num) { if(num.length==0) return 0; int max = num[0]; int dex=0; for(int i=0;i<nu原创 2014-12-12 10:22:00 · 385 阅读 · 0 评论 -
leedcode做题总结,题目Reorder List 13/11/12
题目很简单,把12345重新排序成15243.原创 2014-07-08 22:25:41 · 589 阅读 · 0 评论 -
leedcode做题总结, 题目Construct Binary Tree from Preorder。。。105/106
这两题主要是用找规律的方法,找出两种序列的关系然后递归构造即可。public class Solution { private TreeNode generate(int i, int j, int m, int n, int[] preorder, int[] inorder){ if(i==j) return new TreeNode(pre原创 2015-01-08 09:20:25 · 439 阅读 · 0 评论 -
leetcode做题总结,题目Longest Substring Without Repeating Characters
题目链接Longest Substring Without Repeating Characters这道题使用了窗口的概念,在有关子字符串的题目中可以考虑,即使用前后两个指针控制一个窗口,窗口里包含的便是这个没有重复字符的子字符串。public class Solution { public int lengthOfLongestSubstring(String s) {原创 2014-12-28 03:02:18 · 387 阅读 · 0 评论 -
leetcode做题总结,题目Anagrams 2012/03/19
这道题是https://oj.leetcode.com/problems/anagrams/题目有点不太清晰,意思是说把有异构的字符串进行归类,然后按照类别依次输出,只有超过两个字符串异构才进行输出。我学到的有把一个String转成char array可以用toCharArray(),但是要注意如果String是“”返回的Array也是空的。还有就是存在容器里的list,array对其进行修改原创 2014-12-22 06:31:29 · 393 阅读 · 0 评论 -
Majority Number I&II
这个题的名字是在lintcode中,在leetcode中的名字是Majority Element,虽然有少许不同,但是主要都是一样的。这个题很简单,但是如果要满足n的时间复杂度和1的空间复杂度则需要摩尔投票法。废话不多说了,直接上代码。I:public class Solution { /** * @param nums: a list of integers原创 2015-08-16 04:35:16 · 367 阅读 · 0 评论 -
leetcode做题总结,题目Count and Say 2012/03/05
这道题比较麻烦,但是其实也没什么技术含量,把每个数字存下来然后从前往后process即可。public class Solution { public String countAndSay(int n) { String begin="1"; String end=begin; while(--n>0){原创 2014-11-29 09:51:33 · 356 阅读 · 0 评论 -
leetcode做题总结,题目Palindrome Number 2012/01/04
题目是判断一个integer是否是回文数,我的做法是转成String来判断,但是不知道String算不算额外空间,如果不让用可以用除法来找到每一位的数字进行判断public class Solution { public boolean isPalindrome(int x) { String y=x+""; for(int i=0, j=y.l原创 2014-11-29 09:41:22 · 464 阅读 · 0 评论 -
leedcode做题总结,题目Two Sum2011-03-13
这是leedcode里最老的一道题,知道两数的和然后c原创 2014-06-09 20:33:52 · 1053 阅读 · 0 评论 -
leedcode做题总结,题目Reverse Words in a String14/03/05
今天做了一道leedcode的题,感觉还好,题目是:原创 2014-06-08 14:53:54 · 721 阅读 · 1 评论 -
leetcode做题总结,题目Length of Last Word 2012/03/27
给一个字符串,然后返回最后一个wo r原创 2014-09-02 05:02:39 · 453 阅读 · 0 评论 -
leetcode做题总结,题目Remove Nth Node From End of List 2012/01/27
删除链表倒数第N的节点,也没什么难度,用两个指针相隔N个节点,然后同时向后移动,一个到末尾另一个就是第N个节点。/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { *原创 2014-11-29 09:31:21 · 424 阅读 · 0 评论 -
leetcode做题总结,回溯法(N-Queens, N-QueensII,Combination SumI&II,wordbreak II, SubsetsI&II)
最近打算对回溯法做一总结,回溯法的思路简单来说就是去试,把问题的可能解变成一棵决策树,然后用递归向下探路,如果走不通就向上回溯,中间可以用条件判断进行剪枝,避免不必要的历遍。首先是回溯法最经典的N皇后问题,思路并不麻烦,从第一行开始依次设一个点为Q,然后向第二行前进,历遍每一个点,如果某个点可行就继续前进。public class Solution { //checking原创 2014-12-14 02:56:23 · 836 阅读 · 0 评论 -
leetcode做题总结,题目Combinations 2012/04/18
像这种一般往下分的我首先想到的就是递归,因为好久没刷题了,不知道DP可不可以做不过要注意的一个点是有时候会遇到List 这种,由于List要具体到一个特定的List,所以在new的时候要用ArrayList,里面的List不能直接具体到某个List.public class Solution { public List> compute(int i,int j, int k原创 2014-11-29 09:34:58 · 490 阅读 · 0 评论 -
leetcode做题总结,题目Merge Two Sorted Lists 2012/03/30
两有序链表归并,归并排序即可原创 2014-07-24 21:39:18 · 412 阅读 · 0 评论 -
leetcode做题总结,题目Valid Sudoku 2012/03/03
数独游戏,横,竖,方框的9个数都不能相同,我的方法是用boolean数组即可。public class Solution { public boolean isValidSudoku(char[][] board) { boolean[] b=new boolean[9]; for(int i=0;i<9;i++){ fo原创 2014-11-29 09:48:04 · 386 阅读 · 0 评论 -
leetcode做题总结,题目Longest Consecutive Sequence 2013/02/13
题目是在一个数组中找最长原创 2014-08-17 06:07:40 · 426 阅读 · 0 评论 -
leetcode做题总结,题目Search a 2D MatrixI/II 2012/04/06
题目是在一个有序的二维矩阵里搜索,ke yi原创 2014-08-14 05:21:34 · 582 阅读 · 0 评论 -
leetcode做题总结,题目First Missing Positive 2012/03/08
这道题一开始把题意理解偏了,我以为是zhao原创 2014-08-01 01:01:15 · 501 阅读 · 0 评论 -
leetcode做题总结,题目Longest Valid Parentheses 2012/02/29
找出最长匹配括号原创 2014-07-30 23:43:34 · 460 阅读 · 0 评论 -
leetcode做题总结,题目Add Two Numbers /Add Binary 2011/11/01&2012/04/02
这两道题差不多,就放在一起总结,思路都是一样,按位原创 2014-08-01 00:42:36 · 394 阅读 · 0 评论 -
leetcode做题总结,题目Validate Binary Search Tree 2012/08/31
判断一个树是否是二叉搜索树,用递归或者非递归中序历遍,如果结果原创 2014-07-27 16:42:31 · 389 阅读 · 0 评论 -
leetcode做题总结,题目Generate Parentheses 2012/02/12
题目是N对括号,让你生成原创 2014-07-26 17:26:54 · 388 阅读 · 0 评论 -
leetcode做题总结,题目Set Matrix Zeroes 2012/04/06
这道题在cc150里见过,如果一个矩阵某个值为零,则将原创 2014-07-24 21:37:29 · 546 阅读 · 1 评论 -
leedcode做题总结,题目Flatten Binary Tree to Linked List 2012/10/14
这个题是把一个二叉树压成一个y原创 2014-07-20 15:01:59 · 399 阅读 · 0 评论 -
leetcode做题总结,题目Copy List with Random Pointer 2013/10/03
这个题目自己一开始没有想出来,复制一个链表容易,但是随机指针需要随机定位节点原创 2014-08-01 01:14:34 · 363 阅读 · 0 评论 -
leetcode做题总结,题目Sort Colors 2012/04/08
这道题虽然外表是颜色排列但是内容是对数字的排序,很简单的merge即可。public class Solution { public void mergsort(int[] A,int i,int j){ if(i<j){ mergsort(A, i,(i+j)/2); mergsort(A, (i+j)/2+1, j);原创 2014-11-29 09:28:27 · 600 阅读 · 1 评论 -
leetcode做题总结,题目Rotate List 2012/03/27
这个题目是链表的循环右移原创 2014-07-27 14:50:59 · 346 阅读 · 0 评论 -
leetcode做题总结,题目Merge k Sorted Lists 2012/02/13
题目是一个list里包含了好多l原创 2014-07-26 16:58:25 · 533 阅读 · 0 评论 -
leedcode做题总结,题目Reverse Integer----- 2011/12/25
这个题是要求把1234编程4321,我的方法是原创 2014-07-21 18:34:47 · 608 阅读 · 1 评论
分享