
Java
文章平均质量分 60
勤奋的重剑
这个作者很懒,什么都没留下…
展开
-
[LeetCode] Number of 1 Bits
下面这种是讨论中高票,我觉得不错的public static int hammingWeight(int n) { int ones = 0; while(n!=0) { ones = ones + (n & 1); n = n>>>1; } return ones; }再贴上我这种偷懒的方法public class Solution {原创 2016-08-27 16:25:02 · 379 阅读 · 0 评论 -
[LeetCode]Maximum Product of Word Lengths(Java)
我自己用暴力解法发现不能通过,其中有一个测试用例使用的单个字符串非常长我的代码如下public class Solution { public int maxProduct(String[] words) { int max = 0; Arrays.sort(words, new Comparator(){ public in原创 2017-01-06 14:58:16 · 398 阅读 · 0 评论 -
[LeetCode] Sort Characters By Frequency(Java)
我的思想是list数组按顺序构造,讨论中高票使用数组实现,效果更好我的代码public class Solution { public String frequencySort(String s) { int length = s.length(); List[] sortList = new LinkedList[length+1];原创 2016-12-26 19:29:44 · 1010 阅读 · 0 评论 -
[LeetCode]Top K Frequent Elements(Java)
记一种别人写的代码,和我的代码我的代码如下:public class Solution { public List topKFrequent(int[] nums, int k) { int length = nums.length; List result = new ArrayList(); Map hash = new Hash原创 2016-12-22 21:59:05 · 344 阅读 · 0 评论 -
[LeetCode]Repeated Substring Pattern(Java)
这道题我的方法太暴力,人家解得巧妙不已,我的方法如下:public class Solution { public boolean repeatedSubstringPattern(String str) { int length = str.length() / 2 +1; for(int i = 1;i<length;i++){原创 2016-12-15 17:29:04 · 547 阅读 · 0 评论 -
[LeetCode]Minimum Moves to Equal Array Elements II(Java)
这道题暴力解,二分查找都不对,只能采取先排序,按排序得到结果从小到大依次按当前尝试值和之前尝试值得之差分别计算比当前值小和比当前值大的数的个数计算。上代码:public class Solution { public int minMoves2(int[] nums) { int length = nums.length; Arrays.sort(n原创 2016-12-15 15:56:17 · 322 阅读 · 0 评论 -
[LeetCode] House Robber(java)
这道题是一道动态规划的题,就是找到当前位置之前不相邻的最大值和当前值相加与相邻的值取最大值就是当前位置能取到的最大值。讨论的答案比我自己写的质量好,如下public int rob(int[] nums) { if(nums.length==0) return 0; if(nums.length==1) return nums[0]; //Initialize原创 2016-10-05 17:44:17 · 253 阅读 · 0 评论 -
[Java ]学习技巧积累篇
1.将字符串转换为字符串数组的方法String string = "a,b,c";String [] stringArr= string.split(",");原创 2016-08-23 20:17:16 · 222 阅读 · 0 评论 -
[LeetCode]Convert a Number to Hexadecimal(Java)
这道题看似简单实际上难点在负数的补码上,由于java没有无符号整数所以我采用的方法是将负数按照2的31次方去补码然后检测位数字符串长度是8位的时候将高位加8上代码public class Solution { public String toHex(int num) { String hex = ""; int toHexNum = num;原创 2016-09-29 11:39:37 · 577 阅读 · 0 评论 -
[LeetCode] Submission Details(Java)
这道题我的解法时间复杂度稍高一些public class Solution { public List> generate(int numRows) { List list = new ArrayList(Arrays.asList(1)); List lastList = new ArrayList(); List> result =原创 2016-10-11 14:51:44 · 269 阅读 · 0 评论 -
[LeetCode]Maximum Subarray(Java)
典型的动态规划题,这道题我采用从后向前的思想找最大值动态规划方程式就是代码的为代码public class Solution { public int maxSubArray(int[] nums) { int[] addA = new int[nums.length]; int max = 0,i = nums.length - 1,temp = 0;原创 2016-08-30 20:33:39 · 331 阅读 · 0 评论 -
[LeetCode] Best Time to Buy and Sell Stock(Java)
这道题是一道动态规划题基本可以变形为找每个当前元素之前出现的最小值,然后最小值与当前值做差从而求出最佳时间我的代码如下public class Solution { public int maxProfit(int[] prices) { if(prices.length == 0) return 0; int[] min原创 2016-08-30 20:02:22 · 212 阅读 · 0 评论 -
[LeetCode]Climbing Stairs(Java)
昨天怒刷n到链表题,感觉简单题没什么多余技巧,固没有总结这道题非常常见,做了好多遍了已经,最简单的动态规划一种斐波纳切数列变种题public class Solution { public int climbStairs(int n) { if(n == 1) return 1; else if(n == 2)原创 2016-08-30 19:09:27 · 278 阅读 · 0 评论 -
[LeetCode]Remove Duplicates from Sorted List(Java)
这个题基本没什么机灵可以抖public class Solution { public ListNode deleteDuplicates(ListNode head) { ListNode p = head; ListNode q = null; while(p!=null){ q = p.next;原创 2016-08-29 19:37:14 · 296 阅读 · 0 评论 -
[LeetCode]Happy Number(Java)
先贴我自己的代码递归的思想,把用过的数都记下来public class Solution { public boolean isHappy(int n) { if(n == 1){ return true; }else{ List stack = new ArrayList(); s原创 2016-08-27 19:58:21 · 406 阅读 · 0 评论 -
[LeetCode]Find All Numbers Disappeared in an Array(Java)
这道题我的解法比较单一,采用hash数组的方法,discuss高票的方法采用标记负数的方法,对出现数对应的位置则表记为负数。我的答案public class Solution { public List findDisappearedNumbers(int[] nums) { int length = nums.length; int[] h原创 2016-12-20 21:19:02 · 1247 阅读 · 1 评论