Final Sınavı Örnek Soruları Bahar 2018

Benzer belgeler
Final Sınavı Soruları Bahar 2018

Arasınav Soruları Bahar 2018

Arasınav Örnek Soruları Bahar 2018

HACETTEPE ÜNİVERSİTESİ BAHAR DÖNEMİ

Max - Min Heap Tree (Max ve Min Yığıt Ağaçları) Veri Yapıları ve Algoritmalar 2 - Mustafa EGE Ders Notları

HACETTEPE ÜNİVERSİTESİ BAHAR DÖNEMİ

Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM Veri Yapıları Dersi. Proje#2

YZM VERİ YAPILARI DERS#9: HASH FONKSİYONLARI

Ağaçlar (Trees) Ağaçlar (Trees)

Ağaç (Tree) Veri Modeli

YZM 2116 Veri Yapıları

Binary Tree nedir?uygulamas nasl yaplr?

YZM 2116 Veri Yapıları

YZM 2116 Veri Yapıları

AĞAÇLAR. Doç. Dr. Aybars UĞUR

Bölüm 6. Karma. Olcay Taner Yıldız. O. T. Yıldız, C && Java ile Veri Yapılarına Giriş, Boğaziçi Üniversitesi Yayınevi, / 31

AĞAÇLAR TREES. Doç. Dr. Aybars UĞUR

Veri Yapıları. Öğr.Gör.Günay TEMÜR Düzce Üniversitesi Teknolojis Fakültesi

YZM 2116 Veri Yapıları

Bölüm 8. Ayrık Küme. Olcay Taner Yıldız. O. T. Yıldız, C && Java ile Veri Yapılarına Giriş, Boğaziçi Üniversitesi Yayınevi, / 16

Sınav Dağılım & IMKB Endeks

YMT219 VERİ YAPILARI ÖDEV-1

A KİTAPÇIĞI. Final Soruları. Sayfa#1(A Kitapçığı) Süre: 60 Dakika

Final Sınavı Soruları Güz, Süre: 90 Dakika

Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM Yapay Zekâ Dersi. Final Soruları A KİTAPÇIĞI. Güz,

Yigin & Kuyruk {\} /\ Suhap SAHIN Onur GÖK

İNÖNÜ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2. SINIF 1. DÖNEM VERİ YAPILARI DERSİ LABORATUAR ÖDEVİ

AVL Agacı {\} /\ Suhap SAHIN Onur GÖK

Veri Yapıları. Ağaçlar

VERİ YAPILARI. Yrd. Doç. Dr. Murat GÖK Bilgisayar Mühendisliği Bölümü YALOVA ÜNİVERSİTESİ HASH TABLOLARI.

Arasınav Sınavı Soruları Güz 2017 Süre: 90 Dakika

Algoritmalar. İkili Arama Ağaçları. Bahar 2016 Doç. Dr. Suat Özdemir 1

Örnek Arasınav Soruları Güz 2017

BMB204. Veri Yapıları Ders 9. B+ Ağacı, Hash, Heap. Erdinç Uzun NKÜ Çorlu Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü

Bölüm 5. Ağaç. Olcay Taner Yıldız. O. T. Yıldız, C && Java ile Veri Yapılarına Giriş, Boğaziçi Üniversitesi Yayınevi, / 73

BMÜ-111 Algoritma ve Programlama. Bölüm 5. Tek Boyutlu Diziler

İNÖNÜ ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ 2. SINIF 1. DÖNEM VERİ YAPILARI DERSİ LABORATUAR ÖDEVİ

Week 9: Trees 1. TREE KAVRAMI 3. İKİLİ AĞAÇ DİZİLİMİ 4. İKİLİ ARAMA AĞACI 2. İKİLİ AĞAÇ VE SUNUMU > =

HASH(KARMA) TABLOSU VERİ YAPISI

/*Aşağıda ki kodları doğru şekilde anlar ve kullanırsanız java da sınıfları biraz da olsa anlamış olursunuz.*/

F(A, N, K) // A dizi; N, K integer if N<0 then return K; if A[N]>K then K = A[N]; return F(A, N-1, K);

YZM 2116 Veri Yapıları

YZM 2116 Veri Yapıları

Arama metodlarında temel işlem anahtarları karşılaştırmaktır.

Final Sınavı Örnek Soruları Güz 2018 Süre: 90 Dakika

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.

VERİ YAPILARI DERS NOTLARI BÖLÜM 1 GİRİŞ. Yard. Doç. Dr. Deniz KILINÇ

Veri Yapıları. Yrd. Doç. Dr. Şadi Evren ŞEKER

Bire-bir Sahiplik İlişkisi ile İlgili Sorular:

JAVA PROGRAMLAMA DİLİ ÖZELLİKLERİ

GÜZ DÖNEMİ AKT105 BİLGİSAYAR PROGRAMLAMA DERSİ 9. UYGULAMA

Veri Yapıları ve Algoritmalar dönem

YZM 2116 Veri Yapıları

Arasınav Soruları Güz, Süre: 90 Dakika

MAT213 Bilgisayar Programlama I

Alıştırma 1: Yineleme

Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM Biçimsel Diller ve Otomata Teorisi. Final Sınavı Soruları A KİTAPÇIĞI

BMT207 VERİ YAPILARI DATA STRUCTURE

Java da Program Denetimi ve Operatörler. Altuğ B. Altıntaş 2003 Java ve Yazılım Tasarımı - Bölüm 2 1

Yığıtın en üstündeki öğeyi değer olarak alır; ama onu yığıttan almaz, yerinde bırakır.

BİL-141 Bilgisayar Programlama I (Java)

Dağıtık Sistemler CS5001

DOSYA ORGANİZASYONU. Ağaç Yapıları ÖZLEM AYDIN TRAKYA ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

Öğr. Gör. Musa AYDIN Fatih Sultan Mehmet Vakıf Üniversitesi

BMÜ-111 ALGORİTMA VE PROGRAMLAMA AKIŞ KONTROLÜ YRD. DOÇ. DR. İLHAN AYDIN

RSA ANAHTAR DAĞITIMI VE RSA İLE DİJİTAL İMZA OLUŞTURMA

KUYRUKLAR QUEUES. Doç. Dr. Aybars UĞUR

DOSYA ORGANİZASYONU. Çarpışma çözümleme yöntemleri ÖZLEM AYDIN TRAKYA ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ

DENİZ HARP OKULU BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜM BAŞKANLIĞI DERS TANITIM BİLGİLERİ

BİL132 Bilgisayar Programlama II

Dosya Yapıları. (Başlangıçtan itibaren izlenen yaklaşımlar)

VERİ YAPILARI DERS NOTLARI BÖLÜM 5 QUEUE (KUYRUK) Yard. Doç. Dr. Deniz KILINÇ

Lambda İfadeleri (Lambda Expressions)

Binary Search. (Yarılama) Bölüm Dizide Bir Öğe Arama

BMÜ-101 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ LABORATUARI

#$% &'#(# Konular. Direct File Organization. Progressive Overflow Buckets Linear Quotient Brent s Method Binary Tree

DÖNGÜLER BMÜ-111 ALGORİTMA VE PROGRAMLAMA-I YRD. DOÇ. DR. İLHAN AYDIN

VERİ YAPILARI LİSTELER. Yrd. Doç. Dr. Murat GÖK Bilgisayar Mühendisliği Bölümü YALOVA ÜNİVERSİTESİ

Soru 1: Fahrenheit cinsinden verilen sıcaklığı Kelvin'e çeviren bir program yazınız. Aşağıdaki dönüşüm formülünü kullanabilirsiniz:

Veri Yapıları. Ağaçlar. Ağaçlar genel bilgi

Teori/Saat Uygulama/Saat Laboratuar/Saat AKTS BLM Dersin Amacı

ALGORİTMA VE PROGRAMLAMA I

D İ Z İ L E R A R R A Y S

6.Hafta Kıyım Fonksiyonu (Hashing), BST. Doğrudan erişim tabloları Çarpışmaları ilmekleme ile çözmek Kıyım fonksiyonu seçimi Açık adresleme

Örnek 1: Programı yazın ve çalıştırın.

Karşılaştırma İşlemleri ve Koşullu İfadeler

11- FONKSİYONLAR (FUNCTIONS)

Java da Soyutlama ( Abstraction ) ve Çok-biçimlilik ( Polymorphism )

DÖNGÜLER BMÜ-101 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ LABORATUARI BMÜ-101 ALGORİTMA VE PROGRAMLAMAYA DENEY-4 FÖYÜ GİRİŞ LABORATUARI.

OPERATÖRLER Alıştırmalar

HACETTEPE ÜNİVERSİTESİ BAHAR DÖNEMİ

Nesne tabanlı programlama nesneleri kullanan programlamayı içerir. Bir nesne farklı olarak tanımlanabilen gerçek dünyadaki bir varlıktır.

BBM Discrete Structures: Final Exam Date: , Time: 15:00-17:00

Programın Akışının Denetimi. Bir arada yürütülmesi istenen deyimleri içeren bir yapıdır. Söz dizimi şöyledir:

BIL222 Veri Yapıları ve Algoritmalar

Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM Biçimsel Diller ve Otomata Teorisi. Final Sınavı Örnek Soruları A0 KİTAPÇIĞI

YZM 2116 Veri Yapıları

Programlama Dilleri 3

BAĞLAÇLI LİSTELER LINKED LISTS

YZM 2116 Veri Yapıları

Transkript:

Sayfa#1 Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü YZM 2116 Veri Yapıları Dersi Final Sınavı Örnek Soruları Bahar 2018 Süre: 70 Dakika Adı ve Soyadı YANIT ANAHTARI Öğrenci Numarası Grubu İmza Tarih Not /100 Soru#1 (20 puan): Aşağıda bir hash tablosu verilmiştir: 0 1 2 3 4 5 6 a) Yukarıda verilen tabloya herhangi bir k nesnesi, H(k)=k mod 7 hash fonksiyonuna göre yerleştirilmektedir ve hashing işlemi sonucunda farklı anahtarlara sahip iki eleman için aynı değer üretildiği (çakışma olduğu) takdirde, doğrusal ölçüm (linear probing) yöntemi kullanılmaktadır. Buna göre, yukarıdaki hash tablosuna 8, 33, 15, 26, 22 anahtar değerlerinin yerleştirilmesi sonucu oluşacak tabloyu aşağıda belirtiniz: 0 1 2 3 4 5 6 8 15 22 33 26 b) Yukarıda verilen tabloya herhangi bir k nesnesi, H(k)=k mod 7 hash fonksiyonuna göre yerleştirilmektedir ve hashing işlemi sonucunda farklı anahtarlara sahip iki eleman için aynı değer üretildiği (çakışma olduğu) takdirde, karesel ölçüm (quadratic probing) yöntemi kullanılmaktadır. Buna göre, yukarıdaki hash tablosuna 6, 13, 14, 21, 28 anahtar değerlerinin yerleştirilmesi sonucu oluşacak tabloyu aşağıda belirtiniz: 0 1 2 3 4 5 6 13 14 28 21 6

Sayfa#2 Soru#2 (20 puan): 8, 2, 7, 6, 9, 3, 1 elemanlarının sırasıyla eklenmesi ile oluşan ve başlangıçta boş olan bir min-heap (minimum yığın ağacı) veri yapısını adım adım çizerek oluşturunuz. Oluşturduğunuz yığın ağacı yapısı üzerinde, 1 kez deletemin (minimum elemanın silinmesi) işleminin gerçekleşmesi sonucu oluşan yapıya ilişkin ağacı ve tüm ara adımları çizerek gösteriniz. Yığın ağacı: 1 kez deletemin işletildikten sonra:

Sayfa#3 Soru#3 (15 puan): Aşağıda verilen çizge üzerinde Kruskal algoritmasını işleterek minimum kapsayan ağaç problemini çözünüz. Adımlarınızı gösteriniz. Çözüm sonucu elde ettiğiniz minimum kapsayan ağacı şekil üzerinde belirtiniz.

Sayfa#4 Soru#4 (10 puan): 3, 9, 1, 7, 4, 5, 8, 2 elemanlarının sırasıyla eklenmesi ile oluşan ve başlangıçta boş olan bir ikili arama ağacını (binary search tree) adım adım çizerek oluşturunuz.

Sayfa#5 Soru#5 (10 puan): Aşağıda bir ikili arama ağacı (binary search tree) verilmiştir: Buna göre, yukarıda verilen ikili arama ağacında 7 değerinin silinmesi sonrası oluşan ağaç yapısını, ara aşamaları da çizerek belirtiniz. YA DA Yukarıdaki, Her iki ağaç doğru çözümdür. Tam puan ile notlandırılır.

Sayfa#6 Soru#6 (25 puan): Verilen bir ikili arama ağacının heap (yığın ağacı) veri yapısı özelliği taşıyıp taşımadığını belirleyen bir algoritma yazınız. [Gerçekleştirimde, C#, Java, C vb. diller kullanılabilir. Çözüm, sözde kod ile algoritmik olarak da ifade edilebilir.] /* Java program to checks if a binary tree is max heap ot not */ // A Binary Tree node class Node int key; Node left, right; Node(int k) key = k; left = right = null; class Is_BinaryTree_MaxHeap /* This function counts the number of nodes in a binary tree */ int countnodes(node root) if(root==null) return 0; return(1 + countnodes(root.left) + countnodes(root.right)); /* This function checks if the binary tree is complete or not */ boolean iscompleteutil(node root, int index, int number_nodes) // An empty tree is complete if(root == null) // If index assigned to current node is more than // number of nodes in tree, then tree is not complete if(index >= number_nodes) return false; // Recur for left and right subtrees return iscompleteutil(root.left, 2*index+1, number_nodes) && iscompleteutil(root.right, 2*index+2, number_nodes); // This Function checks the heap property in the tree. boolean isheaputil(node root) // Base case : single node satisfies property if(root.left == null && root.right==null) // node will be in second last level if(root.right == null) // check heap property at Node // No recursive call, because no need to check last level return root.key >= root.left.key;

Sayfa#7 else // Check heap property at Node and // Recursive check heap property at left and right subtree if(root.key >= root.left.key && root.key >= root.right.key) return isheaputil(root.left) && isheaputil(root.right); else return false; // Function to check binary tree is a Heap or Not. boolean isheap(node root) if(root == null) // These two are used in iscompleteutil() int node_count = countnodes(root); if(iscompleteutil(root, 0, node_count)==true && isheaputil(root)==true) return false; // driver function to test the above functions public static void main(string args[]) Is_BinaryTree_MaxHeap bt = new Is_BinaryTree_MaxHeap(); Node root = new Node(10); root.left = new Node(9); root.right = new Node(8); root.left.left = new Node(7); root.left.right = new Node(6); root.right.left = new Node(5); root.right.right = new Node(4); root.left.left.left = new Node(3); root.left.left.right = new Node(2); root.left.right.left = new Node(1); if(bt.isheap(root) == true) System.out.println("Given binary tree is a Heap"); else System.out.println("Given binary tree is not a Heap");