1. var longestConsecutive = function (nums) {
    2. let map = {},
    3. maxCount = 0;
    4. nums = new Set(nums);
    5. for (let value of nums) {
    6. // 从最小的开始查找
    7. // 从没有比自己小1的数开始查找连续序列
    8. // 这样可以单向处理
    9. if (nums.has(value - 1)) continue;
    10. let curr = value;
    11. // 开始逐步生长
    12. while (nums.has(curr + 1)) {
    13. nums.delete(curr + 1);
    14. curr++;
    15. }
    16. maxCount = Math.max(maxCount, curr - value + 1);
    17. }
    18. // console.log(nums);
    19. return maxCount;
    20. };