Skip to content

kemalaydin/Veri-Yapilari-Proje

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Veri-Yapilari-Proje

( bz205 ) veri yapıları ve algoritmalar dersi projesi

https://bm.erciyes.edu.tr/mcelik/bz205/


Ödev

Veri Yapıları ve Algoritmalar Dersi

Sonbahar 2018

Veriliş Tarihi: 2 Kasım 2018

Teslim Tarihi: 05 Aralık 2018 Saat: 11:30 (en geç)

Ödev teslim şekli:

1- Ödevleri 4'er kişilik gruplar halinde yapılacaktır. 4'er kişilik gruplar oluşması ödevin bir parçasıdır. Grupları kendiniz oluşturabilirsiniz. Her grubun bir ödev teslim etmesi yeterli.

2- Ödevler dijital ortamda hazırlanıp çıktısı alınarak teslim edilecektir.

3- El yazımı ile yapılan ödevler kabul edilmeyecektir.

4- Programlar C/C++ ile yazılacaktır.

5- Ödeve grup üyelerinin numaralarını ve ismlerini yazmayı unutmayınız?

6- Ödev ile ilgili tartışabilirsiniz ve araştırma yapabilirsiniz, fakat aynı ödevi verdikleri tespit edilenlerin notları yansıtılmayacak.

7- Ödevleri zımbalayarak verebilirsiniz. Poşet veya dosya içine koymanıza gerek yok.

8- Ödevlerde kapak ve gereksiz süs olması ödev notunuzu etkilemez. Bunları koymayabilirsiniz.

program kodunuzun en başına aşağıdaki bilgileri yazınız?

\ Odev 1

\ Ogrenci1 No: .........

\ Ogrenci1 Ismı: ................

\ Ogrenci2 No: .........

\ Ogrenci2 Ismı: ................

....

\ Ders kodu:…….

\ Dosya ismi: Program dosyasının ismi yazılacak

Sorular

  1. Çift yönlü bağlantılı liste ve B+ ağacı kullanarak (B+ ağacı bağlantılı liste mantığında programlanacaktır) iki soyut veri yapısı tanımlayınız ve temel işlemleri yapan programlarını yapınız? Çift yönlü listenin her bir düğümünde öğrencinin numarası, adı, soyadı ve bölümü bilgileri tutulacaktır. Ağaçta ise indeksleme öğrenci numarasına göre yapılacaktır, ancak aşağıdaki bazı soruları cevaplamak için indeksleme ad ve/veya soyada göre de yapılabilir.

  2. Tasarlamış olduğunuz çift yönlü liste kullanarak Bilgisayar Programlama dersinin sınıf listesi oluşturulacaktır ve ağaçta ise Veritabanı Yönetim Sistemleri dersinin sınıf listesi tutulacaktır. Yazacağınız program çift yönlü liste ve B+ ağaç temel işlemlerini içerecektir ve ek olarak aşağıda istenen fonksiyonlar olacaktır. Ana programda temel işlemleri içeren ve aşağıdaki istenenlere ulaşmak için kullanılabilecek bir menü oluşturunuz?

a. Her iki dersi de birden fazla kez alan öğrencileri listeleyiniz?

b. Sadece Bilgisayar Programlama dersini alan öğrencileri listeleyiniz? (Bu öğrenciler Veritabanı Yönetim Sistemleri dersini alıyor olmayacaklar.)

c. Bilgisayar Programlama A ve B grubu olarak ikiye ayrılacaktır. A grubunda soyadı A-K arasında olan öğrenciler ve B grubunda ise soyadı L-Z arasında olan öğrenciler olacaktır. Veritabanı Yönetim Sistemleri dersini iki gruba ayırmak için gerekli yeni B+ ağaçları oluşturunuz ve ayrı ayrı tutunuz?

d. Bilgisayar Programlama ve Veritabanı Yönetim Sistemleri derslerinin her ikisini de alan ve başka bölüm öğrencileri olan öğrencileri listeleyiniz (Derslerde yandal ve çift anadal ile ders alan farklı bölüm öğrencileri bulunabilmektedir. ) Yukarıda yapılan işlemler neticesinde Bilgisayar Programlama ve Veritabaı Yönetims Sistemleri dersleri esas sınıf listelerinde değişiklik olmayacaktır. İstenildiğinde bu listeler görülebilmelidir.

  1. Yazmış olduğunuz program için aşağıdakileri uygulayınız?

a. Hızlı sıralama algoritmasını kullanarak her iki dersi de alan öğrencileri soyadlarına göre sıralayınız?

b. Radiks sıralama algoritmasını kullanarak sadece Veritabanı Yönetim Sistemleri dersini alan öğrencileri adlarına göre sıralayınız?

c. Kümeleme sıralama algoritmasını kullanarak Bilgisayar Programlama dersini alanları numaralarına göre sıralayınız?

  1. 1., 2. ve 3. sorularda yazmış olduğunuz programın her bir fonksiyonunun

a. mantığını birer paragraf şeklinde açıklayınız

b. akış diyagramlarını çiziniz ve

c. program fonksiyonlarının çalıştığını gösterir ekran çıktılarını ödevinize ekleyiniz? İstendiğinde ödevin çalışır hali gösterilebilir olmalıdır.

Not: Ödevlerde çift yönlü bağlantılı liste ve B+ yapılarını kullanmak esastır. Verileri diziye veya başka bir veri yapısına atıp üzerinde işlem yapılması İSTENMEMEKTEDİR.


About

( bz205 ) veri yapıları ve algoritmalar dersi projesi

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages