• Sonuç bulunamadı

2. 1. Öğr.Gör. Ömer ÇAKIR BIL 2001 90 Dakika Bilgisayar Mühendisliği Bölümü Sınavı , 26.01.2018, 15:00, D2 Süre : Karadeniz Teknik Üniversitesi Veri Yapıları Bütünleme

N/A
N/A
Protected

Academic year: 2021

Share "2. 1. Öğr.Gör. Ömer ÇAKIR BIL 2001 90 Dakika Bilgisayar Mühendisliği Bölümü Sınavı , 26.01.2018, 15:00, D2 Süre : Karadeniz Teknik Üniversitesi Veri Yapıları Bütünleme"

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ı

Bütünleme Sınavı, 26.01.2018, 15:00, D2 Süre : 90 Dakika

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

İMZA : ………...

DEĞERLENDİRME

[...] ...

Mühendislik Fakültesi Sınav Uygulama Yönergesi‘ndeki kurallara uyulmalıdır. Sorular Bölüm Program Çıktıları’ndan 1,4,12 ile ilişkilidir.

void traverse(Node* v) {

if (v->left != NULL) {

traverse(v->left);

}

if (v->right != NULL) {

cout << v->elt << " ";

traverse(v->right);

} }

1. main()

’de aşağıdaki ağacın

root

u ile çağrıldığı varsayılan yukarıdaki

traverse()

fonksiyonunun çıktısı nedir? (25P)

8 4

2 6

3 5 7

12

10 14

9 11 13 15 1

void traverse(Node* v) {

stack<Node*> stl_stack;

Node* current = v;

while (true) {

if (current != NULL) {

stl_stack.push(current);

current = current->left;

} else {

if (stl_stack.empty()) {

return;

} else {

current = stl_stack.top();

if ((current->right != NULL)

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

stl_stack.pop();

current = current->right;

} }

} }

2.

main()’de soldaki ağacın rootu ile çağrıldığı varsayılan traverse() fonksiyonunun çıktısı nedir? (25P)

(2)

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

if(... && ...)

insertOrdered(newNode, current->next);

else {

newNode->next = current;

newNode->prev = current->prev;

current->prev->next = newNode;

current->prev = 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() fonksiyonundaki ... satırlarına aşağıdaki kodlardan hangisi yazılmalıdır? (25P) Not  Header veTrailer’ı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 6

5 2

4 3

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)

6

Referanslar

Benzer Belgeler

ile temsil edilen yerlere ait kodlar sırasıyla aşağıdakilerden

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ırlara

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ırlara

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

Yukarıda dictionary.txt’de verilen kelimeleri Hash() fonksiyonunu ve çakışma çözümleme yöntemi olarak linear probing’i kullanarak relative.txt’ye yazınız.. Ayrıca

Yukarıda dictionary.txt’de verilen kelimeleri Hash() fonksiyonunu ve çakışma çözümleme yöntemi olarak linear probing’i kullanarak relative.txt’ye yazınız.. Ayrıca

Yukarıda dictionary.txt’de verilen kelimeleri Hash() fonksiyonunu ve çakışma çözümleme yöntemi olarak linear probing’i kullanarak relative.txt’ye yazınız.. Ayrıca

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