1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | public class Solution { public int longestConsecutive(int[] nums) { HashSet<Integer> lookup = new HashSet<Integer>(); for (int i = 0; i < nums.length; i++){ lookup.add(nums[i]); } int max = 0; for (int i = 0; i < nums.length && lookup.size() != 0; i++){ if (lookup.contains(nums[i])){ int localMax = 1; int startingPoint = nums[i]; int temp = startingPoint+1; while (lookup.contains(temp)){ lookup.remove(temp++); localMax++; } temp = startingPoint-1; while (lookup.contains(temp)){ lookup.remove(temp--); localMax++; } max = Math.max(localMax, max); } } return max; } } |
Sunday, November 22, 2015
[leetcode] Longest Consecutive Sequence
上年被google问到。。结果呆住了,,其实还好啦
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment