온라인 쇼핑 경험 비교
이제 알고리즘 효율성의 위력을 직접 체험해 보세요! 제공된 코드를 실행해 네 가지 알고리즘(버블 정렬과 선형 탐색, 그리고 퀵 정렬과 이진 탐색)의 성능을 비교합니다.
코딩은 필요 없어요. 매개변수 하나만 조정해 서로 다른 조건에서의 성능을 확인해 보세요. 상단의 num_items 값을 바꾸면 됩니다. (이 매개변수는 온라인 쇼핑 카탈로그의 항목 개수를 가정합니다.)
코드를 실행하고 결과를 비교해 보세요. 1000에서 10000으로 늘릴수록 한 옵션이 다른 옵션보다 얼마나 더 오래 걸리는지 살펴보세요.
온라인 전자상거래 사이트에서 가격 기준으로 상품 목록을 정렬한다고 가정해 보세요. 이 알고리즘 쌍 중 하나를 선택하면 다른 쌍에 비해 사용자 경험이 얼마나 더 좋아질지(즉, 더 빨라질지) 상상해 보세요.
이 연습은 강의의 일부입니다
컴퓨터 과학의 핵심 개념
연습 안내
- 비교하고 싶은 값으로
num_items를 변경하세요. (예: www.amazon.com에 1,000개의 항목이 있다고 가정하면num_items = 1000으로 설정)
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Change this parameter
num_items = 1000
####### Leave the code below this line alone ########
catalog = [random.randint(0, num_items) for _ in range(num_items)]
total_time_bubble_linear = time_bubble_sort_and_linear_search(catalog)
catalog = [random.randint(0, num_items) for _ in range(num_items)]
total_time_quick_binary = time_quick_sort_and_binary_search(catalog)
df = pd.DataFrame({"Method": ["Bubble Sort + Linear Search", "Quick Sort + Binary Search"],
"Total Time (seconds)": [total_time_bubble_linear, total_time_quick_binary]})
print(df)