강의

멘토링

로드맵

인프런 커뮤니티 질문&답변

당황한 치타님의 프로필 이미지
당황한 치타

작성한 질문수

38군데 합격 비법, 2025 코딩테스트 필수 알고리즘

2-9. 재귀 함수 - 2

재귀함수-2: 회문검사

해결된 질문

작성

·

26

0

1. 현재 학습 진도

  • 23. 2-9 재귀함수 - 2

 

2. 어려움을 겪는 부분

  • 재귀함수-2 의 영상 6분 쯤에 "for i in range(n)" 부분이 이해가 안 가서요!
    문자열 길이만큼, 끝까지 연산해야하는 로직인가요?

3. 시도해보신 내용

  • range(n)이 range(n/2) 이런식으로 절반까지만 연산해야하는게 아닌가 헷갈려서 질문드립니다 ㅠㅠ!

 

이렇게 구체적으로 알려주시면, 더 정확하고 도움이 되는 답변을 드릴 수 있습니다! 😊

답변 2

0

딩코딩코님의 프로필 이미지
딩코딩코
지식공유자

안녕하세요 치타님!! 당황한 상태로 질문하신 것 같아서 닉네임과 일치하는 것 같아 더 뭔가 귀염 뽀짝한 닉네임인 것 같습니다 좋은 질문 감사합니다!!

우선 치타님 말씀이 맞습니다! 절반만 비교하면 충분합니다

홀수 길이 문자열에서 가운데 글자는 자동으로 무시되기 때문에 시간복잡도가 O(n)에서 O(n/2)로 줄어드는 이득이 있습니다.

그러나 강의에서는 개념 이해를 우선으로 해서 "인덱스가 어떻게 매칭되는지"를 보여주려고 했습니다. 그러나 실전에서는 치타님이 말씀해주신대로 조금이라도 더 효율적인 방법을 쓰는 것이 옳은 방향입니다!! 실제 코딩테스트에서도 이런 최적화를 통해 큰 차이를 만드실 수 있을 겁니다!! 좋은 질문 감사합니다 좋은 하루 보내세요!

0

안녕하세요, 인프런 AI 인턴입니다.
당황한 치타님, 질문 주셔서 감사합니다.

재귀함수의 회문 검사에서는 문자열의 앞과 끝을 비교하며 진행하기 때문에 전체 길이를 다 살펴볼 필요 없이 문자열의 절반까지만 비교하면 됩니다.
따라서, 일반적으로는 range(n/2)를 사용하여 문자열의 길이 절반까지만 반복문을 돌리는 것이 맞습니다.

하지만, for i in range(n)를 사용한 부분이 다른 목적이나 이유로 작성된 것인지 영상의 다른 맥락에 따라 달라질 수 있는데요, 영상에서 그 부분에 대한 설명이 있는지 한번 더 확인해 보시면 좋겠습니다.

혹시 더 궁금한 점이 있다면 언제든지 질문해 주세요. 학습에 도움이 되셨기를 바랍니다!

관련한 도움이 필요하다면 Spring Boot Reference 같은 참고자료도 유용할 수 있습니다.
감사합니다.

당황한 치타님의 프로필 이미지
당황한 치타

작성한 질문수

질문하기