leetcode
文章平均质量分 59
by_木木夕
加油加油加油!!!
展开
-
leetcode12 Integer to Roman
这个题目是把1~3999之间的整数转换为罗马数字。首先列举一下几个基本的罗马数字,1---I,5---V,10---X,50---L,100---C,500---D,1000---M。其他的罗马数字都是由这几个组成的。一个较小的单位连在较大单位前面,表示后面的减去前面的,比如CM即为900,XL即为40。我自己写了一个方法,但是比较笨拙,如下所示: 在网上看了看别人的代码,写的都很好,而原创 2015-01-27 19:47:13 · 569 阅读 · 0 评论 -
leetcode13 Roman to Integer
这个题目是把罗马数字转换为整数,比如输入字符串 MCMLXXXIV,输出为整数1984。观测罗马数字的规律,我们得到,其实可以直接相加每个字符代表的整数即可,比如CLIII这个罗马数字对应的整数即为100+50+1+1+1=153。但是,若是两个字符代表一个数字时,我们就需要注意了,比如IV即为5-1=4。因此,我们得到规律,没读入字符串的一个字符,都将它与之后一个字符代表的数字比较,如果前者较小原创 2015-01-27 19:56:13 · 456 阅读 · 0 评论 -
leetcode1 twosum
看见题目时我直接想到了两层for循环,实现方法如下: public int[] twoSum(int[] numbers, int target) { int indexs[]=new int[2]; for(int i=0;i<numbers.length-1;i++){ for(int j=i+1;j<numbe原创 2015-01-09 16:51:09 · 332 阅读 · 0 评论 -
leetcode2 add two numbers
题目为把两个非负整数逆序存储在链表中,求和并返回一个链表。例如:234+126=360,在这个题目中即为 输入:4-->3-->2 6-->2-->1 输出:0-->6-->3 public class AddTwoNumbers { public static void main(String[] args) { ListNode l1=new ListNode(4)原创 2015-01-11 20:31:47 · 589 阅读 · 0 评论 -
leetcode5 Longest Palindromic Substring
求一个字符串的最长回文子串。回文子串分为两种,一种是aba型的,一种是abba型的,因此两种情况都有考虑到。用一个循环,对字符串中的每一个字符作为中心进行判断,并记录下每个循环后的最长子串。时间复杂度为O(n*n) 之前写了一个程序可以运行,但是在leetcode中运行超时了。下面的是修改别人的程序,很精简。 public class LongestPalindromicSubstring原创 2015-01-13 16:06:05 · 454 阅读 · 0 评论 -
leetcode6 Zigzag Conversion
题目要求: The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibility) P A H N A原创 2015-01-13 17:34:07 · 537 阅读 · 0 评论 -
leetcode3 Longest substring whitout repeat characters
求字符串中的最长无重复子串的长度,例如"abcabcbb",最长无重复子串为"abc",长度为3。因为要求无重复,因此想到要用HashMap来保存,因为HashMap的键值不能重复。将要存入的字符作为key,字符在字符串中的下标作为value,如果map中已经存有该字符,则删掉该字符以及字符串中该字符之前的所有字符,然后再存入。例如字符串为"abcbd",如已存入abc,现在要存b,则删掉ab,存原创 2015-01-12 10:46:02 · 416 阅读 · 0 评论 -
leetcode4 Median of two sorted arrays
找到两个已排序数组的中间值,如输入{2,3,5},{4,6},输出4,若输入{2,3,5},{4,6,8},则输出4.5。因为是两个已排序数组,我想到的是用归并排序的思想,排序后数组中间的那个数,或中间两个数的平均数即为所求的median。 public class MedianOfSortedArrays { public static void main(String[] args)原创 2015-01-12 16:09:35 · 418 阅读 · 0 评论 -
leetcode7 Reverse Integer
题目要求,输入一个整型数,输出反转后的数。例如:-123,反转后为-321。应该考虑到输入int型的数反转后超过int最大值的情况。 public class ReverseInteger { public static void main(String[] args) { int x=-123; ReverseInteger ri=new ReverseInteger();原创 2015-01-14 21:27:04 · 429 阅读 · 0 评论