본문 바로가기
Algorithm/JavaScript

[basics] 문자 찾기

by _sweep 2021. 12. 5.

자바스크립트 알고리즘 문제풀이 강의를 듣고 정리한 내용입니다.

 

 

 

 

📋 문제

한 개의 문자열과 특정 문자를 입력받아 해당 특정 문자가 입력받은 문자열에 몇 개 존재하는지를 찾고 개수를 출력한다.

 

 

👉 입력

길이가 100을 넘지 않는 문자열과 특정 문자가 주어진다.

 

 

👈 출력

특정 문자의 개수를 출력한다.

 

 

📝 풀이

 

<script>
    function solution(s, t) {
        let answer = 0;
        for (const a of s) {
            if (a === t) answer++;
        }
        return answer
    }

    let str = "COMPUTERPROGRAMMING";
    console.log(solution(str, 'R'));
</script>

 

인자로 문자열과 특정 문자를 받는다.

for of 문을 사용해 문자열을 순회하며 특정 문자와 동일한 문자가 있으면 answer의 값을 하나씩 더해준다.

순회가 끝나면 answer를 출력한다.

 

다른 방법으로는 split()을 사용하는 방법이 있다.

 

<script>
    function solution(s, t) {
        let answer = s.split(t).length;
        return answer - 1;
    }

    let str = "COMPUTERPROGRAMMING";
    console.log(solution(str, 'R'));
</script>

 

split()을 이용해 특정 문자를 기준으로 입력받은 문자열을 나눈다.

위 코드 속 주어진 문자열 COMPUTERPROGRAMMING을 특정 문자 R을 기준으로 나누면 'COMPUTE', 'P', 'OG', 'AMMING'와 같이 나눠진다.

주어진 문자열 속에 R이 3개가 존재하기 때문에 R을 기준으로 나눴을 때 4개로 나눠진 것이다.

즉, 주어진 문자열 속 R의 개수는 (문자열이 나눠진 개수 - 1)과 같다.

 

 

 

'Algorithm > JavaScript' 카테고리의 다른 글

[basics] 대문자 통일  (0) 2021.12.05
[basics] 대문자 찾기  (0) 2021.12.05
[basics] A를 #으로  (0) 2021.12.05
[basics] 일곱 난쟁이  (0) 2021.12.05
[basics] 10부제  (0) 2021.12.05

댓글