본문 바로가기

Programming/Algorithm

[Algorithm] 문자열에서 특정 문자 개수 뽑기

728x90
반응형

S 문자열에서 J문자열 안에 있는 문자들의 개수를 뽑는 알고리즘입니다.

S "aAAbbbb" 에서 J "aA" 즉 a와 A의 개수를 찾는 것입니다. (총 3개)

public class Problem1 {

    public static void main(String[] args) {
        ProblemSolve ps = new ProblemSolve();
        String S = "aAAbbbb";
        String J = "aA";
        ps.numJewelsInStones(J, S);
    }
}

 

 

 

알고리즘을 해결하기 위한 메서드입니다.

class ProblemSolve {
    public int numJewelsInStones(String J, String S) {
        int result = 0;

        for (int i = 0; i < J.length(); i++) {
            for (int j = 0; j < S.length(); j++) {
                if (J.charAt(i) == S.charAt(j)) {
                    result++;
                }
            }
        }
        return result;
    }
}

1. 개수를 넣어줄 result를 선언합니다.

2. J의 크기만큼 for문을 동작시킵니다.

3. 내부에 for문을 하나 더 만들어 S의 크기만큼 동작하며 J.charAt(i) 와 S.charAt(j)를 비교해 같으면 개수를

증가시켜줍니다.

 

반응형