首页 > web前端 > js教程 > Codewars - 找到丢失的字母

Codewars - 找到丢失的字母

Linda Hamilton
发布: 2025-01-07 23:59:44
原创
920 人浏览过

问候。

Codewars - Find the missing letter

我在本系列中发布了 Codewars 挑战和我的思考过程。我尽可能使用 JS 和 Node 18。只是为了清楚起见,我正在合理使用它们。

对于下一个练习,我们有一个有序的升序字母数组,但中间某处缺少一个字母:
['a','b','c','d','f']
['O','Q','R','S']

首先,我们需要知道字母在Unicode中都有对应的数值。因此,我们需要能够将字母转换为数字的函数,反之亦然。

让我们尝试一些 JS 函数,看看它们的作用:

function findMissingLetter(array)
{
  return [array[3].charCodeAt(),array[4].charCodeAt()];
}

// the array is ['a','b','c','d','f']
// it expects 'e'
// this function returns [ 100, 102 ]
登录后复制

我们找到了第一个重要的拼图。现在我们需要围绕它创建一个解决方案。为此,我们可以使用一些东西来遍历数组,寻找异常:

let counter = 0;
  while (array[counter].charCodeAt() + 1 == array[counter + 1].charCodeAt()
        && counter < array.length)
  {
    counter++;
  }
登录后复制

然后,我们需要找到实际丢失的字母:

let letter = String.fromCharCode(array[counter].charCodeAt() + 1)
登录后复制

组装所有东西:

function findMissingLetter(array)
{
  let counter = 0;
  while (array[counter].charCodeAt() + 1 == array[counter + 1].charCodeAt()
        && counter < array.length)
  {
    counter++;
  }
  let letter = String.fromCharCode(array[counter].charCodeAt() + 1)
  return letter;
}
登录后复制

令人惊讶的可读性。我觉得还好。一定有办法优化它,但我还不知道如何优化。

保重。喝水???.

上一页

以上是Codewars - 找到丢失的字母的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:dev.to
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板