leetcode:Longest Common Prefix

还以为理解题意理解错了。。太简单了吧。。。就是对每个字符串的当前位比较。 public class Solution {     public String longestCommonPrefix(String[] strs) {         int n=strs.length;   ...

2014-02-28 15:20:05

阅读数:338

评论数:0

leetcode:Roman to Integer

注意优先看9**和4** public class Solution {     public int romanToInt(String s) {         int rst=0;         int i,n;         char[] ca=s.toCharArray();  ...

2014-02-28 10:33:48

阅读数:437

评论数:0

leetcode:Generate Parentheses

动归, s[n]=( s[j] )+s[n-j-1]; 这里注意一下ArrayList的用法,动态数组                  ArrayList[] s=new ArrayList[n+1];         int i,j,k,m;         for(i=0;i   ...

2014-02-28 10:14:49

阅读数:309

评论数:0

leetcode:Integer to Roman

代码略冗长。算法就是模拟,每次减一个5x,x是当前的位数,减到0为止。 public class Solution {     public String intToRoman(int num) {          String rst="";        ...

2014-02-24 17:01:16

阅读数:305

评论数:0

leetcode:Container With Most Water

这道题首先的思路是:设当前第i个直线为矮边界,找离i最远的比i高的边界,就构成以i为矮边界的容器。这是O(n^2)的算法,然后超时了。 O(n^2)超时的话,要么分治,要么贪心。 果然有贪心算法:从两边开始,将矮的一边往里推,直到i==i,记录每次的容器大小,是O(n)的算法。     ...

2014-02-24 16:36:20

阅读数:356

评论数:0

nachos3.4编译可能会遇到的问题

1.没有gmake 进行Nachos整体编译安装时运行如下指令: ~/nachos-3.4/code$ make 这个时候会出现 cd threads; gmake depend /bin/sh: 1: gmake: not found make: ...

2014-02-24 09:51:30

阅读数:1833

评论数:0

leetcode:Regular Expression Matching

这道题做了N久,主要是边界条件太麻烦了,老是有小问题,最后看了下别人的代码才改对。 用递归:例如 aaaa和ab*a*a,不知道中间那个a*要吃掉多少个a,所以只能把所有的可能都尝试一遍。 要判断正则表达式p=0;p=1; p>1&&p[1]=='*';p>1&am...

2014-02-24 09:47:24

阅读数:454

评论数:0

leetcode:Palindrome Number

不能用字符串,因为不能用额外空间,那么久一位一位的造出倒过来的数再比较一下。 因为有越界问题,所以用long。 public class Solution {     public boolean isPalindrome(int x) {         if(x           ...

2014-02-23 15:51:22

阅读数:285

评论数:0

leetcode:String to Integer (atoi)

这道题做得很烦,一直没明白题意 乱七八糟的。 要用long来存储最后的结果,不然会越界。 public class Solution { public int atoi(String str) {   long rst;        int n=str.length();     ...

2014-02-22 22:09:15

阅读数:303

评论数:0

leetcode: Reverse Integer

主要问题: -100->-1 0->0 这两种边界情况 public class Solution {       public static int reverse(int x) {           if(x==0)     return 0;      ...

2014-02-22 21:07:19

阅读数:305

评论数:0

leetcode:ZigZag Conversion

这道题麻烦在于理解题意:要把字符串摆成N字型。 解法就是把一维的数组映射到一个二维坐标轴中,这个映射是一一映射. 算出每个s[i]对应的坐标轴[x,y]然后把y=0,1,2...nRows-1的字幕填入结果即可。 直接用rst+=ca[i]会超时,可见String的+还是一个比较费时的操作。...

2014-02-21 16:55:42

阅读数:314

评论数:0

leetcode:Longest Palindromic Substring

回文数 用core[i]表示以i为"核"的最长回文序列 core1[i]是单核回文,例如bacab,是以c为单核 core2[i]是双核回文,例如baccab,是以cc为双核。 代码写得比较冗长,思想就是,当前回文序列为s[i,j],那么只需要看s[i-1]==s[j+...

2014-02-21 15:54:19

阅读数:301

评论数:0

leetcode:Add Two Numbers

链表形式的大整数加法,这道题主要考察一下关于链表的操作,比较简单。 注意,java的“=”传递的是引用; /**  * Definition for singly-linked list.  * public class ListNode {  *     int val;  *     Li...

2014-02-20 22:06:37

阅读数:335

评论数:0

leetcode: Longest Substring Without Repeating Characters

动规:f[i]表示以第i个字符结尾的最长无重复子串长度。 f[i]=min(len,f[i-1]+1) 其中len是上一个与s[i]相同的字符到i的距离,例如abca,i=3,s[i]='a',那么len=3-0=3,。 边界条件是n=0的情况。 public class Solu...

2014-02-20 10:20:09

阅读数:330

评论数:0

leetcode:Median of Two Sorted Arrays

要求时间是log(m+n)。递归实现。 所以用找第K大数的方法实现。 需要注意的边界条件是m 还有奇偶数的区别。 技巧是始终保证A数组比B数组的规模小。 public class Solution {     public double findMedianSortedArrays(int A...

2014-02-19 23:14:13

阅读数:354

评论数:0

leetcode:Two Sum

这道题不排序,用n方的算法算会超时。 首先用Array.sort()排序,因为要返回原来的数组下标,所以原来的数组不能丢。 注意相同元素[0,4,2,0] target=0这种情况的处理,结果应该是两个0 public class Solution {     public int...

2014-02-19 17:26:15

阅读数:323

评论数:0

leetcode: Evaluate Reverse Polish Notation

这个问题用栈解决: 注意的问题是1.题干中给出的是整数除法,所以都用整数                         2.栈的指针的加减                         3.java的string,==是比较的内存地址是否相同,.equals()才是比较内容;Intege...

2014-02-18 21:48:46

阅读数:303

评论数:0

leetcode:【Max Points on a Line】

Given n points on a 2D plane, find the maximum number of points that lie on the same straight line. 这道题考虑用如下表达式表达直线: point:(a0,b0), (a1,b1),  li...

2014-02-18 16:26:25

阅读数:250

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭