Vector Queue

advertisement
1) a) Aşağıdaki bilgileri Şekil 1’de görülen Bileşik Veri Yapısına Yerleştiren etkin Java programını
kurşunkalemle A4 boyutunda bir kağıda yazınız. Kuyruğun her bir elemanının, Urun sınıfı
cinsinden olmasına dikkat ediniz. Öncelikle ürün sınıfını oluşturunuz. b) Daha sonra kodlayarak
çalıştırınız.
Urunler = { Masa, Sandalye, Dolap, TV, Süpürge, Fırın, Bulaşık M., Çamaşır M., Ütü, Kanepe }
Fiyatlar= { 100, 40, 70, 450, 80, 120, 450, 500, 50, 90}
Kanepe, 390
Ürün
Masa, 100
Fırın, 120
Ütü, 50
Dolap, 70
Süpürge, 80
Çamaşır M., 500
Sandalye, 40
TV, 450
Bulaşık M., 450
Queue
Vector
Şekil 1: Kuyruklardan oluşan Vektör (Bileşik Veri Yapısı)
2) a) 1. Soruda belirtilen Bileşik Veri Yapısındaki Verileri bir Hash Table’a yerleştiren kodu yazınız.
b) Tüm ürünlerin fiyatlarını %5 artırarak Hash Tablosuna tekrar yazan kodu yazınız.
3) a) Sadece fiyatları bir Heap’e (Java’daki PriorityQueue Heap düzenindedir) yerleştiren kodu
yazınız.
b) En ucuz 3 ürünün fiyatını öğrenmek için Heap’ten çeken kodu yazınız.
4) a) 1. sorudaki 2 diziden Ürün nesnelerini oluşturup, ürün adına göre alfabetik sırada ikili arama
ağacına yerleştiren kodu yazınız. Hazır ağaç kodlarından yararlanabilirsiniz.
b) Ağacın derinliğini, eleman sayısını ve düğümlerin derinlik ortalamasını bulan metodu (veya
metotları) yazınız.
5) a) Ders kitabındaki 3. Bölümden (Simple Sorting) bir sıralama algoritması seçerek okuyunuz,
öğreniniz, mantığını anlayınız. Kitaba veya hazır koda bakmadan bir A4 kağıdına kurşunkalemle
yazınız.
b) Ders kitabındaki 7. Bölümden (Advanced Sorting) bir sıralama algoritması seçerek okuyunuz,
öğreniniz, mantığını anlayınız. Java’da kodlayınız.
c) Her iki yöntemin zaman karmaşıklıklarını hesaplayınız ve 1 paragraf açıklama yazarak
yöntemleri karşılaştırınız.
Download