UpDown Dev Story
알고리즘 연습 - 회문 문자열 본문
아래 강의를 보면서 연습하고 기록하고 있습니다
문제
내 소스코드
import java.util.Scanner;
public class Algorithm {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String inputString = sc.next();
String reverseInputString = new StringBuilder(inputString).reverse().toString();
if (inputString.equalsIgnoreCase(reverseInputString)) {
System.out.println("YES");
} else {
System.out.println("NO");
}
}
}
강사님 소스코드
import java.util.*;
class Main {
public String solution(String str){
String answer="YES";
str=str.toUpperCase();
int len=str.length();
for(int i=0; i<len/2; i++){
if(str.charAt(i)!=str.charAt(len-i-1)) answer="NO";
}
return answer;
}
public static void main(String[] args){
Main T = new Main();
Scanner kb = new Scanner(System.in);
String str=kb.next();
System.out.print(T.solution(str));
}
}
내 소스코드 해설
- 사용자에게 단어를 입력받고
- String으로 받은 단어를 StringBuilder로 변환하여 reverse() 한다
- equalsIgnoreCase 를 사용하여 대소문자 구분 없이 입력받은단어와 reverse한 단어가 일치하면 YES 아니면 NO 출력
강사님 소스코드 해설
- 사용자에게 단어를 입력받고
- 해당 단어의 길이를 반으로 나눈 만큼 for loop를 돌면서 앞과 뒤를 비교하여 회문문자인지 비교하여 YES 아니면 NO 출력
참고사항
- StringBuilder에 reverse 메소드가 있다
- equalsIgnoreCase 사용하면 대소문자 구분 없이 비교할수 있다.
'Algorithm' 카테고리의 다른 글
알고리즘 연습 - 숫자만 추출 (0) | 2021.05.23 |
---|---|
알고리즘 연습 - 유효한 팰린드롬 (0) | 2021.05.23 |
알고리즘 연습 - 중복문자제거 (0) | 2021.05.21 |
알고리즘 연습 - 특정 문자 뒤집기 (0) | 2021.05.21 |
알고리즘 연습 - 단어 뒤집기 (0) | 2021.05.21 |
Comments