1. 특정 주제
문자열을 감안할 때, 그것은 회문 문자열인지 확인 에만 알파벳과 숫자를 고려 , 당신은 할 수 있습니다 대소 문자를 무시한다 . 설명 :이 문제에서 우리는 유효한 상동 순서로 빈 문자열을 정의합니다.
예 1 : 입력 : "사람, 계획, 운하 파나마"출력 : 사실
예 2 : 입력 : "인종 차"출력 : 거짓
아이디어 2. 분석
잘못된 문자를 포함 할 수있다 주어진 문자열의 경우, 이중 포인터로 새 문자열을 비교 한 후 얻은 마지막 문자가 동일한 지 어떤지를 (정규 표현식에 의해 결정) 제거 먼저 원래 문자열의 유효하지 않은 문자에 필요하다.
3. 코드
공공 부울 isPalindrome (문자열들) { // 字符串为널和长度为0是不同的 경우 (들 == null의 || s.length () == 0)을 반환 사실 ; 문자열 STR = s.replaceAll ( "[^ 0-9A-ZA-Z]", "" ) .toLowerCase (); INT는 0 = 왼쪽 ; INT 오른쪽 str.length = () - 1 ; 반면 (왼쪽 < 오른쪽) { 경우 (str.charAt가 (좌)! = {str.charAt (오른쪽)) 복귀 거짓 ; } 왼쪽 ++ ; 권리- ; } 반환 사실 ; }