강의

멘토링

커뮤니티

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

Hyo Kyun Lee님의 프로필 이미지
Hyo Kyun Lee

작성한 질문수

그림으로 쉽게 배우는 자료구조와 알고리즘 (심화편)

섹션 5 퀴즈

이진탐색트리/AVL트리/RB트리를 바라보는 관점

작성

·

11

·

수정됨

1

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

 

안녕하세요 선생님, 강의 잘 듣고 있습니다.

 

지금 Red Black 트리까지 수강을 하였는데, 제가 이 강의 수강 이후 본격적인 코딩테스트 준비를 할 예정이어서 이와 관련한 질문을 드리고자 합니다.

 

이진탐색알고리즘, 이진탐색트리, AVL트리, RB트리까지 공부한 후에 사실 가장 먼저 느꼈던 점은 코딩테스트에 이러한 자료구조를 어떻게 활용할 수 있을지에 대한 의문이었습니다.

 

단순히, 이러한 복잡한 구현과정을 경험하고 기본적인 알고리즘 구현 역량을 향상할 수 있다는 것에 의의를 두는 것이 좋을지, 이러한 자료구조를 코딩테스트 상황에 맞게 적절하게 사용하는 것에 대해 좀 더 공부해보는 것이 좋을지..어떠한 관점으로 바라보는 것이 좋을지 선생님께 문의드리고자 합니다(AI답변보다는 선생님의 생각이 더 궁금합니다..!).

 

자료구조를 이해하기 쉽게, 하지만 가볍지 않게 다룰 수 있도록 좋은 강의해주셔서 감사드립니다.

 

감사합니다.

답변 2

0

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

안녕하세요!
강의를 들으면서 앞으로의 공부 방향을 생각중이시군요.😊

저는 자료구조와 알고리즘, 그리고 코딩테스트를 말할 때 수학의 예시를 드는 것을 좋아하는데요.
수학을 공부할 때 단순히 문제집만 많이 푼다고 수학을 잘 한다고 하지 않고, 좋은 점수를 기대하기도 어렵습니다.
먼저 개념을 공부하면서 공식도 유도하면서 논리력을 키우고 이를 바탕으로 문제집을 많이 풀면서 문제 유형을 파악하고 시험준비를 하는 방식이 좋은 점수를 기대할 수 있습니다.

코딩테스트도 수학 공부와 비슷한 점이 많습니다.
먼저 개념에 해당하는 자료구조와 알고리즘의 원리를 알아보고 개념이 준비되었다면 코딩 테스트 문제를 많이 풀어보면서 어떤 유형들이 있는지, 해당 유형에서는 어떤 자료구조와 알고리즘을 사용하는 것이 좋은지 연습하는 것입니다.
수학 공부할 때 개념시간에 공식 유도한 것을 실제로 문제를 풀 때는 공식을 일일이 유도하지 않고 대입해서 푸는 것처럼 코딩 테스트도 실전에서는 자료구조와 알고리즘을 일일이 구현해서 쓰지 않습니다.
많은 언어에는 기본으로 제공되는 자료구조와 알고리즘이 있기 때문에 이를 많이 활용하죠.

자료구조와 알고리즘 개념 공부가 되었다면 코딩 테스트 문제를 많이 풀어보시는 것을 추천드립니다.
자료구조와 알고리즘을 다른 코드를 보지 않고 구현하지 못하더라도 개념은 정확히 알고 이를 잘 활용하는 방법을 키우는게 코딩 테스트에는 더 많은 도움이 될 것 같습니다.

궁금증이 해결되셨나요? 😄

Hyo Kyun Lee님의 프로필 이미지
Hyo Kyun Lee
질문자

감사합니다 선생님!

말씀하신 내용 참고하겠습니다.

강의 끝까지 포기하지 않고 수강하겠습니다.

 

감사합니다.

0

안녕하세요, 인프런 AI 인턴입니다. Hyo Kyun Lee님!

이진 탐색 트리, AVL트리, Red-Black 트리와 같은 자료구조를 코딩 테스트에서 어떻게 활용할 수 있을지에 대한 질문을 주셨군요. 이와 관련해서 코딩 테스트 준비에 유익한 접근법을 안내드리겠습니다.

자료구조 공부의 중요성

자료구조들은 특정 문제를 해결하기 위한 시간 복잡도 개선에 중요한 역할을 합니다. 예를 들어, 이진 탐색 알고리즘은 정렬된 배열에서 효율적으로 요소를 찾는데 유용하며, AVL 트리 또는 Red-Black 트리는 균형을 유지해 삽입, 삭제 및 탐색의 시간 복잡도를 O(log n)으로 유지합니다. 다양한 자료구조를 학습하면 특정한 문제 상황에서 적절한 방법을 선택할 수 있는 역량을 기를 수 있습니다.

코딩 테스트에서의 실제 활용

일반적으로 코딩 테스트에서는 이러한 자료구조의 세부 구현보다는, 주어진 문제를 해결하기 위해 이러한 자료구조를 어떻게 활용할 것인가가 더 중요할 수 있습니다. 다음은 자료구조 학습의 몇 가지 접근법입니다:

  1. 기본 원리를 이해합니다: 자료구조의 기본 연산 및 특성을 이해함으로써 문제 유형에 따라 적절한 자료구조를 선택할 수 있습니다.

  2. 활용 사례 익히기: 각 자료구조가 사용되는 전형적인 사례를 파악합니다. 예를 들어, 우선순위 큐의 경우 다익스트라 알고리즘에 사용됩니다. 이는 문제 해결 역량을 강화합니다.

  3. 구현 연습: 중요한 자료구조는 직접 구현해보며 내부 작동 원리를 이해합니다. 그러나, 실제 코딩 테스트에서는 이미 잘 구현된 라이브러리를 활용할 수 있으므로, 기본적인 구현 능력 이상으로 활용법에서 유리함을 찾는 것이 목표입니다.

유용한 링크

이러한 학습 방법을 통해 코딩 테스트에서 강력한 문제 해결 능력을 기를 수 있을 것입니다. 자료구조의 본질을 이해하고 다양한 문제 상황에서 응용할 수 있는 능력을 강화하는 방향으로 학습을 진행하시면 좋겠습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

Hyo Kyun Lee님의 프로필 이미지
Hyo Kyun Lee

작성한 질문수

질문하기