본문 바로가기

old/Algorithm Solving

LeetCode 771. Jewels and Stones 자바 문제 풀이

반응형

문제

Jewels and Stones - LeetCode

문제 해결 방법

  • 이 문제는 입력된 스트링에 입력된 또다른 스트링의 각 문자가 존재하는지 확인 하는 문제입니다.
  • 각각 한번씩은 확인할수 밖에 없으므로, O(n^2)입니다.
  • 기초적인 문자열을 다루는 법을 아느냐고 묻는 문제입니다.
  • 아래와 같이 풀기 위해서, toCharArray() 메서드에 대해서 알아야 하며, char타입 비교를 위해서 자바의 데이터 타입에 대하여 알아야 합니다.

자바의 Primitive 데이터 타입과 Reference 데이터 타입

Github Link

https://github.com/eunhanlee/LeetCode_771_JewelsandStones_Solution.git

시간복잡도: O(n^2), 공간복잡도: O(1)

class Solution {
    /**
     * 돌에서 보석의 개수를 세는 메서드입니다.
     *
     * @param jewels 보석의 종류를 나타내는 문자열입니다.
     * @param stones 가지고 있는 돌을 나타내는 문자열입니다.
     * @return 돌에서 찾은 보석의 개수입니다.
     */
    public int numJewelsInStones(String jewels, String stones) {
        int counter = 0;

        for (char stone : stones.toCharArray()) {
            for (char jewel : jewels.toCharArray()) {
                if (stone == jewel) {
                    counter++;
                }
            }
        }

        return counter;
    }
}
반응형