• 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 Sınavı, 02.01.2018, 13:00, D-2, D-9 Süre : 90 Dakika

CEVAPLAR

void print(DoublyNode* node, bool first) {

if (first)

cout << node->elem << endl;

if (node->next != trailer) print(node->next, false);

else

cout << node->elem << endl;

}

int main() {

DoublyLinkedList list;

list.insertOrdered("Paul", 720);

list.insertOrdered("Rose", 590);

list.insertOrdered("Anna", 660);

list.insertOrdered("Mike", 1105);

list.insertOrdered("Rob", 750);

list.insertOrdered("Jack", 510);

list.insertOrdered("Jill", 740);

list.print(list.header->next, true);

}

1.

Yukarıdaki programın çıktısı nedir? (25P)

Jack Mike

void traverse(Node* v) {

stack<Node*> stl_stack;

stl_stack.push(v);

while (!stl_stack.empty()) {

Node* current = stl_stack.top();

if ((current->right == NULL)

&& (current->left == NULL)) cout << current->elt << " ";

stl_stack.pop();

if (current->right != NULL)

stl_stack.push(current->right);

if (current->left != NULL)

stl_stack.push(current->left);

} }

2.

main()’de aşağıdaki ağacın rootu ile çağrıldığı

varsayılan traverse() fonksiyonunun çıktısı nedir?

(25P)

1 3 5 7 9 11 13 15

8 4

2 6

3

5 7

12

10 14

9 11 13 15

1

(2)

void insertOrdered(DoublyNode* newNode, DoublyNode* current) {

if(... && ...)

insertOrdered(newNode, current->next);

else {

newNode->next = current->next;

newNode->prev = current;

current->next->prev = newNode;

current->next = newNode;

} }

int main() {

DoublyLinkedList list; DoublyNode* newNode;

newNode = new DoublyNode;

newNode->elem = "Paul"; newNode->score = 720;

list.insertOrdered(newNode, list.header);

newNode = new DoublyNode;

newNode->elem = "Rose"; newNode->score = 590;

list.insertOrdered(newNode, list.header);

newNode = new DoublyNode;

newNode->elem = "Anna"; newNode->score = 660;

list.insertOrdered(newNode, list.header);

newNode = new DoublyNode;

newNode->elem = "Mike"; newNode->score = 1105;

list.insertOrdered(newNode, list.header);

}

3.

insertOrdered() fonksiyonunu tamamlayınız. (25P) Not  Trailer’ın score değerini 0 varsayınız.

Yanlış cevaptan 5P kırılacaktır.

(A) if ((newNode->score >= current->score) && (current != trailer))

(B) if ((newNode->score >= current->next->score) && (current != trailer))

(C) if ((newNode->score >= current->score) && (current->next != trailer))

(D) if ((newNode->score >= current->next->score) && (current->next != trailer))

Zig

1

2 6

5 3

4

Zig-Zig Zig-Zig Zig Zig-Zig Zig-Zig Zig

4.

Yukarıdaki işlemlerle oluşturulan Splay Ağacına verilerin hangi sırada eklendiğini bulunuz. (25P)

4 3 5 2 6 1

1

2 6 P X

3 5

4

1 P 2 X

3 5

4 6

G

P 2 X

3 5

4 6

1 G

5 P

X 3

6 G 2 1

4

5 P

X

3 6

G 2

4

5 P

X 3 G 2

4 6

P X 5 2 G

6 4 3

P X 5 2

4 3

5

3 2

4 P X

G

P

X G

4 P X

5 G 3 2

P 4 X 5

G 3

P 4

X

G 3 5 4

3

5 P

X G

P

X 4

3 P X 3

4

4 5

4

3

2

Referanslar

Benzer Belgeler

Mühendislik Fakültesi Sınav Uygulama Yönergesi‘ndeki kurallara uyulmalıdır.. insertOrdered()

Recursive çağrıların detaylı anlatıldığı bir belge

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