You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何筛选数组中首元素重复次数超过2次的对应子项

实现步骤

  • 第一步:遍历原数组,统计每个子数组首元素的出现次数,存入哈希表中
  • 第二步:再次遍历原数组,筛选出首元素出现次数符合要求的条目即可

代码实现(JavaScript)

const arr = [
  ['a',1],
  ['a',2],
  ['a',4],
  ['b',2],
  ['C',2],
  ['d',2],
  ['e',2],
  ['e',2],
  ['n',2]
]
// 统计首元素出现次数
const countMap = arr.reduce((map, item) => {
  const firstKey = item[0]
  map[firstKey] = (map[firstKey] || 0) + 1
  return map
}, {})
// 筛选:严格匹配"重复次数超过2次"即出现次数≥3,用下面的写法
const result = arr.filter(item => countMap[item[0]] > 2)
// 如果要匹配你的示例结果、e出现2次也保留,对应出现次数≥2,改成以下写法即可
// const result = arr.filter(item => countMap[item[0]] >= 2)
console.log(result)

代码实现(Python)

arr = [
    ['a',1],
    ['a',2],
    ['a',4],
    ['b',2],
    ['C',2],
    ['d',2],
    ['e',2],
    ['e',2],
    ['n',2]
]
# 统计首元素出现次数
count_map = {}
for item in arr:
    key = item[0]
    count_map[key] = count_map.get(key, 0) + 1
# 筛选,需要保留出现2次的就把>2改成>=2
result = [item for item in arr if count_map[item[0]] > 2]
print(result)

内容的提问来源于stack exchange,提问作者شاهین محبی

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 22:54:06