题目的要求:找到权值最大的序列中最长子序列的长度 思路:滑动窗口。利用map存放子序列的权重和,以及该权重对应的最长子序列的长度。如果权重为0,那么保存当前权重及子串长度。然后重开一个窗口,直到遇到 0 或者 退出。 const a = [2, 0, 1, 1, 2] // const str = 'abcd' console.log(a); let len = 0; let left = 0; let right = 0; let weight = 1; const m = new Map(); // 从不为0的第一个数开始 while (a[left] === 0) { ...