원하는 출력을 얻으려면 return 문을 어디에 배치해야합니까? 내 코드 주석을 읽으십시오. 감사

dkeyboo

이 코드는 문자열을 받아 모음없이 문자열을 반환하고 반환합니다. 아래 출력에서 ​​볼 수 있듯이 첫 번째 Coding이 나를 미치게 만들고 e가없는 두 번째 코드를 반환하기 때문에 작동합니다.

function removeVowelFromString(string) {
let newCharactersArray = []; 
charactersArray = string.split('');
let vowels = ['a','e','i','o','u'];

for (const vowel of vowels) {

  for (let i = 0; i < charactersArray.length; i++) {        
     if (vowel === charactersArray[i]) {
      continue;
    }
    else {
      newCharactersArray.push(charactersArray[i]);
    }
  }
}
return newCharactersArray.join(''); 
}
console.log(removeVowelFromString('Coding is driving me crazy '));

// 한 줄로 출력 // 코딩이 나를 미치게 만든다. 코딩이 나를 미치게 만든다. Codng s drvng 나를 미치게한다. Cding이 나를 미치게 만든다. 코딩이 나를 미치게 만든다.

라훌 보베

댓글 중 하나에서 제안한대로. isVowel()함수 를 생성하여 문제 를 분석하고 문자열의 모든 문자를 한 번만 반복하여 주어진 문자가 모음인지 확인합니다.

function isVowel(c) {
    return ['a','e','i','o','u'].includes(c);
};

function removeVowelFromString(string) {
    let newCharactersArray = []; 
    charactersArray = string.split('');

    for (let i = 0; i < charactersArray.length; i++) {        
        if (isVowel(charactersArray[i])) {
            continue;
        }
        else {
            newCharactersArray.push(charactersArray[i]);
        }
    }
    return newCharactersArray.join(''); 
}

console.log(removeVowelFromString('Coding is driving me crazy '));

이 코드는 O(n * k)시간 복잡도로 실행됩니다. 여기서은 n문자열의 길이이고 k영어 모음의 수입니다 (즉, 5. 따라서 전체 복잡도는 O(5n)= O(5).

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

Related 관련 기사

뜨겁다태그

보관