알고리즘

문자 찾기

donggi 2021. 12. 30. 18:39

알고리즘 스터디를 하면서 스스로 부족함을 많이 느꼈다. 강의의 도움을 받고자 인프런에 자바 기반의 알고리즘 강의를 찾았다.

자바(Java) 알고리즘 문제풀이 : 코딩테스트 대비

 

자바(Java) 알고리즘 문제풀이 : 코딩테스트 대비 - 인프런 | 강의

자바(Java)로 코딩테스트를 준비하시는 분을 위한 강좌입니다. 코딩테스트에서 가장 많이 출제되는 Top 10 Topic을 다루고 있습니다. 주제와 연동하여 기초문제부터 중급문제까지 단계적으로 구성

www.inflearn.com

첫번째 문제라 간단하게 문자 찾기였다. 한 개의 문자열을 입력받고, 특정 문자를 입력받아 해당 특정문자가 입력받은 문자열에 몇 개 존재하는지 찾으면 됐다.

import java.util.Scanner;

public class FindString {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        String str = sc.next().toUpperCase();
        char findWord = sc.next().toUpperCase().charAt(0);
        int result = 0;

        for (char x : str.toCharArray()) {
            if (x == findWord) {
                result++;
            }
        }

        System.out.println(result);
    }
}

 향상된 포문을 들어나봤지 잘 알지 못했고 그냥 그러려니 살고 있었다. 일반 포문으로 푸는 방식도 강의에서 보여줬으나 이렇게 향상된 포문으로 푸는 방법도 보여주었다.

 

 향상된 포문은 배열이어야하여 String 을 배열로 바꿔주어야했다. String 타입인 str을 toCharArray() 메서드를 사용하여 Char 타입의 배열로 만들었다. char 타입의 변수 x 가 str을 하나씩 탐색하면서 findWord에 입력된 것과 같은 걸 찾으면 result를 증가시켜준다. result 결과를 출력하면 끝이다.

'알고리즘' 카테고리의 다른 글

이진 탐색  (0) 2022.01.16
특정 문자 뒤집기  (0) 2022.01.02