解决方案:
1.先用set去重(遍历数组加到set集合)
2.遍历set,拿到随机set里面的一个数,然后先看有没有比他小的,如果没有他小的,就开始进行循环+1操作,然后把原来值+1,然后累计的次数再+1,然后进行比较
import java.util.HashSet; import java.util.Set; class Solution { public int longestConsecutive(int[] nums) { Set<Integer> objects = new HashSet<>(); int count = 0; for (int num : nums) { objects.add(num); } for (Integer object : objects) { int currentNum = object; int currentStreak = 1; if (!objects.contains(object - 1)){ while (objects.contains(currentNum + 1)){ currentNum ++; currentStreak ++ ; } } count = Math.toIntExact(Math.max(count, currentStreak)); } return count; } }