본문 바로가기

Data Structure [C]/문돌이도 할 수 있는 [C언어 자료구조]

#22 [C 자료구조] 스택으로 회문 검사하기

힐링 타임이다!!!! 미로의 지옥에 벗어나서 오늘은 간단간단하게 회문 검사하는 법을 배워보자.

회문 검사는 말그대로 한 문장 혹은 데이터가 앞뒤로 대칭해도 똑같은 지를 검사하는 과정이다.

 

예를 들어,

  • 다 간다 이 일요일 일요일이 다 간다 (현실 반영형)
  • 아들딸이 다 컸다 이 딸들아 (불효형)
  • 소주 주소 (오늘 집에 안갈거야형)
  • A man, a plan, a canal - Panama! (파나마 건설형)

이와 같은 문장들은 앞뒤가 바뀌어도 똑같다.

이렇게 스택에서 push와 pop을 하면서 같은지 검사해본다면 알 수 있다.

 

알고리즘을 짜보자면

1) 전반부 문자들을 스택에 push

2) 후반부 각 문자룰 pop한 문자와 차례로 비교

3) 짝수면 1,2를 따르되 홀 수면 중간 글자를 버리고 비교 수행함

 

코드는 생략하도록 하겠다. #피타고라스