[LeetCode] Find First Palindromic String in the Array

아르당·2026년 8월 7일

LeetCode

목록 보기
450/583
post-thumbnail

문제를 이해하고 있다면 바로 풀이를 보면 됨
전체 코드로 바로 넘어가도 됨
마음대로 번역해서 오역이 있을 수 있음

Problem

문자열 배열 words가 주어졌을 때, 배열에서 첫 번째 회문 문자열을 반환해라. 문자열이 없다면 빈 문자열 ""을 반환해라.
문자열은 앞으로 읽든 뒤로 읽든 같다면 회문이다.

Example

#1
Input: words = ["abc", "car", "ada", "racecar", "cool"]
Output: "ada"
Explanation: 첫 번째 회문 문자열은 "ada"이다.
"racecar"도 회문이지만, 첫 번째가 아니다.

#2
Input: words = ["notapalindrome", "racecar"]
Output: "racecar"
Explanation: 첫 번째 회문은 오직 "racecar"뿐이다.

#3
Input: ["def", "ghi"]
Output: ""
Explanation: 회문 문자열이 없어서, 빈 문자열이 반환된다.

Constraints

  • 1 <= words.length <= 100
  • 1 <= words[i].length <= 100
  • words[i]는 오직 영어 소문자로 구성된다.

Solved

class Solution {
    public String firstPalindrome(String[] words) {
        for(String word : words){
            if(isPalindrome(word)){
                return word;
            }
        }

        return "";
    }

    private boolean isPalindrome(String word){
        int left = 0;
        int right = word.length() - 1;

        while(left < right){
            if(word.charAt(left) != word.charAt(right)){
                return false;
            }

            left++;
            right--;
        }

        return true;
    }
}
profile
내 마음대로 코드 작성하는 세상

0개의 댓글