



Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Community
Ask the community for help and clear up your study doubts
Discover the best universities in your country according to Docsity users
Free resources
Download our free guides on studying techniques, anxiety management strategies, and thesis advice from Docsity tutors
design/analysis/ 2018/ algorithm
Typology: Cheat Sheet
1 / 5
This page cannot be seen from the preview
Don't miss anything!
Süre: 75 Dakika
Manisa Celal Bayar Üniversitesi Yazılım Mühendisliği Bölümü
Güz 2017
Adı ve Soyadı YANIT ANAHTARI Öğrenci Numarası Grubu İmza Tarih Not /
Soru#1 (20 puan)
Aşağıda verilen algoritmaya dayalı olarak seçeneklerdeki soruları yanıtlayınız:
ALGORİTMA Enigma ( A [0.. n-1, 0.. n-1 ) //Girdi: A [0.. n-1, 0.. n-1 ] reel sayılardan oluşan bir matris for i 0 to n-2 do for j i+1 to n-1 do if A [ i,j ]A[ j,i ] return false return true
a) Algoritmanın neyi hesapladığını belirleyiniz. b) Algoritmanın temel operasyonu nedir? c) Algoritmanın temel operasyonu kaç kez işletilmektedir? d) Algoritmanın etkinlik sınıfını belirleyiniz. e) Algoritma ile aynı işlemi gerçekleştiren daha etkin bir algoritma tasarlanabilir mi? Eğer mümkünse algoritmanızı sözde kod biçiminde belirtiniz.
a) Algoritma girdi matrisi simetrik ise “True” aksi takdirde “False” değeri döndürmektedir. b) İki matris elemanının karşılaştırılması.
c)
d) e) Algoritma optimaldir. Belirtilen problemi çözen herhangi bir algoritmanın en kötü durumda matrisin üst bölümündeki ( n-1)n/2 elemanı, matrisin alt bölümündeki ( n-1)n/ eleman ile karşılaştırmak zorundadır.
Soru#2 (20 puan)
a) 𝑀(𝑛) = 3𝑀(𝑛 − 1) + 2, 𝑛 > 1 𝑣𝑒 𝑀(1) = 2 𝑖ç𝑖𝑛.
Yukarıda verilen özyineleme bağıntısını geriye doğru yerine koyma (backward substitution) yöntemi kullanarak çözünüz.
b) 𝐶𝑤(𝑛) = 𝐶𝑤(𝑛 − 1) + 𝑛 − 1, 𝑛 > 1 𝑣𝑒 𝐶(1) = 0 𝑖ç𝑖𝑛.
Yukarıda verilen özyineleme bağıntısını geriye doğru yerine koyma (backward substitution) yöntemi kullanarak çözünüz.
Soru#4 (20 puan)
A[0.. n - 2] dizisi, 1’den n ’ye kadar n - 1 tamsayıyı artan sırada içermektedir. Ancak, belirtilen değer aralığındaki bir tamsayı eksiktir. Dizideki eksik olan sayıyı belirlemek için bir algoritma tasarlayıp algoritmanızın sözde kodunu yazınız.
Problem azalt ve fethet yaklaşımına dayalı bir algoritma tasarlanarak çözülebilir. Eğer sıralı listenin orta elemanı A[m] içeriğini m+1 ile karşılaştırırsak, algoritmanın eksik değeri aramaya nereden devam etmesi gerektiğini belirleyebiliriz. Eğer A[m]=m+1 ise eksik olan değer m+1’den büyüktür. Dolayısı ile dizinin sağ tarafında aramaya devam edilebilir. Aksi takdirde, aramaya sol tarafta devam edilmelidir.
Soru#5 (20 puan)
Yukarıda verilen yönlü çizgeler üzerinde, derinlik öncelikli arama algoritmasını uygulayarak topolojik sıralama problemini çözünüz.