[swift] 문자열에서 회문인지 여부 확인하기

회문(palindrome)은 앞으로 읽을 때나 뒤로 읽을 때나 같은 순서로 읽히는 단어나 구를 말합니다. 예를 들어 “radar”, “level”, “noon”이 회문의 예시입니다. Swift를 사용하여 주어진 문자열이 회문인지 여부를 확인하는 방법을 살펴보겠습니다.

1. 문자열을 뒤집는 함수 작성

우선, 주어진 문자열을 뒤집는 함수를 작성해야 합니다. 아래와 같이 String 클래스를 확장하여 reversed 메서드를 사용하여 문자열을 뒤집는 함수를 작성할 수 있습니다.

extension String {
    func isPalindrome() -> Bool {
        let reversedString = String(self.reversed())
        return self == reversedString
    }
}

2. 회문 여부 확인

이제 문자열에서 회문 여부를 확인할 수 있습니다. 주어진 문자열을 위에서 작성한 isPalindrome 함수를 사용하여 호출하고, 반환된 결과를 통해 회문 여부를 판단할 수 있습니다.

let inputString = "radar"
if inputString.isPalindrome() {
    print("주어진 문자열은 회문입니다.")
} else {
    print("주어진 문자열은 회문이 아닙니다.")
}

이 코드는 입력된 문자열이 회문인지 여부를 확인하고 결과를 출력합니다.

회문 여부를 확인할 때 이 방법을 사용하면 간단하고 쉽게 회문을 확인할 수 있습니다.

마무리

Swift를 사용하여 문자열이 회문인지 여부를 확인하는 간단한 방법을 살펴보았습니다. 문자열을 뒤집는 함수를 작성하고 이를 활용하여 주어진 문자열이 회문인지 판단하는 방법을 확인했습니다.

회문을 확인하는 것은 유용한 문자열 연산 중 하나이며, Swift의 문자열 처리 기능을 활용하여 간단하게 구현할 수 있습니다.

참고 자료: Swift.org - The Swift Programming Language