"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > Palindrome 문자열 확인

Palindrome 문자열 확인

2024-07-29에 게시됨
검색:525

Palindrome check a string

이건 꽤 흔한 일입니다. 어렵게 들리지만, 곰곰히 생각해 보면 나쁘지는 않습니다.

문자열이 회문인지 확인하는 golang 함수를 작성하세요.

회문은 뒤집어도 동일한 문자 시퀀스입니다. 예:

  • "aba"는 회문입니다.

  • "abb는

  • 가 아닙니다.
  • "ab a"는 대부분 회문으로 간주되므로 공백을 무시합니다.

func PalindromeCheck(str string) bool {
    trimmedStr := strings.ReplaceAll(str, " ", "")
    len := len(trimmedStr)
    chars := []rune(trimmedStr)
    for i := 0; i 



이 솔루션은 온라인 검색 시 C 또는 Java에서 찾을 수 있는 것과 기능적으로 동일합니다. 우리는 본질적으로 일치하지 않는 문자를 찾기 위해 처음과 끝에서 탐색하기 위해 이중 포인터를 사용하고 있습니다. 불일치가 발견되면 문자열이 회문이 아니라고 선언할 수 있습니다.

더 좋게 만들 수 있을까요?
strings.ReplaceAll을 사용하는 것보다 공백을 자르는 더 좋은 방법이 있습니까? (있긴 하지만 보기 흉해질 수 있습니다)
[]룬으로 변환하는 효율성은 어떤가요?

댓글에 여러분의 생각을 남겨주세요.

감사해요!

이 게시물과 이 시리즈의 모든 게시물에 대한 코드는 여기에서 확인할 수 있습니다.

릴리스 선언문 이 기사는 https://dev.to/johnscode/palindrome-check-a-string-3g4c?1에서 복제됩니다.1 침해 내용이 있는 경우, [email protected]에 연락하여 삭제하시기 바랍니다.
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3