inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

CS 전공지식 스터디 3기 [3주차] 자료구조와 알고리즘 미션

jinwoo2511
0

CS 전공지식 스터디 3기 [3주차] 자료구조와 알고리즘 미션

Q. 지금까지 배운 5개의 정렬 알고리즘의 장단점과 시간 복잡도를 적어주세요.

 

A.

버블 정렬 (Bubble Sort)

삽입 정렬 (Insertion Sort)

병합 정렬 (Merge Sort)

퀵 정렬 (Quick Sort)

Q. 메모리가 부족한 시스템에서 어떤 문제를 해결하는데 재귀로 쉽게 구현이 가능할 것 같습니다. 여러분이라면 메모이제이션과 타뷸레이션 중 어떤 걸 이용하실 건가요? 이유를 함께 적어주세요.

 

A.

메모이제이션 (Memoization)타뷸레이션 (Tabulation)은 모두 동적 프로그래밍(Dynamic Programming)의 기법으로, 문제를 작은 부분 문제로 나누어 해결하고 그 결과를 저장하여 중복 계산을 피하는 방법입니다.

두 방법은 다음과 같은 차이점이 있습니다.

메모이제이션을 선택할 경우:

타뷸레이션을 선택할 경우:

메모이제이션과 타뷸레이션 중 선택하는 이유:

따라서 메모리가 부족한 시스템에서는 타뷸레이션을 사용하는 것이 더 적합할 수 있습니다.

답변 0