My ongoing quest of making a program that visualizes sorting algorithms has come to a close. I’m really happy with this new iteration because it’s bigger and better than the last one.
function
- Visualizes different sorts
- Can generate random array of numbers
- Can generate descending array of numbers
- Has a speed slider to change how fast/slow the sorting and generating goes
sorts
- Bubble
- Insertion
- Selection
- Shell
- Quick
- Merge
- Heap
- Radix
what i learned
- More Python practice.
- PyQt5 for GUI.
- QtDesigner.
- General GUI design ideas.
- Better understanding of sorting algorithms.
- Some CSS.
resources
- My GitHub Repo
- LearnPyQt
- GeeksForGeeks Bubble Sort
- GeeksForGeeks Insertion Sort
- GeeksForGeeks Selection Sort
- GeeksForGeeks Shell Sort
- GeeksForGeeks Quick Sort
- GeeksForGeeks Merge Sort
- GeeksForGeeks Heap Sort
- GeeksForGeeks Radix Sort
notes
My last one only had iterative sorts because I honestly wasn’t really sure how object orinted functions with parameters work in Python and didn’t really want to think much of it because I was already confused about PyQt5 at the time. With more PyQt5 practice, I got more comfortable and chose to tackle more sorts in this new version. I realized I wanted even more bars to play around with so I made the bars thinner and added 10x more! (total of 100). The only issue I have with is that PyQt5 has a visual glitch when it comes to progress bars where you have to tab out and back into the program to remove the visual artifacts left by the bars.