본문 바로가기

Algorithm/Programers - Java

[프로그래머스(Java)] 접미사인지 확인하기 / endsWith(), startsWith()

 

Level. 0

 

문제

어떤 문자열에 대해서 접미사는 특정 인덱스부터 시작하는 문자열을 의미합니다.
예를 들어, "banana"의 모든 접미사는 "banana", "anana", "nana", "ana", "na", "a"입니다.
문자열 my_string과 is_suffix가 주어질 때, is_suffix가 my_string의 접미사라면 1을, 아니면 0을 return 하는 solution 함수를 작성해 주세요.

* 제한사항
- 1 ≤ my_string의 길이 ≤ 100
- 1 ≤ is_suffix의 길이 ≤ 100
- my_string과 is_suffix는 영소문자로만 이루어져 있습니다.

 

풀이1

class Solution {
    public int solution(String my_string, String is_suffix) {        
        for(int i=0; i<my_string.length(); i++){
            String str = my_string.substring(i);
            if(str.equals(is_suffix)) return 1;
        }
        return 0;
    }
}

 

풀이2

class Solution {
    public int solution(String my_string, String is_suffix) {
        return my_string.lastIndexOf(is_suffix) == my_string.length()-is_suffix.length()?(my_string.lastIndexOf(is_suffix)!=-1?1:0):0;
    }
}

 

풀이3 - endsWith()

class Solution {
    public int solution(String my_string, String is_suffix) {
        return my_string.endsWith(is_suffix)?1:0;
    }
}

 

 

startsWith() 

boolean startsWith(String prefix)
  • 문자열이 특정 문자 또는 문자열로 시작되는지를 체크하는 함수
  • 해당 문자열로 시작하면 true, 그렇지 않다면 false 를 반환

 

endsWithd()

boolean endsWith(String suffix)
  • 문자열이 특정 문자 또는 문자열로 끝나는지를 체크하는 함수

 

 


https://school.programmers.co.kr/learn/courses/30/lessons/181908

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr