首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >算法-姓名去重

算法-姓名去重

作者头像
OBKoro1
发布于 2020-10-27 03:52:33
发布于 2020-10-27 03:52:33
1.1K00
代码可运行
举报
运行总次数:0
代码可运行

描述

给一串名字,将他们去重之后返回。两个名字重复是说在忽略大小写的情况下是一样的。

说明:

你可以假设名字只包含大小写字母和空格。

样例:

给出:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[
  "James",
  "james",
  "Bill Gates",
  "bill Gates",
  "Hello World",
  "HELLO WORLD",
  "Helloworld"
]

返回:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
[
  "james",
  "bill gates",
  "hello world",
  "helloworld"
]

这题很简单,自己想一下!

这题很简单,自己想一下!

这题很简单,自己想一下!


题目分析:

  • 思路就是:去重和转小写

code:

题目基本就像下面这样解了,其他的不过是循环的方法,去重的方法不同,事实上都大同小异。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
    const nameDeduplication = names => {
        names.forEach((value, index) => {
            names[index] = value.toLowerCase(); // 全部转小写
        });
        return [...new Set(names)]; // 去重
    }

再讲一个坑吧:

题目描述的时候说是输出是这样的:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
["james", "bill gates", "hello world", "helloworld"]

当我把代码提交之后,告诉我,期望答案是这样的:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
["bill gates", "hello world", "helloworld", "james"]

一般来说不会这么坑:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
return [...new Set(names)].sort(); // 我在后面加了一个sort方法就符合他们的预期答案了。。

题目比较简单,就不放代码(上面就是)了。

github 算法仓库地址

2018.8.16

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-08-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 OBKoro1前端进阶积累 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验