• Sonuç bulunamadı

Karadeniz Teknik Üniversitesi Bilgisayar Mühendisliği Bölümü

N/A
N/A
Protected

Academic year: 2021

Share "Karadeniz Teknik Üniversitesi Bilgisayar Mühendisliği Bölümü "

Copied!
2
0
0

Yükleniyor.... (view fulltext now)

Tam metin

(1)

Karadeniz Teknik Üniversitesi Bilgisayar Mühendisliği Bölümü

Öğr.Gör. Ömer ÇAKIR

BIL 2001 Veri Yapıları Final, 04.01.2020, 10:00

Süre : 100 Dakika

NUMARA : ……… AD SOYAD : ………...

İMZA : ………...

DEĞERLENDİRME

[...] ...

Öğrenciler, Mühendislik Fakültesi Sınav Uygulama Yönergesi‘ndeki kurallara uymalıdırlar.

Sınav Soruları Bölüm Program Çıktıları’ndan 1,4,12 ile ilişkilidir.

void traverse(TreeNode* v) {

if (v->left != NULL) {

// (A)

traverse(v->left);

// (B) }

if (v->right != NULL) {

// (C)

traverse(v->right);

// (D) }

}

1.

main()’de aşağıdaki ağacın rootu ile çağrıldığı varsayılan traverse() fonksiyonunda bazı satırlar (A) (B) (C) (D) şeklinde etiketlendirilmiştir. Bu satırların herbiri cout << v->elem << " "; olduğunda elde edilen çıktılardan ikisi aynı olmaktadır. Hangi etiketlerde çıktılar aynıdır ve çıktı nedir? (25P)

(A) (B) (C) (D)

Çıktı

8 4

2 6

3

5 7

12

10 14

9 11 13 15 1

2.

Aşağıda verilen sayılar ikili ağaca eklendiğinde ağaçlardan biri diğerlerinden farklı olmaktadır. Farklı olan ağaç hangisidir? (25P)

(A)

8 4 12 2 6 10 14 1 3 5 7 9 11 13 15

(B)

8 12 4 14 10 6 2 15 13 11 9 7 5 3 1

(C)

8 4 2 1 3 6 5 7 12 10 9 11 14 13 15

(D)

8 4 6 7 5 2 3 1 12 14 15 13 10 11 9

(E)

8 12 10 14 9 11 13 15 4 2 6 1 3 5 7

(F)

8 4 2 6 1 3 5 7 12 10 14 9 11 13 15

(G)

8 12 4 2 3 1 10 9 11 6 5 7 14 15 13

(H)

8 4 12 2 6 7 5 3 1 14 10 15 13 11 9

(I)

8 12 4 2 3 1 10 9 11 6 5 7 13 15 14

(J)

8 12 4 2 10 14 6 7 5 15 13 9 11 1 3

(2)

void insertOrdered(string& e, int& i) {

DoublyNode* newNode = new DoublyNode;

newNode->elem = e;

newNode->score = i;

DoublyNode* current = header->next;

while (current != trailer) {

if (newNode->score >= current->score) current = current->next;

else

break;

}

newNode->next = current;

newNode->prev = current->prev;

... = ...;

... = ...;

}

3.

insertOrdered() fonksiyonundaki ... satırları için aşağıda verilen kodlardan hangisi listeye hatalı ekleme yapar? (25P) Yanlış cevaptan 5P kırılacaktır.

(A) current->prev->next = newNode;

newNode->next->prev = newNode;

(B) newNode->next->prev = newNode;

current->prev->next = newNode;

(C) current->prev->next = newNode;

current->prev = newNode;

(D) newNode->prev->next = newNode;

newNode->next->prev = newNode;

(E) newNode->next->prev = newNode;

newNode->prev->next = newNode;

8

4

2 6

12 10 14

24

20 17 22 16

33 34 26 29

28 30 32 31

4.

Yukarıdaki 2-3-4 ağacından 16’yı siliniz. Silinmiş halinin tamamını aşağıya çiziniz.

İpucu → 16’nın yerine 17’yi getiriniz. (25P)

Referanslar

Benzer Belgeler

• Bu amaca hizmet etmek için Fen Edebiyat Fakültesi Bünyesinde 1993 yılında İstatistik ve Bilgisayar Bilimleri Bölümü kurulmuş ve 1994-1995 eğitim öğretim yılı

Düğümleri dairesel bağlı listeye score değerlerine göre küçükten büyüğe sıralı ekleyen insertOrdered() fonksiyonunda ... ile temsil edilen satır için aşağıda

Düğümleri dairesel bağlı listeye score değerlerine göre küçükten büyüğe sıralı ekleyen insertOrdered() fonksiyonunda ... ile temsil edilen satır için aşağıda

Cep telefonlarının saate bakmak için bile olsa herhangi bir amaçla kullanılması yasaktır.. Telefon kapalı ve

Cep telefonlarının saate bakmak için bile olsa herhangi bir amaçla kullanılması yasaktır.. Telefon kapalı ve

Karadeniz Teknik Üniversitesi Bilgisayar Mühendisliği

Öğr.Gör. Cep telefonlarının saate bakmak için bile olsa herhangi bir amaçla kullanılması yasaktır. Telefon kapalı ve cepte olmalıdır. Sınavın başında sorular

Kuyruk veri yapısında veri ekleme (enqueue) kuyruk sonuna yapıldığından dairesel bağlı listenin add fonksiyonunun peşine, cursor yeni eklenene son eleman olarak işaret etsin