Programlama Ve Algoritmalar Final 9. Deneme Sınavı
Toplam 20 Soru1.Soru
Düğümleri birbirine bağlayan kenara ne ad verilir?
Kök |
Dal |
Yol |
Yol uzunluğu |
Düğüm yüksekliği |
Düğümleri birbirine bağlayan kenara dal adı verilir.
2.Soru
Çizge üzerinde enine aramaya yönelik bir C program kodunda kuyruk içerisinde eleman kalıp kalmadığını kontrol etmek için aşağıdaki fonksiyonlardan hangisi kullanılır?
dugum_ekle |
kuyruk_bos |
enine_arama_algoritması |
dugum_goruntule |
kuyruga_ekle |
kuyruk_bos fonksiyonu kuyruğun içerisinde eleman kalıp kalmadığını kontrol etmek için kullanılmaktadır.
3.Soru
1’den 56’ya kadar olan sayıların karelerinin toplamı kaçtır?
9016,5 |
4508,25 |
3005,5 |
60116 |
12022 |
N=56 olduğuna göre,
4.Soru
I. Yığın ağacının en küçük elemanı, ağacın kökünde yer almaktadır..
II. Yığın ağaçları, bir veri kümesi içerisinde en küçük elemanın hızlıca bulunmasını sağlayan bir veri yapısıdır.
III. Yığın ağacının en küçük elemanı ağaçtan çıkarılırken, ağacın son düzeyinin en solundaki düğüm ile ağacın kökü yer değiştirilir.
Yukarıda yığın ağaçlar ile ilgili verilen bilgilerden hangileri doğrudur?
I ve III |
II ve III |
I ve II |
Yalnız II |
Yalnız III |
Yığın ağacının en küçük elemanı ağaçtan çıkarılırken, ağacın son düzeyinin en sağındaki düğüm ile ağacın kökü yer değiştirilir. Dolayısıyla doğru cevap C'dir.
5.Soru
Aranan elemanın dizinin tüm elemanlarıyla sıra sıra karşılaştırılması ilkesine dayanan ve bilinen en temel arama algoritması olan arama algoritması nedir?
Ardışık arama |
İkili arama |
Çoklu arama |
Tekli arama |
Sıralı arama |
Ardışık arama, bilinen en temel arama algoritmasıdır ve çalışma prensibi oldukça basittir. Bu algoritma, aranan elemanın dizinin her bir elemanıyla sırasıyla karşılaştırılması ilkesine dayanır.
6.Soru
Aşağıdakilerden hangisi bir algoritmanın verilen asimptotik gösterime göre karmaşıklık derecesini gösterir?
Çalışma zamanı |
Zaman karmaşıklığı |
Alan karmaşıklığı |
Çalışma karmaşıklığı |
Alan zamanı |
Zaman karmaşıklığı, bir algoritmanın verilen asimptotik gösterime göre karmaşıklık derecesini gösterir.
7.Soru
Genellikle optimizasyon problemlerinde kullanılan, problemin çözümünde tüm olasılıkları deneyen algoritmalar aşağıdakilerden hangisiyle isimlendirilmektedir?
Kaba Kuvvet Algoritmaları |
Geri İzlemeli Algoritmalar |
Böl ve Yönet Algoritmaları |
Açgözlü Algoritmalar |
Özyinelemeli Algoritmalar |
Geri izlemeli algoritmalar, genellikle optimizasyon problemlerinde kullanılan, problem çözümünde tüm olasılıkları deneyen algoritmalardır. Bu algoritmalarda çözüm kademeli şekilde oluşturulur. Algoritma çözüm aşamasında ilerlerken, olası çözüm yollarının hepsini deneyerek bir sonraki adıma geçmeye çalışır. Algoritmanın denediği çözüm yolundan sonuç alınamazsa, algoritma bir önceki adımda bulunan diğer olası çözüm yollarına geri döner.
8.Soru
32 elemanlı bir dizi için ikili arama algoritmasının en kötü durum zaman karmaşıklığı kaç olur?
3 |
4 |
2 |
5 |
6 |
9.Soru
Elemanları [13 9 21 6 8 4 3] olan dizi üzerinde ardışık arama algoritması çalıştırılarak 6 sayısı aranmaktadır. Kaçıncı karşılaştırmada sonuca ulaşılır?
3 |
4 |
5 |
2 |
6 |
Ardışık arama, en temel arama algoritmasıdır. Bu algoritmanın çalışması için dizinin sıralı olmasına ihtiyaç bulunmamaktadır. Aranan eleman, sırasıyla dizinin her bir konumundaki eleman ile karşılaştırılır. Aranan elemanın değerinin dizinin elemanlarından birisiyle aynı olduğu görülürse algoritma başarılı bir şekilde sonlandırılır. Eğer aranan eleman dizinin içerisinde mevcut değilse, karşılaştırmalar dizinin ilk elemanından son elemanına kadar sürecektir. Soruda verilen dizide ardışık arama logaritması çalıştırılarak ilk olarak 13 sonra 9 sonra 21 sonra 6 bulunur. Diğer bir deyişle 6 sayısına 4. karşılaştırmada ulaşılır. .
10.Soru
Düğümler arasındaki kenar bağlantıları üzerinde sıfırdan farklı sayısal değerlerin yer aldığı çizge türü aşağıdakilerden hangisidir?
Yönlü çizge |
Yönsüz çizge |
Tam çizge |
Ağırlıklandırılmış çizge |
Orta çizge |
Ağırlıklandırılmış çizge (weighted graph) düğümler arasındaki kenar bağlantıları üzerinde sıfırdan farklı sayısal değerlerin yer aldığı çizge türüdür.
11.Soru
Elemanları [5,4,8,2] olan bir dizi baloncuk sıralaması algoritması ile küçükten büyüğe doğru sıralanmak istenildiğinde algoritmanın adımları sonrasında elde edilecek diziler aşağıdaki seçeneklerden hangisinde doğru sırayla verilmiştir?
[4,5,2,8], [4,2,5,8], [2,4,5,8] |
[2,4,5,8], [4,5,2,8], [2,4,5,8] |
[2,5,8,4], [5,2,4,8], [2,4,5,8] |
[4,2,5,8], [2,4,8,5], [2,4,5,8] |
[4,5,8,2], [4,5,8,2], [2,4,5,8] |
Algoritmayı çözmeye başladığımızda öncelikle büyük eleman ile küçük elemanın yerleri değiştirilerek, küçük elemanı öne alıp büyük elemanı sona doğru kaydırırız. Bu işlemi diğer elemanlar içinde gerçekleştiririz. Böylelikle oluşan elemanlar küçükten büyüğe doğru sıralanmış olur.
12.Soru
Algoritmaların analizini yaparken aşağıdakilerden hangisinde iki döngünün de çalışma sayıları bulunur ve bu sayılar birbiriyle toplanır?
for döngüsü |
iç içe for döngüsü |
iki tane arka arkaya for döngüsü |
if/else deyimi |
harmonik toplam |
Arka arkaya iki tane döngü söz konusu olduğunda, iki döngünün de çalışma sayıları bulunur ve bu sayılar birbiriyle toplanır.
13.Soru
Ağırlıklandırılmış çizgelerde bir başlangıç düğümü ile diğer düğümler arasındaki en kısa mesafeyi tespit etmek için kullanılan arama algoritması aşağıdakilerden hangisidir?
Önce derinliğine arama algoritması |
Enine arama algoritması |
Dijkstra en kısa yol algoritması |
Boyuna arama algoritması |
Doğrudan arama algoritması |
Dijkstra algoritması, ağırlıklandırılmış çizgelerde bir başlangıç düğümü ile diğer düğümler arasındaki en kısa mesafeyi tespit etmek için kullanılır. Bu algoritmanın amacını açıklamak için örnek olarak Türkiye haritasındaki şehirlerin bir çizge üzerinde düğümler olarak gösterildiğini varsayalım. Düğümler arasındaki ağırlıklandırılmış kenar bağlantıları ise her iki şehir çii arasındaki uzaklığı temsil edecektir. Bu bilgilerin yardımıyla Dijkstra algoritması kullanılarak, belirtilen bir şehir ile diğer bütün şehirlerarasındaki en kısa yollar bulunabilir. Sonuçta, çıktı olarak farklı şehirlerarasındaki en kısa mesafeler ve izlenmesi gereken yollar elde edilecektir. Bu algoritmanın başlangıcında, başlangıç düğümü ile diğer düğümler arasındaki uzaklıkların tamamının sonsuz olduğu varsayılır. Algoritma, düğümler arasındaki en kısa yolları aradığı için düğümler arasında daha kısa yollar bulundukça, sonsuz değeri ilgili yolun uzunluğu ile değiştirilir.
14.Soru
Elemanları [2 65 11 23 -3 4 0 9 7] olan bir dizide ardışık arama yöntemiyle önce 5 daha sonra 10 aranmaktadır. Bu işlemler için toplamda kaç karşılaştırma yapmak gerekir?
10 |
15 |
18 |
20 |
22 |
Dizi incelendiğinde hem 5 hem 10 bu dizi içinde yer almamakta. Dolayısıyla baştan sona tüm dizi elemanları kontrol edilmektedir. Dizi eleman sayısı 9 olduğundan 2*9 = 18 karşılaştırma yapılması gerekir.
15.Soru
Ardışık arama algoritmasına yönelik bir C program kodunda hangi fonksiyon ile program kodları çalışmaya başlar?
main |
ardisik_arama |
for |
ardisik_arama.c |
sizeof |
Program kodları, main fonksiyonu ile çalışmaya başlamaktadır. Daha sonra, değerleri önceden belirlenmiş olan 5 elemanlı bir dizi ve aranacak eleman ardisik_arama isimli C fonksiyonuna parametre olarak gönderilmektedir. Algoritma kodları, bir adet for döngüsü içermektedir ve bu döngü karşılaştırma işlemlerinin akışını sağlamaktadır.
16.Soru
Baloncuk sıralaması algoritmasının en kötü durumdaki zaman karmaşıklığı değeri nedir?
O(n²) |
log(n) |
O(n*log(n)) |
O(n*log(n²)) |
O(log(n)) |
Baloncuk sıralaması algoritmasının en kötü durumdaki zaman karmaşıklığı değeri O(n²)’dir.
17.Soru
Aşağıdakilerden hangisi kenar bağlantılarının yönleri temsil eden oklar ile gösterilmediği çift yönlü olan çizgedir?
Yönlü çizge |
Yönsüz çizge |
Ağırlıklandırılmış çizge |
Toplu çizge |
Karmaşık çizge |
Yönsüz çizge, kenar bağlantılarının yönleri temsil eden oklar ile gösterilmediği çift yönlü olan çizgedir.
18.Soru
Aşağıdakilerden hangisi özetleme tablolarında verilen bir anahtar için tablodaki indis değerini hesaplayıp döndüren fonksiyondur?
Hash |
For |
Return |
Devide |
Back |
Özetleme tablolarındaki genel çalışma mantığı, verileri N boyutlu bir dizide tutmak ve verilere erişim için sayı veya dizgiden oluşan anahtarı kullanmaktır. Özetleme tablosunda saklanacak bir veri için hash fonksiyonuna anahtar değeri gönderilir, fonksiyonun hesapladığı değer, verinin dizide tutulacağı indis olur. Hash fonksiyonu özetleme tablolarında verilen bir anahtar için tablodaki indis değerini hesaplayıp döndüren fonksiyondur.
19.Soru
Aşağıda baloncuk sıralaması algoritması bir diziyi artan biçimde sıralamaktadır.
1 void baloncuk_siralamasi(int dizi[], int 4 for (i = 0; i < (boyut - 1); i++) 5 { 6 for (j = 0; j < boyut - i - 1; j++){ 7 if (dizi[j] > dizi[j + 1]) { 8 gecici = dizi[j]; 9 dizi[j] = dizi[j + 1]; 10 dizi[j+1] = gecici; 11 } 12 printf(“\nAdim %d.%d: “, i + 1, j + 1); 13 dizi_yazdir(dizi, boyut); 14 } 15 } 16 } |
Bu algoritmada neyi değiştirirsek dizi azalan şekilde sıralanır?
Satır void baloncuk_siralamasi int boyut, int dizi) olarak değiştirilmeli |
4. Satır for (i = boyut-1; i > 0, i--) olarak değiştirilmeli |
7. Satır if (dizi[j] < dizi[j + 1]) { olarak değiştirilmeli |
9. Satır dizi[j+1] = dizi[j]; olarak değiştirilmeli |
10. Satır dizi[j] = geçici; olarak değiştirilmeli |
Algoritma incelendiğinde sıralamanın en önemli noktasının dizi elemanlarının karşılaştırılması olduğu görülür. Bu
karşılaştırma da 7 satırda yapılmaktadır. Dolayısıyla iki eleman karşılaştırılırken > yerine < kullanıldığında azalan sıralama ortaya çıkar.
20.Soru
Elemanları [13 9 21 6 8 4 3] olan dizi üzerinde ardışık arama algoritmasının çalıştırılmasıyla 5 sayısı aranmaktadır. En kötü ihtimalde kaç adet karşılaştırma yapılması gerekir?
3 |
4 |
5 |
2 |
7 |
Aranan 5 sayısı dizide bulunmamaktadır. Bu sebeple dizinin elemanlarının tamamının aranan eleman ile karşılaştırılması söz konusu olmaktadır. 7 elemanlı bir dizi için en kötü ihtimalde 7 adet karşılaştırma yapılması gerekmektedir.
-
- 1.SORU ÇÖZÜLMEDİ
- 2.SORU ÇÖZÜLMEDİ
- 3.SORU ÇÖZÜLMEDİ
- 4.SORU ÇÖZÜLMEDİ
- 5.SORU ÇÖZÜLMEDİ
- 6.SORU ÇÖZÜLMEDİ
- 7.SORU ÇÖZÜLMEDİ
- 8.SORU ÇÖZÜLMEDİ
- 9.SORU ÇÖZÜLMEDİ
- 10.SORU ÇÖZÜLMEDİ
- 11.SORU ÇÖZÜLMEDİ
- 12.SORU ÇÖZÜLMEDİ
- 13.SORU ÇÖZÜLMEDİ
- 14.SORU ÇÖZÜLMEDİ
- 15.SORU ÇÖZÜLMEDİ
- 16.SORU ÇÖZÜLMEDİ
- 17.SORU ÇÖZÜLMEDİ
- 18.SORU ÇÖZÜLMEDİ
- 19.SORU ÇÖZÜLMEDİ
- 20.SORU ÇÖZÜLMEDİ