Binary heap ile öncelik kuyruğunu kendin yaz
Java Binary Heap ve Öncelik Kuyruğu eğitimi 2 günlük uygulamalı programda heap kavramları, ekleme ve silme, heapify ve heap sort, jenerik minheap sınıfı gibi konuları kapsar. Dizi tabanlı min-heap ve max-heap yapısını sıfırdan yazabilirsiniz.
Dizi tabanlı heap, heapify, heap sort ve öncelik kuyruğu
Bu eğitim, ikili yığın (binary heap) veri yapısını Java ile dizi üzerinde gerçekler. Min-heap ve max-heap özellikleri, ebeveyn/çocuk indeks formülleri, siftUp ve siftDown işlemleri, O(n) süreli heapify (build-heap) analizi ve heap sort adım adım yazılır. java.util.PriorityQueue iç yapısı, Comparator ile özel öncelik, top-K eleman, k sıralı listeyi birleştirme, kayan medyan (iki heap), olay zamanlayıcı ve indeksli öncelik kuyruğu (decrease-key) gibi uygulama kalıpları ele alınır.
2 Gün. Her gün dört modül; katılımcılar binary heap yapısı konusundan başlayıp öncelik kuyruğu uygulamaları konusuyla tamamlar.
İleri Seviye — Java ile ikili yığın (binary heap) uygulaması, heapify, heap sort ve öncelik kuyruğu kullanım kalıpları.
Heap önce dizi üzerinde elle çizilerek izlenir, ardından jenerik MinHeap sınıfı yazılır ve PriorityQueue ile aynı problemler çözülerek sonuçlar ölçülür.
siftUp ve siftDown mantığını dizi indeksleriyle kendiniz kodlarsınız.
Büyük veri akışında en büyük K elemanı bellek dostu yöntemle bulursunuz.
Dijkstra, Huffman ve olay simülasyonunun temelindeki öncelik kuyruğunu anlarsınız.
Eğitimden verim almak için faydalı olacak bilgi ve ortam gereksinimleri
Dizi, döngü, sınıf ve metot yazabilecek düzeyde Java bilgisi beklenir.
Logaritma, üs ve ardışık toplam gibi kavramlara aşinalık Big-O analizinde yardımcı olur.
Basit özyinelemeli metotları (faktöriyel, Fibonacci) okuyabilmek faydalıdır.
JDK 17+, IDE ve JUnit çalıştırabilen bir bilgisayar gerekir.
Programın gün gün akışı aşağıdadır. Bir güne tıklayarak o günün modüllerini ve içeriklerini görebilirsiniz.
Program sonunda katılımcılar:
Dizi tabanlı min-heap ve max-heap yapısını sıfırdan yazabilirsiniz.
siftUp ve siftDown mantığını doğru indekslerle uygulayabilirsiniz.
Build-heap işleminin neden O(n) olduğunu açıklayabilirsiniz.
Yerinde çalışan heap sort algoritmasını yazıp ölçebilirsiniz.
Comparator ile özel öncelikli PriorityQueue kullanabilirsiniz.
Büyük veri akışında en büyük K elemanı O(n log k) sürede bulabilirsiniz.
İki heap ile kayan medyan hesaplayabilirsiniz.
Dijkstra ve Huffman gibi algoritmalarda heap'in rolünü uygulayabilirsiniz.
Bu eğitim Digital Vizyon Akademi Başarı Sertifikası ile tamamlanır.
Eğitim başında “Ön Test”, bitiminde “Son Test” uygulanarak gelişim ölçümlenir. Değerlendirme formunu dolduran katılımcılar sertifikalarını alır. Sertifikanızın geçerliliğini Sertifika Sorgulama sayfasından doğrulayabilirsiniz.
Java operatörleri eğitimi: aritmetik, atama, karşılaştırma, mantıksal, bitwise, shift, üçlü operatör, öncelik kuralları ve integer overflow örnekleriyle başlang
Detayları Gör →Java değişkenleri ve primitive tipler eğitimi: int, double, char, boolean, referans tipler, String, wrapper sınıflar, tip dönüşümü ve değişken kapsamı ile başla
Detayları Gör →Java ile program yazma ve çalıştırma başlangıç eğitimi: JDK kurulumu, javac ve java komutları, JShell, paketler, Scanner, IntelliJ IDEA ve jar paketleme.
Detayları Gör →Google Workspace güncellemeleri eğitimi: Gmail, Chat, Meet, Drive etiketleri, Docs akıllı çipler, Sheets tabloları, Gemini ve yönetici konsolu güvenlik ayarları
Detayları Gör →Groovy programlama eğitimi: dinamik tipleme, closure, GString, koleksiyonlar, trait, metaprogramming, DSL, Spock testleri ile Gradle ve Jenkins pipeline betikle
Detayları Gör →