```
🔵 BUBBLE SORT VISUALIZER
Interactive • Step-by-Step • Comparison • Swap Animation
```
```
📥 Enter Your Data
Animation Speed:
```
```
📊 Array Visualization
Enter your values and press START SORT.
```
```
```
📈 Live Statistics
Pass
0
Comparison
0
Swaps
0
Current Index
-
Remaining
-
```
```
📝 Step-by-Step Explanation
1
Bubble Sort compares two adjacent elements.
If the left element is greater than the right
element, they are swapped.
```
🧮 Bubble Sort Mathematics
Compare adjacent elements:
A[j] > A[j+1]
If TRUE:
Swap A[j] and A[j+1]
Example:
64 > 34
Therefore:
64 ↔ 34
Array becomes:
34, 64, ...
```
A[j] > A[j+1]
If TRUE:
Swap A[j] and A[j+1]
Example:
64 > 34
Therefore:
64 ↔ 34
Array becomes:
34, 64, ...
```
🔢 Complete Example
Initial Array:
5, 3, 8, 4
Pass 1
Compare 5 and 3:
5 > 3 → Swap
3, 5, 8, 4
Compare 5 and 8:
5 < 8 → No Swap
3, 5, 8, 4
Compare 8 and 4:
8 > 4 → Swap
3, 5, 4, 8
Largest element 8 has moved to the end.
Pass 2
Compare 3 and 5 → No Swap
Compare 5 and 4 → Swap
3, 4, 5, 8
Final Sorted Array:
3, 4, 5, 8
```
5, 3, 8, 4
Pass 1
Compare 5 and 3:
5 > 3 → Swap
3, 5, 8, 4
Compare 5 and 8:
5 < 8 → No Swap
3, 5, 8, 4
Compare 8 and 4:
8 > 4 → Swap
3, 5, 4, 8
Largest element 8 has moved to the end.
Pass 2
Compare 3 and 5 → No Swap
Compare 5 and 4 → Swap
3, 4, 5, 8
Final Sorted Array:
3, 4, 5, 8
```
```
💡 Why Is It Called Bubble Sort?
↑
During every pass, larger elements move toward
the right side of the array.
The larger values appear to "bubble" toward the end of the array.
The larger values appear to "bubble" toward the end of the array.
```
🔄 Algorithm
Start
↓
Compare adjacent elements
↓
Is A[j] > A[j+1]?
↓
YES → Swap
NO → Continue
↓
Complete one pass
↓
Largest unsorted element reaches its position
↓
Repeat
↓
Array Sorted
```
↓
Compare adjacent elements
↓
Is A[j] > A[j+1]?
↓
YES → Swap
NO → Continue
↓
Complete one pass
↓
Largest unsorted element reaches its position
↓
Repeat
↓
Array Sorted
```
```
⚖️ Advantages & Disadvantages
+
Advantages
• Very easy to understand.
• Simple to implement.
• Requires very little additional memory.
• Useful for teaching sorting concepts.
• Can stop early when no swaps occur.
• Very easy to understand.
• Simple to implement.
• Requires very little additional memory.
• Useful for teaching sorting concepts.
• Can stop early when no swaps occur.
−
Disadvantages
• Slow for large datasets.
• Performs many comparisons.
• Usually less efficient than insertion sort, merge sort, or quicksort for larger inputs.
• Slow for large datasets.
• Performs many comparisons.
• Usually less efficient than insertion sort, merge sort, or quicksort for larger inputs.
```
⏱️ Time & Space Complexity
Best Case
O(n)
Average Case
O(n²)
Worst Case
O(n²)
Space Complexity:
O(1)
Bubble Sort is an in-place sorting algorithm.
```
O(1)
Bubble Sort is an in-place sorting algorithm.
No comments:
Post a Comment