编辑代码

function longestConsecutive(nums: number[]): number {
    let [res, temp, point, index]: number[] = [0, 0, 0, 0];
    const [min, max] = [Math.min(...nums), Math.max(...nums)]
    const map: Map<number, number> = new Map();
    if (nums.length > 0) res = 1
    nums.sort((a, b) => {
        return a - b
    })
    for (let i = 0; i < nums.length; i++) {
        map.set(nums[i], i);
    }

    console.log(nums);

    while (index < nums.length) {
        if (map.get(nums[index] + 1)) {
            index = map.get(nums[index] + 1)!
            temp++
        } else {
            if (temp + 1 > res) {
                res = temp + 1
                temp = 0
            }
            index++
        }
    }

    return res;
};

console.log(longestConsecutive([9,1,-3,2,4,8,3,-1,6,-2,-4,7]))