μ •λ ¬ μ•Œκ³ λ¦¬μ¦˜Intermediate

κ³„μˆ˜ μ •λ ¬

각 μš”μ†Œμ˜ λ°œμƒ 횟수λ₯Ό μ„Έκ³  μ‚°μˆ  연산을 톡해 μœ„μΉ˜λ₯Ό κ²°μ •ν•˜λŠ” 비비ꡐ μ •λ ¬ μ•Œκ³ λ¦¬μ¦˜μž…λ‹ˆλ‹€. kκ°€ μž…λ ₯ κ°’μ˜ λ²”μœ„μΌ λ•Œ O(n+k) μ‹œκ°„ λ³΅μž‘λ„λ₯Ό λ‹¬μ„±ν•©λ‹ˆλ‹€. μ•Œλ €μ§„ μ œν•œλœ λ²”μœ„ λ‚΄μ˜ μ •μˆ˜ 정렬에 μ΄μƒμ μž…λ‹ˆλ‹€. 기수 μ •λ ¬μ˜ κΈ°μ΄ˆκ°€ λ©λ‹ˆλ‹€.

#sorting#linear-time#non-comparison#stable

Complexity Analysis

Time (Average)

O(n + k)

Expected case performance

Space

O(n + k)

Memory requirements

Time (Best)

O(n + k)

Best case performance

Time (Worst)

O(n + k)

Worst case performance

πŸ“š CLRS Reference

Introduction to Algorithmsβ€’Chapter 8β€’Section 8.2

Step: 1 / 0
500ms
SlowFast
Keyboard Shortcuts
Space Play/Pause← β†’ StepR Reset1-4 Speed

Real-time Statistics

Algorithm Performance Metrics

Progress0%
Comparisons
0
Swaps
0
Array Accesses
0
Steps
1/ 0

Algorithm Visualization

Step 1 of 0

Initialize array to begin

Default
Comparing
Swapped
Sorted

Code Execution

Currently executing
Previously executed

Implementation

Counting Sort - Algorithm Vision