이건 꽤 흔한 일입니다. 어렵게 들리지만, 곰곰히 생각해 보면 나쁘지는 않습니다.
문자열이 회문인지 확인하는 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을 사용하는 것보다 공백을 자르는 더 좋은 방법이 있습니까? (있긴 하지만 보기 흉해질 수 있습니다)
[]룬으로 변환하는 효율성은 어떤가요?댓글에 여러분의 생각을 남겨주세요.
감사해요!
이 게시물과 이 시리즈의 모든 게시물에 대한 코드는 여기에서 확인할 수 있습니다.
부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.
Copyright© 2022 湘ICP备2022001581号-3