风尘浪孓

文章 评论 浏览 29

风尘浪孓 2022-05-04 13:57:46

写一个不用flat函数的吧。采用递归解决这个问题
const flat = (arr: (number | any[])[]): number[] => {
return _flat(arr, 0, arr.length - 1)
}

const _flat = (arr: (number | any[])[], l: number, r: number): number[] => {
if (l > r) return []
const first = arr[l]
if (typeof first === 'number') {
return [...new Set(_flat(arr, l + 1, r).concat(first))].sort((a, b) => a - b)
}
return [...new Set([..._flat(first, 0, first.length - 1), ..._flat(arr, l + 1, r)])].sort((a, b) => a - b)
}

第 11 题:将数组扁平化并去除其中重复数据,最终得到一个升序且不重复的数组

更多

推荐作者

櫻之舞

文章 0 评论 0

弥枳

文章 0 评论 0

m2429

文章 0 评论 0

野却迷人

文章 0 评论 0

我怀念的。

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文