Skip to content

elanurussenn/sorting-algorithms-visualizer-python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

📊 Python ile Sıralama Algoritmaları Görselleştirici (Sorting Algorithms Visualizer)

Bu proje; Python programlama dili ve Matplotlib kütüphanesinin dinamik animasyon motoru (FuncAnimation) kullanılarak geliştirilmiş karşılaştırmalı bir Sıralama Algoritmaları Görselleştiricisi uygulamasıdır. Program, kullanıcının oluşturduğu veya rastgele üretilen bir sayı dizisi üzerinde 6 farklı sıralama algoritmasını eş zamanlı (simültane) olarak yarıştırarak grafiksel ekranda adım adım simüle eder.


Simüle Edilen Algoritmalar ve Zaman Karmaşıklıkları

Uygulama ekranında $2 \times 3$ matris düzeninde anlık olarak görselleştirilen algoritmaların teorik performans analizi şu şekildedir:

Algoritma Adı En İyi Durum (Best) Ortalama Durum (Average) En Kötü Durum (Worst) Bellek Karmaşıklığı (Space)
Bubble Sort $O(n)$ $O(n^2)$ $O(n^2)$ $O(1)$
Insertion Sort $O(n)$ $O(n^2)$ $O(n^2)$ $O(1)$
Selection Sort $O(n^2)$ $O(n^2)$ $O(n^2)$ $O(1)$
Merge Sort $O(n \log n)$ $O(n \log n)$ $O(n \log n)$ $O(n)$
Heap Sort $O(n \log n)$ $O(n \log n)$ $O(n \log n)$ $O(1)$
Radix Sort $O(n \cdot k)$ $O(n \cdot k)$ $O(n \cdot k)$ $O(n + k)$

Proje Bileşenleri ve Yapısı

  • main.py: Algoritmaların mantıksal implementasyonlarını, her adımda dizinin anlık durumunu kopyalayıp hafızaya alan state-log mekanizmasını ve Matplotlib GUI fonksiyonlarını içeren ana kod dosyası.
  • requirements.txt: Uygulamanın grafiksel arayüzünün çalışması için sistemde yüklü olması gereken harici kütüphane kısıtlamasını belirtir.

Kurulum ve Çalıştırma Talimatı

Uygulamayı yerel bilgisayarınızda çalıştırmak için aşağıdaki adımları sırasıyla takip edebilirsiniz:

  1. Bu depoyu (repository) bilgisayarınıza indirin veya klonlayın.
  2. Terminal veya Komut İstemi'ni (CMD) açarak proje klasörünün bulunduğu dizine gidin.
  3. Gerekli harici grafik kütüphanesini yüklemek için şu komutu çalıştırın:
    pip install -r requirements.txt

About

Python ve Matplotlib (FuncAnimation) kullanılarak geliştirilmiş, 6 farklı sıralama algoritmasının adım adım çalışma mantığını eş zamanlı görselleştiren simülasyon uygulaması.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages