アルゴリズム:母音を見つける

2252 ワード

このブログでは、母音を文字列で見つける方法について説明します.この問題で私はAを使って良い練習をした.ループの.
問題
文字列を与えられ、文字列に含まれる母音の数を返す関数を作成するよう求められます.文字列中に母音がない場合、関数は0を返す.母音は「a」、「e」、「i」、「o」、「u」である.
vowels('hello')
//will return 2

vowels('aardvark')
//will return 3

vowels('rkzlwmlz')
//will return 0
アプローチ
我々は文字列を通じて繰り返すことができることを知っている.ループはここで役に立つでしょう.ループを通過すると、文字列で発生する各母音に対してcountという変数が1ずつ増加します.文字が小文字であるかどうかは問題ではありませんので、関数のアカウントを確認します.文字列がどんな母音を含んでいるかをチェックするために、我々は母音の配列に対してストリングをチェックします.
解決策
function vowels(string) {
  let count = 0;
}
私たちのループは、文字列の母音に遭遇するたびにカウントを増やします.
function vowels(string) {
  let count = 0;
  const vowels = ['a', 'e', 'i', 'o', 'u'];

文字列と比較するために母音配列を使用します.
function vowels(string) {
  let count = 0;
  const vowels = ['a', 'e', 'i', 'o', 'u'];

  for (let char of string.toLowerCase()) {

  }
}
私たちはaを使います.を返します.我々はtoLowerCase() 文字列を小文字に変換するメソッドです.これにより、文字列の母音を母音配列に正しくマッチさせることができる.
function vowels(string) {
  let count = 0;
  const vowels = ['a', 'e', 'i', 'o', 'u'];

  for (let character of string.toLowerCase()) {
    if (vowels.includes(character)) {
        count++;
      }
  }
}
我々は、我々が我々のループでチェックしているストリングの現在のキャラクタが母音配列に含まれているならば、1を増加させるカウントを使用する条件を使用します.
function vowels(string) {
  let count = 0;
  const vowels = ['a', 'e', 'i', 'o', 'u'];

  for (let character of string.toLowerCase()) {
    if (vowels.includes(character)) {
        count++;
      }
  }
  return count;
}
最後に、質問が文字列に母音が現れる回数を求めるので、我々は数を返します.
資源
Stephen Grider's Algorithms and Data Structures Udemy Course
Interview Cake