首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何从数组中删除带有额外关键字的重复项

从数组中删除带有额外关键字的重复项可以通过以下步骤实现:

  1. 遍历数组,使用一个哈希表来记录每个元素的出现次数。
  2. 对于每个元素,检查是否包含额外关键字。如果包含,则将其添加到哈希表中。
  3. 再次遍历数组,对于每个元素,检查其在哈希表中的出现次数。如果出现次数大于1,则表示该元素是重复项。
  4. 将重复项从数组中删除。

以下是一个示例的JavaScript代码实现:

代码语言:txt
复制
function removeDuplicatesWithKeyword(arr, keyword) {
  const countMap = {}; // 哈希表记录元素出现次数

  // 第一次遍历,记录元素出现次数
  for (let i = 0; i < arr.length; i++) {
    const element = arr[i];
    if (element.includes(keyword)) {
      // 如果元素包含额外关键字,则添加到哈希表中
      if (countMap[element]) {
        countMap[element]++;
      } else {
        countMap[element] = 1;
      }
    }
  }

  // 第二次遍历,删除重复项
  for (let i = arr.length - 1; i >= 0; i--) {
    const element = arr[i];
    if (element.includes(keyword) && countMap[element] > 1) {
      arr.splice(i, 1); // 从数组中删除重复项
    }
  }

  return arr;
}

// 示例用法
const array = ["apple", "banana", "apple123", "orange", "banana456", "apple789", "pear"];
const keyword = "apple";
const result = removeDuplicatesWithKeyword(array, keyword);
console.log(result); // 输出: ["apple", "banana", "orange", "banana456", "pear"]

这个方法通过使用哈希表来记录元素出现次数,避免了多次遍历数组的开销。它可以删除数组中带有额外关键字的重复项,并返回处理后的数组。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券