⚠️ Bu portal eğitim amaçlıdır. İçerikler ticari amaçla kullanılamaz. Detaylı bilgi
4. Dönem BİL204U

Algoritmalar

Toplam 230 soru bulundu.

Ders Materyalleri

Algoritmalar - Tüm Sorular

Ünite 1

Soru 1

Bir problemin çözümü için sonlu sırada iyi tanımlanmış kurallar kümesine ............ denir.
Yukarıdaki boşluğu aşağıdaki kavramlardan hangisi doğru tamamlar?

Seçenekler

A
İşlem
B
Sayma
C
Algoritma
D
Döngü
E
Dizi
Açıklama:
Algoritma kavramı “bir problemin çözümü için sonlu sırada iyi tanımlanmış kurallar kümesi” şeklinde tanımlanmaktadır.

Soru 2

MÖ 240 yılında matematikçiler sayıların en büyük ortak bölenlerini bulmak için hangi algoritmadan yararlanmışlardır?

Seçenekler

A
Eratosten kalburu algoritması
B
Frekans analizine dayalı şifreleme algoritması
C
Öklid algoritması
D
Lambda Cebiri
E
Turing Makinesi
Açıklama:
Algoritma kavramı Antik Çağlardan beri bilinmektedir. Babilli (MÖ 2500) ve Mısırlı (MÖ 1550)
matematikçilerin bölme işlemleri için algoritmalar kullandıkları bilinmektedir. Yunanlı (MÖ 240) matematikçilerin asal sayıları bulmak için Eratosten Kalburunu, en büyük ortak bölenleri bulmak için de Öklid algoritmasını kullandıkları bilinmektedir. 9. yüzyılda Kindî gibi Arap matematikçilerin şifreleri kırabilmek
için frekans analizlerine dayalı şifreleme algoritmaları kullanmıştır. Tarihte Mısır, Yunan ve Roma uygarlıklarında, hesaplama işlerinin herkes tarafından seri biçimde yapılabilmesi amacıyla dört işlem ve bazı
basit fonksiyonlar için algoritmaların yaygın olarak kullanıldığı görülmüştür. Daha yakın zamanlarda ise
(18.-19. yy.) Araplar ve Ruslar tarafından iki temel çarpma algoritması geliştirilmiş ve kullanılmıştır.

Soru 3

  1. Girdi
  2. Çıktı
  3. Kapalılık
  4. Sonsuzluk
  5. Bağımsızlık
Yukarıda yer alan bilgilerden hangisi ya da hangileri bir algoritmada kesinlikle bulunması gereken özelliklerdendir?

Seçenekler

A
I-III
B
II-IV
C
I-II-III
D
I-II-V
E
II-IV-V
Açıklama:
Bir algoritmanın aşağıdaki özelliklere sahip olması gerekir.
1. Girdi: Girdi, algoritmanın üzerinde işlem yaparak çıktı üreteceği veri kümesini tanımlar. Algoritmanın girdi olarak alacağı verinin karakteristiklerinin (ör: pozitif sayılar listesi) çok iyi tanımlanması gerekir. Aksi hâlde algoritmanın üzerinde işlem yapamayacağı verilerle karşılaşarak hata üretmesi
ya da yanlış karakteristiklerden dolayı hatalı çıktılar üretmesi olasılığı belirecektir. Örneğin bir
sayı listesini sıralamak üzere üretilmiş bir algoritmaya metin cinsinden girdi gönderilmesi sorun
yaratacaktır. Bu bölümde Algoritma Türleri başlığı altında kısaca açıklanan Rastgele Algoritmalar
gibi algoritmalar dışarıdan özel bir girdi almasalar da üretecekleri çıktılar için kendileri iyi tanımlı
girdiler (ör: Kartezyen düzlemde düzlemde (0,0) ile (1,1) noktaları arasında kalan alan içindeki
noktalar kümesi) üretmektedir.
2. Çıktı: Çıktı, verilen girdi kümesinin işlenmesi sonucu üretilen veridir. Algoritmaların verilen girdiye göre bir ya da daha fazla iyi tanımlı çıktı üretmesi beklenir. Algoritma çıktılarının veri türü ve
miktarı gibi karakteristiklerinin tanımlanmış olması beklenir.
3. Açıklık: Algoritmanın verilen girdi kümesinden çıktı üretmek için gerekli tüm adımları ve bu adımların işletilme sırasını açık bir şekilde tanımlaması gerekir. Algoritmanın her adımının açık ve yanlış anlaşılmaya mahal vermeyecek şekilde iyi tanımlanması gerekir. Özellikle günlük dil ile yazılan
algoritmalarda açıklık ilkesini ihlal edebilecek ifadelerin bulunması olasıdır. Örneğin iki sayının
çarpılması gerektiği ab, a.b, a*b ya ad a x b şeklinde gösterilebilir. Burada a x b hem a ve b’nin çarpımı hem de a, x ve b değişkenlerinin çarpımı şeklinde algılanabilir. Bu tür karmaşalara yol açmamak
için gerekli açıklamalar algoritma öncesinde yapılmalı ve bir örnek satırlar yazılmalıdır. Verilen
örnekler arasından a*b en açık olanıdır. Bunun yanında, işlem adımlarında çıkabilecek olası hata
durumlarının engellenmesi ve bu hataların oluşması hâlinde nelerin yapılacağının (ör.: bir bölme
işleminde bölenin sıfır olmasının kontrolü) da tanımlanması beklenir.
4. Sonluluk: Algoritmaların bir noktada sonlanması gerekir. Algoritma verilen girdiye ilişkin çıktı
üreterek ya da olası bir çözüm olmadığını belirterek sonlanabilir. Algoritmanın içinde gerekli kontroller yapılarak bir çıktı üretilmesi ve sona erdirilmesi gerekmektedir.
5. Başarım ve Performans: Algoritmanın başarım ve performansı verilen bilgisayar kaynaklarının kullanımı ile ilgili bir kavramdır. Başarım, algoritmanın tanımlanan bilgisayar kaynakları ile çıktı üretebilmesini ifade eder. Performans ise algoritmanın işlem zamanı ve bellek alanını etkin kullanımı ile
ilgilidir. Çıktı üretmek için işletilmesi gerekmeyen adımların kullanılması algoritma performansının düşük olduğunun bir göstergesidir. Örneğin bir sayının asal olup olmadığını anlamak için bölenlerini arayan bir algoritmanın, sayının karekökünden daha büyük bölenler araması gereksizdir.
6. Bağımsızlık: Algoritmalar, programlama dilleri ve platformlardan bağımsızdır. Tanımlanan adımların herhangi bir programlama dili ve bu dilin yürütülebileceği platformlar (ör.: masaüstü cihazlar,
sunucular, mobil cihazlar) üzerinde çalışabilmesi gerekir.

Soru 4

Algoritmalar içinde belirli bir şart sağlandığı sürece tekrar tekrar işletilen kod bloklarına ne ad verilir?

Seçenekler

A
Girdiler
B
Hesaplı problemler
C
Algoritmalar
D
Döngüler
E
Yönergeler
Açıklama:
Döngüler algoritmalar içinde belirli bir şart sağlandığı sürece tekrar tekrar işletilen kod bloklarıdır.

Soru 5

Aşağıdakilerden hangisi algoritmaların sahip olması gereken özelliklerden biri değildir?

Seçenekler

A
Girdi
B
Çıktı
C
Açıklık
D
Sonluluk
E
Bağımlılık
Açıklama:
Bağımsızlık: Algoritmalar, programlama dilleri ve platformlardan bağımsızdır. Tanımlanan adımların herhangi bir programlama dili ve bu dilin yürütülebileceği platformlar (ör.:masaüstü cihazlar, sunucular, mobil cihazlar) üzerinde çalışabilmesi gerekir.

Soru 6

Algoritmaların sahip olması gereken özelliklerinden hangisi algoritmanın tanımlanan bilgisayar kaynakları ile çıktı üretebilmesi ve işlem zamanı ve bellek alanını etkin kullanımı ile ilgilidir?

Seçenekler

A
Girdi
B
Çıktı
C
Açıklık
D
Sonluluk
E
Başarım ve performans
Açıklama:
Başarım ve Performans: Algoritmanın başarım ve performansı verilen bilgisayar kaynaklarının kullanımı ile ilgili bir kavramdır. Başarım, algoritmanın tanımlanan bilgisayar kaynakları ile çıktı üretebilmesini ifade eder. Performans ise algoritmanın işlem zamanı ve bellek alanını etkin kullanımı ile ilgilidir. Çıktı üretmek için işletilmesi gerekmeyen adımların kullanılması algoritma performansının düşük olduğunun bir göstergesidir. Örneğin bir sayının asal olup olmadığını anlamak için bölenlerini arayan bir algoritmanın, sayının karekökünden daha büyük bölenler araması gereksizdir.

Soru 7

Algoritmanın alan karmaşıklığı aşağıdakilerden hangisi ile ilgilidir?

Seçenekler

A
Çözüm üretmek için harcadığı işlemci zamanı
B
Çözüm üretmek için harcadığı bellek alanı
C
Çözüm üretmek için kullandığı işletim sistemi
D
Çözüm üretmek için işlettiği görev sayısı
E
Çözüm üretmek için kullandığı program
Açıklama:
Algoritmanın alan karmaşıklığı ise çözüm üretmek için harcadığı bellek alanı ile ilgilidir. Algoritma tarafından tanımlanan her bir değişken ya da her bir fonksiyon çağrısının bir bellek maliyeti bulunur. Örneğin, kendi kendini tekrar çağırabilen özyinelemeli bir fonksiyon her çağrıldığında, bu fonksiyonun kodları ve fonksiyon içinde tanımlanan değişkenler için tekrar bellek alanı ayrılması gerekir. Örneğin bellek maliyeti 4 B (Bayt) olan bir faktöriyel hesaplama fonksiyonunun 1000! Sayısını hesaplayabilmesi için kendi kendini 1000 kez çağırması gerekir. Bunun anlamı bu hesaplama için yaklaşık 4 KB (Kilo Bayt) bellek alanı harcanması gerektiğidir. Fakat dinamik programlama gibi yaklaşımlar kullanılarak özyinelemeden kaçınılarak tekrarlayan çağrı sayıları ciddi oranda azaltılabilir. Bunun sonucu olarak da harcanacak bellek alanları ciddi oranda düşebilir.

Soru 8

Metinler ve işleçleri girdi olarak alan, ilgili veri tabanı üzerinde arama yapıp olası sonuçları öneren algoritmalar aşağıdakilerden hangisidir?

Seçenekler

A
Arama Motoru Algoritmaları
B
Şifreleme Algoritmaları
C
Açgözlü (Greedy) Algoritmalar
D
Özyinelemeli (Recursive) Algoritmalar
E
Sıralama Algoritmaları
Açıklama:
Arama Motoru Algoritmaları; Metinler ve işleçleri girdi olarak (ör.: “izmir VE konser”) alan, ilgili veri tabanı üzerinde arama yapıp olası sonuçları öneren (ör.: internet siteleri, restoranlar, kitaplar, kişiler) algoritmalardır. İnternet siteleri ya da kütüphanelerdeki kitapları bulmaya yarayan arama motorlarında bu algoritmalar kullanılmaktadır.

Soru 9

Optimizasyon problemlerinin çözümü için bilinen verilere dayalı kararlar veren algoritma türü aşağıdakilerden hangisidir?

Seçenekler

A
Arama Motoru Algoritmaları
B
Şifreleme Algoritmaları
C
Açgözlü (Greedy) Algoritmalar
D
Özyinelemeli (Recursive) Algoritmalar
E
Kaba Güç (Brute-force) Algoritmaları
Açıklama:
Açgözlü (Greedy) Algoritmalar: Bu algoritmalar optimizasyon problemlerinin çözümü için bilinen verilere dayalı kararlar verir. Kısıtlı verilere dayanarak çözüm arandığından bu algoritmalar en iyi çözümü garanti etmezler. Şehirler arası bir yolculuk için en kısa yolu arayan açgözlü bir algoritma bir sonraki şehrin seçiminde her zaman en kısa yolu tercih edebilir.

Soru 10

Verilen problemin çözümü için herhangi bir strateji geliştirmeden tüm olasılıkları deneyen algoritma türü aşağıdakilerden hangisidir?

Seçenekler

A
Sıralama Algoritmaları
B
Şifreleme Algoritmaları
C
Açgözlü (Greedy) Algoritmalar
D
Özyinelemeli (Recursive) Algoritmalar
E
Kaba Güç (Brute-force) Algoritmaları
Açıklama:
Kaba güç algoritmaları verilen problemin çözümü herhangi bir strateji geliştirmeden tüm olasılıkları deneyen algoritmalardır. Bu algoritmaların çalışma stili dört haneli bir şifrenin bulunması için 0000’dan başlayarak 9999’a kadar tüm sayıların denenmesine benzetilebilir.

Soru 11

1, 2, 3, 4, 5 ve 6 sayılarının altılı kare kümeleri, satırlar ve sütunlarda çakışmadan dağıtılmasını amaçlayan 6x6’lık bir sudoku probleminin çözümünde hangi algoritma türü işe koşulabilir?

Seçenekler

A
Açgözlü (Greedy) Algoritmalar
B
Özyinelemeli (Recursive) Algoritmalar
C
Kaba Güç (Brute-force) Algoritmaları
D
Gerileme (Backtracking) Algoritmaları
E
Böl ve Fethet (Divide and Conquer) Algoritmaları
Açıklama:
Gerileme algoritmaları, verilen problemler gelişen çözüm ağaçları oluşturarak çözmeye çalışır. 6x6’lık bir sudoku probleminin amacı 1, 2, 3, 4, 5 ve 6 sayılarının altılı kare kümeleri, satırlar ve sütunlarda çakışmadan dağıtılmasıdır. Bu tür problemlerin çözümlerinin aranması için gerileme algoritmaları işe koşulabilir.

Soru 12

Problemleri küçük alt problemlere bölerek çözümleyen, özyinelemenin optimizasyonu olan algoritma türü aşağıdaki seçeneklerden hangisidir?

Seçenekler

A
Gerileme (Backtracking) Algoritmaları
B
Kaba Güç (Brute-force) Algoritmaları
C
Dinamik Programlama Algoritmaları
D
Karıştırma (Hashing) Algoritmaları
E
Rastgele (Randomized) Algoritmalar
Açıklama:
Dinamik programlama algoritmaları problemleri küçük alt problemlere bölerek çözümler. Bununla birlikte, bu yaklaşımda çözümler saklanarak ileriki hesaplamalara uygulanır. Dinamik programlama özünde özyinelemenin optimizasyonudur. Özyineleme yoluyla çözülebilecek problemler dinamik programlama yaklaşımı ile çözülebilir. Üretilen ara çözümlerin saklanması sayesinde ara hesaplamaların tekrar yapılmasına gerek kalmaz. Bu sayede özellikle özyinelemeli işlemlerde işlem yükü ciddi oranda azaltılabilir.

Soru 13

Monte Carlo tekniği hangi algoritma türünün önemli örneklerinden biridir?

Seçenekler

A
Gerileme (Backtracking) Algoritmaları
B
Böl ve Fethet (Divide and Conquer) Algoritmaları
C
Dinamik Programlama Algoritmaları
D
Karıştırma (Hashing) Algoritmaları
E
Rastgele (Randomized) Algoritmalar
Açıklama:
Rastgele algoritmaların önemli örneklerinden biri Monte Carlo tekniğidir. Monte Carlo tekniği sayısal değerlerin hesaplanması için yüksek sayıda rastgele değer üretilmesi esasına dayanır. Pi sabitinin yakınsak değerlerinin bulunması için bu teknik kullanılabilir. Pi sabiti irrasyonel bir sayı olduğundan, bu sayının gerçek değeri bulunamasa da gerçek değerine yakınsayan değerlerin hesaplanması önemli bir çalışma alanıdır.

Soru 14

Bir problemin çözümünde en iyi çözümü garantileyemeyen algoritma türü aşağıdakilerden hangisidir?

Seçenekler

A
Şifreleme algoritmaları
B
Açgözlü algoritmalar
C
Özyinelemeli algoritmalar
D
Kabagüç algoritmaları
E
Sıralama algoritmaları
Açıklama:
gözlü (Greedy) Algoritmalar
Bu algoritmalar optimizasyon problemlerinin çözümü için bilinen verilere dayalı kararlar verir. Kısıtlı
verilere dayanarak çözüm arandığından bu algoritmalar en iyi çözümü garanti etmezler.

Soru 15

6! sayısının hesaplanmasında aşağıdaki algoritmalardan hangisi kullanılır?

Seçenekler

A
Arama motoru algoritmaları
B
Şifreleme algoritmaları
C
Açgözlü algoritmalar
D
Özyinelemeli algoritmalar
E
Kabagüç algoritmaları
Açıklama:
Özyinelemeli algoritmalar bir problemin çözümüne ulaşabilmek için kendi kendilerini sürekli çağırırlar. Bu algoritmaların en bilinen örneği, bir sayının faktöriyelinin hesaplanmasıdır. Bu amaçla tanımlanan
fonksiyon içinde parametre olarak gelen sayının 1’den büyük olma durumu kontrol edilir. Sayı 1 ise geriye
1 değeri döndürülür. Sayı 1’den büyükse fonksiyon içinden aynı fonksiyona sayının 1 eksiği ile çağrı yapılır ve bu çağrıdan gelen değer sayı ile çarpılarak geri çevrilir

Soru 16

Bir problemin sonucunun "899" olduğunu varsayalım. Bu çözümün bulunması için herhangi bir strateji üretmeden 3 basamaklı tüm sayıları (000'dan başlayarak 999'a kadar tüm sayılar) deneme yoluna gitmek hangi algoritma türünün kullanıldığını göstermektedir?

Seçenekler

A
Kaba güç algoritmaları
B
Sıralama algoritmaları
C
Gerileme algoritmaları
D
Böl ve fethet algoritmaları
E
Dinamik programlama algoritmaları
Açıklama:
Kaba güç algoritmaları verilen problemin çözümü herhangi bir strateji geliştirmeden tüm olasılıkları
deneyen algoritmalardır. Bu algoritmaların çalışma stili dört haneli bir şifrenin bulunması için 0000’dan
başlayarak 9999’a kadar tüm sayıların denenmesine benzetilebilir.

Soru 17

9-15-3-17-20
Yukarıdaki dizide sayılar büyükten küçüğe doğru yerleştirilmek istediğinde kullanılacak algoritma türü aşağıdakilerden hangisidir?

Seçenekler

A
Sıralama algoritmaları
B
Kaba güç algoritmaları
C
Rastgele algoritmalar
D
Dinamik programlama algoritmaları
E
Böl ve fethet algoritmaları
Açıklama:
Sıralama algoritmaları girdi olarak verilen veri setini, belirlenen kriterlere göre düzene koyan algoritmalardır. Bir sıralama algoritması verilen girdi setini küçükten büyüğe ya da büyükten küçüğe doğru sıralayarak çıktı verebilir. Sıralama algoritmaları ile verilerin sıralanması sayesinde verilerin insanlar tarafından
daha rahat okunması ya da aranan değerlerin daha kolay bulunması sağlanabilir. Oldukça sık kullanılan
bir işlem olduğundan sıralama işleminin zaman ve alan bakımından verimli yapılabilmesi çok önemlidir.

Soru 18


  1. Problem daha küçük alt problemlere bölünür.

  2. Her bir alt problem kendi içinde çözümlenir.

  3. Her bir alt problemin çözümleri birleştirilerek ana problem çözülür.


Yukarıdaki üç aşamalı sırayı kullanan algoritma türü aşağıdakilerden hangisidir?

Seçenekler

A
Sıralama algortimaları
B
Gerileme algoritmaları
C
Böl fethet algoritmaları
D
Rastgele algoritmalar
E
Özyinelemeli algoritmalar
Açıklama:
Böl ve fethet algoritmaları verilen problemleri üç aşamada çözümler. Öncelikle problem daha küçük alt problemlere bölünür. Her bir alt problem kendi içinde çözümlendikten sonra bu çözümler birleştirilerek ana problemin çözümüne ulaşılır.

Soru 19

Girdi olarak verilen farklı uzunluktaki değerleri karıştırma fonksiyonuna tabi tutarak örnek çıktılar üreten algoritma türü aşağıdakilerden hangisidir?

Seçenekler

A
Rastgele algortimalar
B
Karıştırma algoritmaları
C
Dinamik programlama algoritmaları
D
Böl ve fethet algoritmaları
E
Gerileme algoritmaları
Açıklama:
Karıştırma algoritmaları girdi olarak verilen herhangi bir uzunluktaki değerleri karıştırma fonksiyonuna tabi tutarak birörnek çıktılar üretir. Üretilen çıktılar verilen girdinin uzunluğu ya da içeriğine bakılmaksızın aynı uzunluktadır.

Soru 20

Monte Carlo tekniğini kullanarak pi sabitinin yakınsak değerinin bulunması aşağıdaki algoritma türlerinden hangisinin kullanımı ile gerçekleştirilebilir?

Seçenekler

A
Rastgele algoritmalar
B
Özyinelemeli algoritmalar
C
Şifreleme algoritmaları
D
Açgözlü algoritmalar
E
Sıralama algoritmaları
Açıklama:
Rastgele algoritmaların önemli örneklerinden biri Monte Carlo tekniğidir. Monte Carlo tekniği sayısal
değerlerin hesaplanması için yüksek sayıda rastgele değer üretilmesi esasına dayanır. Pi sabitinin yakınsak değerlerinin bulunması için bu teknik kullanılabilir. Pi sabiti irrasyonel bir sayı olduğundan, bu sayının gerçek
değeri bulunamasa da gerçek değerine yakınsayan değerlerin hesaplanması önemli bir çalışma alanıdır. Bu
amaçla yarıçapı 1 birim olan bir birim çember üretilir.

Ünite 2

Soru 1

Aşağıdakilerden hangisi basit veri türleri arasında yer alır?

Seçenekler

A
Dizi
B
Yığın
C
Kuyruk
D
Bağlı liste
E
Integer
Açıklama:
Basit veri yapıları bilgisayar işlemcileri tarafından doğrudan manipüle edilebilen, tek bir değer tutabilen ve programlama dillerinde yerleşik olarak sunulan veri yapılarıdır. Bu nedenle bu veri yapılarına veri türleri adı verilmektedir. Bunlar mantıksal (boolean), sayısal (float ve integer), karakter (char) ve adres göstergesi (pointer) veri türleridir.

Soru 2

Aşağıdakilerden hangisi doğrusal olmayan karmaşık veri yapıları arasında yer alır?

Seçenekler

A
Ağaç
B
Dizi
C
Integer
D
Float
E
Char
Açıklama:
Karmaşık veri yapıları ise basit veri yapılarını kullanarak farklı amaçlarla türetilen ve birden fazla veriyi tutabilen veri yapılarıdır. Karmaşık veri yapıları, veriler arası ilişkilerin kurulma biçimlerine göre doğrusal ve doğrusal olmayan veri yapılarına ayrılır. Doğrusal veri yapılarında veriler arasında bir ardışıklık söz konusudur. Bir element kendinden önceki ve sonraki elementle bağlantılıdır. Diziler (array), yığınlar (stack), kuyruklar (queue) ve bağlı listeler (linked list) doğrusal veri yapılarıdır. Doğrusal olmayan veri yapılarında ise elementler arası bağlantılar asimetriktir. Ayrıca bağlantı sayıları farklılaşabilmektedir. Ağaçlar (tree) ve çizgeler (graph) doğrusal olmayan veri yapılarıdır.

Soru 3

C# programlama dilinde "-52" sayısını tutmak ve bellek alanının etkin kullanımı için hangi veri türü kullanılmalıdır?

Seçenekler

A
Byte
B
Integer
C
Float
D
Double
E
Unicode
Açıklama:
C# programlama dilinde tam sayıları tutmak üzere Byte ve Integer türleri tanımlanmıştır (Microsoft, t.y.). 8 bit genişlikte tanımlanan Byte türü -127 ile +128 arasındaki sayıları tutabilirken 64 bite kadar çıkabilen Integer türünde -2147483648 ile 2147483647 arasındaki değerler tutulabilmektedir. Benzer şekilde ondalıklı sayılar için Float (32b) ve Double (64b) veri türleri tanımlanmıştır. Bu tanımlamalara baktığımızda -52 sayısının tutulması ve bellek alanının etkin kullanımı için 8 bit (1 byte) olan Byte veri türünün kullanımının uygun olduğu görülmektedir.

Soru 4

Veri yapıları konusunda aşağıdaki ifadelerden hangisi ya da hangileri doğrudur?

  1. Bilgisayar sistemleri üzerinde veri yapılarının uygulayıcıları programlama dilleridir.

  2. Veri yapılarının amacı bilgisayar sistemi ile programcının zihni arasında bir köprü kurmaktır.

  3. Her veri yapısının yeterlikleri, avantajları ve sınırlılıkları birbirinin aynıdır.

Seçenekler

A
Yalnız I
B
Yalnız II
C
I ve II
D
I ve III
E
II ve III
Açıklama:
Veri yapıları konusunda verilen ifadeleri tek tek değerlendirelim:
I. "Bilgisayar sistemleri üzerinde veri yapılarının uygulayıcıları programlama dilleridir."
Doğru.
Veri yapıları kavramsal yapılardır, bunların bilgisayar sistemlerinde somut olarak uygulanması programlama dilleri aracılığıyla yapılır. Örneğin; C++, Java, Python gibi dillerde dizi, liste, yığın, kuyruk, ağaç gibi veri yapıları kod ile hayata geçirilir.
II. "Veri yapılarının amacı bilgisayar sistemi ile programcının zihni arasında bir köprü kurmaktır."
Doğru.
Veri yapıları, verilerin düzenlenmesini, erişimini ve yönetimini kolaylaştırarak programcının zihinsel modelini bilgisayara aktarmasına yardımcı olur. Bu yönüyle bir "köprü" işlevi görürler.
III. "Her veri yapısının yeterlikleri, avantajları ve sınırlılıkları birbirinin aynıdır."
Yanlış.
Veri yapılarının her birinin farklı avantajları ve sınırlamaları vardır. Örneğin, bir dizi sabit boyutludur ve rastgele erişim hızlıdır ama ekleme/silme işlemleri yavaştır. Buna karşın bağlı listeler dinamik bellek kullanır, ekleme/silme işlemleri daha kolaydır ama rastgele erişim zordur. Bu nedenle her veri yapısının yeterlilikleri ve kullanım alanları farklıdır.
Doğru cevap C seçeneğidir.

Soru 5

Aşağıdakilerden hangisi doğrusal olmayan veri yapılarıdır?

Seçenekler

A
Diziler
B
Yığınlar
C
Çizgeler
D
Kuyruklar
E
Bağlı Listeler
Açıklama:
Ağaçlar (tree) ve çizgeler (graph) doğrusal olmayan veri yapılarıdır. Doğru cevap C seçeneğidir.

Soru 6

Dizilerle ilgili aşağıdaki ifadelerden hangisi doğru değildir?

Seçenekler

A
Dizilerdeki elementlerin bellek adresleri bitişiktir.
B
Her bir element için ayrılan bellek alanı birbirinden farklıdır.
C
Tanımlanandan fazla elemente ihtiyaç duyulması sorun yaratır.
D
Element sayısı tanımlama satırında belirlenir ve değiştirilemez.
E
Aynı türdeki birden fazla değerin saklanması için oldukça elverişli veri yapılarıdır.
Açıklama:
Dizilerdeki elementlerin bellek adresleri bitişiktir. Bunun yanında her bir element için ayrılan bellek alanı eşittir. Doğru cevap B seçeneğidir.

Soru 7

Basit veri türlerine ait aşağıdaki ifadelerden hangisi doğru değildir?

Seçenekler

A
A değeri B değerine eşit midir gibi sorgulamaları yapan mantıksal ifadelerin sonucu boolean türündedir.
B
Float veri türü, ondalıklı sayıları temsil eder; ayrıca tam sayılar da float biçiminde ifade edilebilir.
C
Integer veri türünde pozitif ya da negatif tam sayılar ve ondalıklı sayılar tutulabilir.
D
Karakter veri türünde büyük ya da küçük harfler, rakamlar ve özel işaretler tutulabilir.
E
Gösterge veri türü, bellekte tutulan başka bir değişkenin fiziksel adresini saklamak amacıyla kullanılır.
Açıklama:
Programlama dilinden bağımsız olarak veri türleri boyutunda tam sayıların tutulması için Integer sınıfı kullanılır. Integer veri türünde pozitif ya da negatif tam sayılar tutulabilir. Ondalıklı sayılar tutulmaz. Doğru cevap C seçeneğidir.

Soru 8

Aşağıda verilenlerden hangisi ya da hangileri bağlı listelerin avantajları arasında yer almaktadır?

  1. Element sayılarının dinamik olarak arttırılabilmesi

  2. Elementlere indis numarası yoluyla rastgele erişim olanağının olmaması

  3. Dizilere oranla daha fazla bilgi (veri, bağlantı adresi) kullanılması

Seçenekler

A
Yalnız I
B
Yalnız II
C
I ve II
D
I ve III
E
II ve III
Açıklama:
Bağlı listelerin dizilere oranla en önemli avantajı element sayılarının dinamik olarak arttırılabilmesidir. Doğru cevap A seçeneğidir.

Soru 9


  • Son Giren İlk Çıkar (LIFO - Last In First Out) prensibinde çalışan doğrusal veri yapılarıdır.

  • Bu veri yapılarının en tepesine veri eklenebilir ve en tepedeki veri çıkarılabilir.

  • Bu yapılar dikkatli bir şekilde kullanılmazsa çalışma zamanı hataları alınabilir.

  • Yukarıda özellikleri verilen veri yapısı aşağıdakilerden hangisidir?

Seçenekler

A
Dizi
B
Yığın
C
Çizge
D
Kuyruk
E
Bağlı Liste
Açıklama:
Yığınlar Son Giren İlk Çıkar (LIFO - Last In First Out) prensibinde çalışan doğrusal veri yapılarıdır. Bu veri yapılarının en tepesine veri eklenebilir ve en tepedeki veri çıkarılabilir. Bu yapılar dikkatli bir şekilde kullanılmazsa (ör.: dolu olma durumunu kontrol etmeden element ekleme) çalışma zamanı hataları alınabilir. Oldukça basit bir veri yapısı olmasına rağmen yığınlar önemli görevler için kullanılır. Doğru cevap B seçeneğidir.

Soru 10

Bir uçlarından ekleme, diğer uçlarından silme işlemleri yapılabilen doğrusal veri yapıları aşağıdakilerden hangisidir?

Seçenekler

A
Ağaç (tree)
B
Diziler (array)
C
Yığınlar (stack)
D
Kuyruklar (queue)
E
Bağlı listeler (linked
Açıklama:
Kuyruklar bir uçlarından ekleme, diğer uçlarından silme işlemleri yapılabilen doğrusal veri yapılarıdır. Doğru cevap D seçeneğidir.

Soru 11

Ağaç veri yapılarında, birbirine kenarlar ile bağlanmış düğüm serilerine ne ad verilir?

Seçenekler

A
Kök (root)
B
Yol (path)
C
Yaprak (leaf )
D
Katman (level)
E
Alt ağaç (subtree)
Açıklama:
Yol (path): Birbirine kenarlar ile bağlanmış düğüm serilerine yol adı verilir. Doğru cevap B seçeneğidir.

Soru 12


  1. Kök düğümden başlayarak aşağı doğru açılan düğüm düzeyleridir.

  2. Bir düğüme, kök düğümden gelen yolun uzunluğudur.

  3. Bir düğümden, yaprak düğüme giden yolun uzunluğudur.


Yukarıda I, II ve III ile tanımlanmış ifadeler aşağıdakilerden hangisinde sırasıyla doğru olarak verilmiştir?

Seçenekler

A
Yükseklik-düğüm derinliği-katman
B
Düğüm derinliği-kenar-yükseklik
C
Düğüm derinliği-katman-yükseklik
D
Katman-yükseklik-düğüm derinliği
E
Katman-düğüm derinliği-yükseklik
Açıklama:
I- Kök düğümden başlayarak aşağı doğru açılan düğüm düzeylerine katman denir.
II- Düğüm derinliği (depth): Bir düğüme, kök düğümden gelen yolun uzunluğudur.
III- Yükseklik (height): Bir düğümden, yaprak düğüme giden yolun uzunluğudur.
Doğru cevap E seçeneğidir.

Soru 13

Çizgeler (Graph) veri yapıları ile ilgili aşağıdaki ifadelerden hangisi ya da hangileri doğrudur?
  1. Düğümler (vertice) ve bu düğümleri birleştiren kenarlardan (edge) oluşan veri yapılarıdır.
  2. Ağaç yapılarında olduğu gibi iki düğüm arasında tek bir yol tanımlıdır.
  3. İletişim ağlarının gösteriminde, veri organizasyonunda ve hesaplamaların akışını göstermede kullanılır.

Seçenekler

A
Yalnız I
B
Yalnız II
C
I ve II
D
I ve III
E
II ve III
Açıklama:
Çizgelerde, ağaç yapılarında olduğu gibi iki düğüm arasında tek bir yol tanımlı değildir. Doğru cevap D seçeneğidir.

Soru 14

Birbirine bağlı düğüm serilerinden oluşan doğrusal veri yapılarına ne denir?

Seçenekler

A
Diziler
B
Bağlı listeler
C
Yığınlar
D
Kuyruklar
E
Göstergeler
Açıklama:
Bağlı listeler, birbirine bağlı düğüm serilerinden oluşan doğrusal veri yapılarıdır. Bu düğümler bilgisayar belleğinde rastgele yerlerde saçılmış durumdadır. Her bir düğüm, veri ve bağlantı adresi (gösterge)
bölümlerinden oluşur.

Soru 15

Diziler ile bağlı listeler karşılaştırıldığında, aşağıdakilerden hangisi bağlı listelerin en önemli avantajı arasında yer alır?

Seçenekler

A
Element sayılarını dinamik olarak arttırılabilmesi
B
Element sayılarını dinamik olarak azaltabilmesi
C
Aynı türdeki birden fazla değeri saklaması
D
Farklı türdeki birden fazla değeri saklaması
E
Bellekte tutulan bir değişkenin fiziksel adresini saklaması
Açıklama:
Bağlı listelerin dizilere oranla en önemli avantajı element sayılarını dinamik olarak arttırılabilmesidir. Diziler tanımlandıkları boyutun ötesinde element tutamazken dinamik bellek kullanabilme yeteneği
sayesinde bağlı listelere kolaylıkla element eklenebilmektedir. Dizilerde araya değer ekleme ya da değer
silme işlemleri oldukça karmaşıktır. Örneğin araya bir değer eklenmesi istendiğinde dizide bu konumdan
sonraki tüm elementlerin yerinin kaydırılması gerekmektedir. Bağlı listelerde bu işlem bellek adreslerinin değiştirilmesi yoluyla kolaylıkla yapılabilmektedir. Çalışma zamanında dizilerin boyutunun artırılması
olanaksızken bağlı listelere ekleme yapılabilmektedir. Bu sayede programcının liste boyutu belirlemesine
gerek kalmaz. Düğüm sayısı dinamik olarak düzenlenebildiğinden, dizilerde olduğu gibi gereksiz bellek
kaynağı ayrılması problemleri yaşanmaz. Ayrıca bellekteki herhangi bir alan kullanılabildiğinden kuramsal
olarak tüm bellek alanı kullanılabilir durumdadır. Dizilerde elementlerin yan yana tutulması gereksinimi
bu kullanıma izin vermeyebilir.

Soru 16

"Son Giren İlk Çıkar (LIFO - Last In First Out)" prensibinde çalışan doğrusal veri yapıları aşağıdakilerden hangisidir?

Seçenekler

A
Bağlı listeler
B
Diziler
C
Gösterge
D
Karakter
E
Yığınlar
Açıklama:
Yığınlar Son Giren İlk Çıkar (LIFO - Last In First Out) prensibinde çalışan doğrusal veri yapılarıdır.
Bu veri yapılarının en tepesine veri eklenebilir ve en tepedeki veri çıkarılabilir. Bu yapılar bir kitap yığınına
benzetilebilir. Yığının üzerine bir kitap eklenebilir ya da en üstteki kitap yığından çıkarılabilir. Bu veri
yapılarında en tepedeki elementi işaret den tek bir gösterge tutulur. Ekleme ve çıkarma işlemlerinde bu
gösterge güncellenir.

Soru 17


  1. İlk Giren İlk Çıkar prensibinde çalışır.

  2. Son Giren İlk Çıkar prensibinde çalışır.

  3. Bir ucundan ekleme, diğer ucundan silme işlemleri yapılabilir.

  4. Tek bir alfanumerik karakterin tutulması için kullanılır.


Yukarıda kuyruklar veri yapısı ile ilgili yer alan bilgilerden hangisi ya da hangileri doğrudur?

Seçenekler

A
Yalnız II
B
Yalnız IV
C
I-II
D
I-III
E
II-III-IV
Açıklama:
Kuyruklar bir uçlarından ekleme, diğer uçlarından silme işlemleri yapılabilen doğrusal veri yapılarıdır.
Ekleme işlemi yapılan sona arka, silme işlemi yapılan sona ise ön adı verilir. Kuyruklar gerçek hayattaki
bilet kuyruklarına benzetilebilir. En önden biletini alan elemanlar kuyruktan çıkarken bilet almak isteyenler kuyruğun sonuna eklenirler. Yığınların aksine kuyruklar İlk Giren İlk Çıkar (FIFO - First In First Out)
prensibinde çalışır. Kuyruklar da yığınlar gibi pek çok alanda kullanım bulmaktadır. Örneğin donanımsal
düzeyde diskler ve yazıcılar işlemlerinin takibini yapabilmek için kuyruklar tutar. İşletim sistemlerinde
kesmelerin işletilmesi için kuyruklar tutulmaktadır. Sistemler arasında ya da sistemlerin kendi içindeki
veri transferlerinin takibi için de özel kuyruklar tanımlanabilmektedir. Kullanıcı uygulamaları düzeyinde
medya oynatıcılarının oynatma listeleri kuyruklar şeklinde düzenlenmektedir.

Soru 18


  1. Bir element kendinden önceki ve kendinden sonraki elementler arasındadır.

  2. Elementler rastgele yerleştirilmiştir.

  3. Bir element, yalnızca çevresindeki iki elementle bağlantılıdır.

  4. Elementler arası bağlantı sayısı birden fazladır.


Yukarıda doğrusal veri yapıları ile yer alan bilgilerden hangisi ya da hangileri doğrudur?

Seçenekler

A
I-II
B
I-III
C
II-IV
D
III-IV
E
II-III
Açıklama:
Doğrusal veri yapılarında bir element kendinden önceki ve kendinden sonraki elementler arasındadır. Bu element, yalnızca çevresindeki iki elementle bağlantılıdır.
Doğrusal olmayan veri yapılarında ise elementler arası bağlantı sayısı birden fazladır. Doğrusal olmayan veri yapılarında elementler rastgele yerleştirilmiştir.

Soru 19

Aşağıdakilerden hangisi ağaç veri yapılarından bahsederken kullanılan kavramlardan biri olan derinlik kavramının açıklamasıdır?

Seçenekler

A
Ağaç yapısının en üstündeki düğümdür.
B
Kök düğümden başlayarak aşağı doğru açılan düğüm düzeyidir.
C
Bir düğüme, kök düğümden gelen yolun uzunluğudur.
D
Bir düğümden, yaprak düğüme giden yolun uzunluğudur.
E
Aynı ebeveynden gelen düğümlerdir.
Açıklama:
Derinlik (depth): Bir düğüme, kök düğümden gelen yolun uzunluğudur. Bu uzunluğu bulmak için
yol üzerindeki kenarlar sayılır.

Soru 20

G (V,E) fonksiyonu şeklinde tanımlanan çizgeler fonksiyonunda V kümesi ve E kümesi sırasıyla neyi temsil etmektedirler?

Seçenekler

A
Düğüm-Kenar
B
Kenar-Düğüm
C
Çocuk-Yaprak
D
Yaprak-Çocuk
E
Katman-Derinlik
Açıklama:
Çizgeler G(V, E) fonksiyonu ile tanımlanabilir. Bu tanımlamada V kümesi düğümleri, E kümesi ise
kenarları ifade etmektedir. Örneğin; V(V1, V2, V3, V4, V5) kümesi 5 adet düğümü ifade etmektedir.
Bu düğümler arasındaki 6 kenar ise E((V1, V2), (V1, V3), (V2, V4), (V1, V4), (V1, V5), (V4, V1))
kümesi ile ifade edilir.

Ünite 3

Soru 1

Koddaki mantık hatalarının keşfi, program geliştirme sürecinin hangi adımında yapılmaktadır?

Seçenekler

A
Program tasarımı
B
Söz dizimi hatalarını düzeltme
C
Çalıştırılabilir kodu test etme
D
Kodlama
E
Kodu onarma
Açıklama:
Kod yürütülebilir bir formda olduğunda, herhangi bir mantık hatası olup olmadığını belirlemek için test edilmedir. Mantık hatası, programın çalışmasını engellemeyen ancak yanlış sonuçlar vermesine nedenolan bir hatadır. Matematiksel hatalar, mantık hatalarının yaygın nedenlerinden biridir.
Buna göre doğru cevap C seçeneğidir.

Soru 2

Program geliştirme sürecinin temeli olan ve programcının sonradan vakit kaybetmemek için dikkatle üzerinde durması gereken süreç aşağıdakilerden hangisidir?

Seçenekler

A
Söz dizimi hatalarını kontrol etme
B
Algoritma tasarımı
C
Kodlama
D
Kodu onarma
E
Hata ayıklama
Açıklama:
Algoritma tasarımı süreci, tartışmasız döngünün en önemli parçasıdır. Algoritma tasarımı programın temeli olarak düşünülebilir. Algoritma kötü tasarlanmışsa, sonunda programı düzeltmek için belki de yeniden yazmaktan daha çok zaman harcanabilecektir. Doğru yanıt B seçeneğidir.

Soru 3

Algoritmaların gösterilmesi için günlük dil, sözde kod ve ________ olmak üzere üç yöntem vardır.
Yukarıda boş bırakılan yere aşağıdakilerden hangisi gelmelidir?

Seçenekler

A
Söz dizim
B
Donanım
C
Mantık
D
Program kodu
E
Akış şeması
Açıklama:
Algoritmaların gösterilmesi için günlük dil, sözde kod ve akış şeması olmak üzere üç yöntem vardır. Doğru yanıt E seçeneğidir.

Soru 4

1. Adım: Başla.
2. Adım: Sınıftan sıradaki öğrencinin notunu öğren.
3. Adım: Öğrenci notu 50 ve üstündeyse "Geçti" değerini göster.
4. Adım: Öğrenci notu 50'nin altındaysa "Kaldı" değerini göster.
5. Adım: Sırada öğrenci varsa 2. adıma dön.
6. Adım: Bitir.
Yukarıdaki algoritma hangi algoritma gösterim yöntemine örnektir?

Seçenekler

A
Akış diyagramı
B
Sözde kod
C
Yapılandırılmış dil
D
Karar tablosu
E
UML (Unified Modeling Language)
Açıklama:
Verilen algoritma, adım adım doğal dil benzeri ifadelerle açıklanmıştır. Bu, pseudo kod (sözde kod) gösterim yönteminin tipik bir örneğidir.
Akış diyagramı şekillerle gösterilir, karar tablosu tablolama yöntemiyle, UML ise daha çok nesne ilişkilerini grafiksel olarak gösteren bir modelleme dilidir.

Soru 5

Kod yazımında "GÖSTER" yerine “YAZDIR”, “PRINT”, “DISPLAY” vb. sözcüklerin de kullanımına izin veren dil aşağıdakilerden hangisidir?

Seçenekler

A
Programlama dili
B
Sözde kod
C
Program kodu
D
Akış şeması
E
Betik dili
Açıklama:
Sözde kodlarda ekrana veri yazdırmak için “göster” ifadesi yerine “YAZDIR”, “PRINT”, “DISPLAY” vb. sözcükler de kullanılabilir. Benzer şekilde veri okumak için “GİRDİ” ifadesi yerine de “OKU”, “READ”, “INPUT” gibi sözcükler de kullanılabilmektedir. Burada amaç yapılacak işlemi düzgün ve anlaşılır bir şekilde ifade etmektir. Doğru yanıt B seçeneğidir.

Soru 6

Sözde kodla ilgili aşağıdaki ifadelerden hangisi yanlıştır?

Seçenekler

A
Programların “modellerini” oluşturmak için tercih edilmektedir.
B
Sözde kelimesi sahte anlamına gelmektedir.
C
Söz dizimi hatalarına karşı dikkatli olunmalıdır.
D
“GİRDİ” ifadesi yerine de “OKU”, “READ”, “INPUT” gibi sözcükler kullanılabilmektedir.
E
Sözde koddaki her ifade, herhangi bir üst düzey dilde gerçekleştirilebilecek bir işlemi temsil etmektedir.
Açıklama:
Sözde kod, söz dizimi kuralları olmayan ve derlenmesi veya yürütülmesi amaçlanmayan gayriresmî bir dildir. Programcılar sözde kod yazarken söz dizimi hataları hakkında endişelenmek zorunda olmadıkları için tüm dikkatlerini programın tasarımına odaklayabilirler. Doğru yanıt C seçeneğidir.

Soru 7

Akış şemasının üstünde ve altında görünen ovallere ____________ denir.
Yukarıda boş bırakılan yere aşağıdakilerden hangisi gelmelidir?

Seçenekler

A
programlama dili
B
program kodu
C
betik dili
D
sözde kod
E
terminal sembolleri
Açıklama:
Akış şemasının üstünde ve altında görünen ovallere terminal sembolleri denir. Başlangıç terminali sembolü programın başlangıç noktasını ve bitiş terminali sembolü programın bitiş noktasını gösterir. Doğru yanıt E seçeneğidir.

Soru 8


Yukarıdaki sembol, akış şemalarında hangi durumu ifade eder?

Seçenekler

A
Başla/Bitir
B
Giriş/Çıkış
C
Belge
D
İşlem
E
Karar
Açıklama:
“Sonlandırıcı Sembolü” olarak da bilinen bu sembol, bir akışın başlangıç noktasını, bitiş noktalarını temsil eder. Genellikle şekil içinde “Başla” veya “Bitir” içerir. Doğru yanıt A seçeneğidir.

Soru 9

2/5 ve 4/15 sayılarından hangisinin daha büyük olduğunu göstermesi için yararlanabilecek akış şeması aşağıdakilerden hangisidir?

Seçenekler

A
B
C
D
E
Açıklama:
İki sayıdan büyük olanı bulup ekrana yazdıran algoritma:
1. Başla
2. Kullanıcı iki sayı girsin. (x, y)
3. x, y’den büyükse x’i yazdır, değilse y’yi yazdır.
4. Bitir
şeklinde olacaktır. Doğru yanıt B seçeneğidir.

Soru 10

Yukarıdaki sembol, akış şemalarında hangi durumu ifade eder?

Seçenekler

A
İki sayının çarpımını hesapla. (x, y)
B
Ortalamayı ekrana yazdır. (x,y)
C
Kullanıcı iki sayı girsin. (x, y)
D
İki sayının toplamını hesapla. (x, y)
E
x, y'den küçük ise 2. adıma git.
Açıklama:
Paralelkenar şekli, girdi ve çıktı için kullanılan oluşturulmuş veya mevcut olan verileri temsil eder. Doğru yanıt C seçeneğidir.

Soru 11

Bir dilin söz dizimi kuralları, anahtar kelimelerin, operatörlerin ve noktalama karakterlerinin nasıl kullanılabileceğini ve komutların yapısını belirler. Programcı bu kurallardan herhangi birini ihlal ederse hangi hata oluşur ?

Seçenekler

A
Söz dizim hatası
B
Mantık hatası
C
Basit hata
D
Yorumlayıcı hata
E
Donanım hatası
Açıklama:
Bir dilin söz dizimi kuralları, anahtar kelimelerin, operatörlerin ve noktalama karakterlerinin nasıl kullanılabileceğini ve komutların yapısını belirler. Programcı bu kurallardan herhangi birini ihlal ederse bir söz dizimi hatası oluşur. Dolayısıyla cevap A şıkkıdır.

Soru 12

Algoritma, bir görevi gerçekleştirmek için atılması gereken bir dizi iyi tanımlanmış mantıksal adımdır. Algoritma tasarlama süreci aşağıdaki kaç adımda özetlenebilir ?

Seçenekler

A
4
B
2
C
5
D
3
E
6
Açıklama:
Algoritma, bir görevi gerçekleştirmek için atılması gereken bir dizi iyi tanımlanmış mantıksal adımdır. Algoritma tasarlama süreci iki adımda özetlenebilir.
• Programın gerçekleştireceği görevi anlamak
• Program verilen görevleri gerçekleştirecekken uygulaması gereken adımları hesaplamak
Dolayısıyla cevap B şıkkıdır.

Soru 13

Algoritmaların ifade edilmesi için kullanılabilecek ilk yol, adımların herkesin anlayabileceği şekilde verildiği kullanımın karşılığı olan terim aşağıdaki hangi şıkta belirtilmiştir ?

Seçenekler

A
Sözde kod
B
Akış şeması
C
Günlük dil
D
Çıktının üretilmesi
E
Girdilerin işlenmesi
Açıklama:
Algoritmaların ifade edilmesi için kullanılabilecek ilk yol, adımların herkesin anlayabileceği şekilde verildiği günlük dil kullanımıdır. Dolayısıyla cevap C şıkkıdır.

Soru 14

Akış şemalarında terminal sembolleri arasında hem giriş sembolleri hem de çıkış sembolleri için kullanılan ifade aşağıdaki hangi şıkta belirtilmiştir ?

Seçenekler

A
Oklar
B
Oval
C
Çember
D
Paralelkenar
E
Betik
Açıklama:
Akış şemalarında terminal sembolleri arasında hem giriş sembolleri hem de çıkış sembolleri için kullanılan paralelkenarlardır. Dolayısıyla cevap D şıkkıdır.

Soru 15

Akış şemalarında terminal sembolleri arasında işleme sembolleri olarak kullanılan ifade aşağıdaki hangi şıkta belirtilmiştir ?

Seçenekler

A
Paralelkenar
B
Oval
C
Çember
D
Oklar
E
Dikdörtgen
Açıklama:
Akış şemalarında terminal sembolleri arasında işleme sembolleri olarak adlandırılan dikdörtgenler bulunur. Dolayısıyla cevap E şıkkıdır.

Soru 16

Bir programın eylemleri tipik olarak kaç aşamaya ayrılabilir ?

Seçenekler

A
3
B
6
C
4
D
5
E
2
Açıklama:
Bir programın eylemleri tipik olarak aşağıdaki üç aşamaya ayrılabilir:
1. Girdinin alınması
2. Girdi üzerinde bazı işlemler (hesaplama gibi) yapılması
3. Çıktının üretilmesi
Dolayısıyla cevap A şıkkıdır.

Soru 17

Bir programın tipik olarak gerçekleştirdiği işlem veya işlemlerin sonucu ifadesine verilen isim aşağıdaki hangi şıkta belirtilmiştir ?

Seçenekler

A
Girdinin alınması
B
Çıktının üretilmesi
C
Girdilerin işlenmesi
D
Akış şeması
E
Sözde kod
Açıklama:
Bir programın çıktısı, tipik olarak gerçekleştirdiği işlem veya işlemlerin sonucu olacaktır. Dolayısıyla cevap B şıkkıdır.

Soru 18

"A=B-C" kodunun günlük dildeki ifadesi aşağıdakilerden hangisidir ?

Seçenekler

A
B'den C'yi çıkar
B
A'yı göster
C
B'den C'yi çıkar ve A'ya gönder
D
B'den C'yi çıkar ve A'ya ekle
E
B'yi A'ya eşitle
Açıklama:
"A=B-C" kodunda B'den C'yi çıkar ve A'yı bu sonuç olarak al yani A'ya gönder anlamı bulunmaktadır. Dolayısıyla cevap C şıkkıdır.

Soru 19

Yukarıdaki sembol akış şemalarında hangi durumu ifade eder?

Seçenekler

A
İşlem
B
Girdi
C
Karar
D
Bitir
E
Çıktı
Açıklama:
sembolü başla/bitir durumunu ifade eder. Dolayısıyla cevap D şıkkıdır.

Soru 20

Yukarıdaki sembol akış şemalarında hangi durumu ifade eder ?

Seçenekler

A
X, Y'den büyükse
B
Y, X'den büyükse
C
X ile Y'yi topla
D
X'den Y'yi çıkart
E
X ve Y eşitse
Açıklama:
Karar sembolüdür, X ile Y birbirine eşitse anlamındadır.

Ünite 4

Soru 1

Değerleri karşılaştıran ve doğru veya yanlış döndüren operatörler aşağıdakilerden hangisidir?

Seçenekler

A
Karşılaştırma operatörleri
B
Switch-case yapısı
C
Tek seçimli yapılar
D
Çift seçimli yapılar
E
İç içe if yapısı
Açıklama:
Karar Yapıları / Karşılaştırma Operatörleri
Karşılaştırma operatörleri değerleri karşılaştıran ve doğru veya yanlış döndüren operatörlerdir. >, <, >=, <=, === ve !== örnek olarak verilebilecek operatörlerdir.
Karşılaştırma operatörleri sonuç olarak doğru (true) veya yanlış (false) şeklinde sonuç döndürmektedirler. Örneğin; “45>30” ifadesinin sonucu “doğru” iken “5>12” ifadesinin sonucu “yanlış” olarak dönmektedir. Karşılaştırma operatörleri genellikle değişkenler üzerinden kullanılmaktadır. Örneğin A < B (A ve B sayısal veridir.) veya X + 7 > = Y ( X ve Y sayısal veridir.) gibi. Algoritma tasarımlarında kullandığımız karar noktalarında karşılaştırma operatörleri sıkça kullanılmaktadır.

Soru 2

Ancak ve ancak her iki tarafındaki ifadeler doğruysa doğru olacak mantıksal operatör aşağıdakilerden hangisidir?

Seçenekler

A
II (veya)
B
&& (ve)
C
! (değil)
D
if
E
then
Açıklama:
Karar Yapıları / Mantıksal Operatörler
&& (ve) mantıksal operatörü ancak ve ancak her iki tarafındaki ifadeler doğruysa doğru olacaktır. İfadelerden sadece bir tanesi bile yanlış ise sonuç yanlış olacaktır.
Mantıksal operatörler karar durumlarında birden fazla karşılaştırma gerektiğinde kullanılmaktadır.
Bazı durumlarda birden fazla mantıksal operatörün aynı anda kullanılması gerekebilir. Bu gibi durumlarda koşul ifadeleri parantezler kullanılarak gruplanmalıdır. Örn: “(vize>60 && final>60) || (vize<=60 && final>80)”

Soru 3

Bir karar yapısında, bir kolinin hacminin 3 metreküp altı değerlerinin turuncu etiketi almış olması, 3'e eşit veya daha büyük hacimdeki kolilerin ise siyah etiketi almış olması istenmektedir. Bu koşullara göre hangi mantıksal sorgulama yapılmalıdır?

Seçenekler

A
(Hacim<=3 || etiketRenk==’Turuncu’) && (Hacim>3 || etiketRenk==’Siyah’)
B
(Hacim<3 && !(etiketRenk==’Turuncu’) ) || (Hacim>=3 && !(etiketRenk==’Siyah’))
C
(Hacim>3 && etiketRenk!=’Turuncu’ ) && (Hacim<3 && etiketRenk!=’Siyah’)
D
(Hacim<3 && etiketRenk==’Turuncu’) || (Hacim>=3 && etiketRenk==’Siyah’)
E
(Hacim<=3 && etiketRenk==’Turuncu’) || (Hacim>3 && etiketRenk==’Siyah’)
Açıklama:
Karar Yapıları / Mantıksal Operatörler
Mantıksal operatörler karar durumlarında birden fazla karşılaştırma gerektiğinde kullanılmaktadır. Bazı durumlarda birden fazla mantıksal operatörün aynı anda kullanılması gerekebilir. Bu gibi durumlarda koşul ifadeleri parantezler kullanılarak gruplanmalıdır. Bu durumda koşul ifadesi:
(Hacim<3 && etiketRenk==’Turuncu’) || (Hacim>=3 && etiketRenk==’Siyah’) şeklinde olacaktır.

Soru 4

Belli bir bilgi karşılığında programın hangi koşulda ne yapacağını belirleyen karar yapısı aşağıdakilerden hangisidir?

Seçenekler

A
II (veya)
B
&& (ve)
C
! (değil)
D
if
E
Eşittir (=)
Açıklama:
Karar Yapıları / Tek Seçimli Yapılar (if Yapısı)
If yapısı programlamada karar verme aşamasında kullanılır. Belli bir bilgi karşılığında programın hangi koşulda ne yapacağını belirler. If yapısı en az iki parçadan oluşur. Bu parçalar “if ” ve “then” olarak tanımlanabilir. Özetle If ve then ifadesinin anlamı “eğer bir şey doğru ise (if ), bir eylem gerçekleştir(then)” şeklinde tanımlanabilir.

Soru 5

Hava1 = 50
Hava2 = 30
Hava3 = 15
if Hava1 > Hava3:
print (“X”)
else:
print (“Y”)
if Hava3 > Hava2:
print (“Z”)
else:
print (“O”)
Yukarıdaki Phyton kod bloğunun ekran çıktısı aşağıdakilerden hangisidir?

Seçenekler

A
X
B
Y
C
Z
D
XO
E
YZ
Açıklama:
Karar Yapıları / Çift Seçimli Yapılar (if - else Yapısı)
If - else yapısı If yapısının en az üç aşamalı olanı olarak düşünülebilir. Belli bir bilgi karşılığında programın ne yapacağı karar aşamaları için bilginin verildiği bölüm “if ”, bilgi doğru ise gerçekleştirilecek ifadenin verildiği bölüm “then”, bilgi yanlış ise gerçekleştirilecek ifadenin verildiği bölüm ise “else” olarak tanımlanır.
Bu soruda, if-else yapısının akış diyagramı izlendiğinde, soruda verilen değerlere göre sadece
Hava1>Hava2 yani 50>30 koşulu sağlandığından, X değeri
ve akabine
Hava3>Hava2 yani 15>30 koşulu sağlanmadığından, O değeri
ekrana yazılacaktır.
Doğru cevap "XO" olmak üzere, D seçeneğidir.

Soru 6

IF ay = 1 THEN
IF gün = 1 THEN
PRINT “Yılın ilk günü”
ENDIF
IF gün = 365 THEN
PRINT “Yılın son günü”
PRINT “Kaldı”
ENDIF
ENDIF
Yukarıdaki kod bloğu hangi karar yapısının kullanıldığını göstermektedir?

Seçenekler

A
if Yapısı
B
if- and Yapısı
C
İf- else Yapısı
D
İç İçe if Yapısı
E
Switch - case Yapısı
Açıklama:
Karar Yapıları / Çift Seçimli Yapılar (İç içe if Yapısı)
Gerçek hayatta karar vermemiz gereken bazı durumlar vardır ve bu kararlara dayanarak bir sonraki adımda ne yapacağımızı belirleriz. Kararlar almamız gereken programlamada da benzer durumlar ortaya çıkar ve bu kararlara dayanarak bir sonraki kod bloğunu yürütürüz.
Yuvalanmış (iç içe) if ifadesi, başka bir if ifadesinin içine yerleştirilmiş bir if ifadesidir. Uygun eyleme karar vermeden önce koşulların bir kombinasyonunu test etmeniz gerektiğinde, iç içe if ifadeleri sıklıkla kullanılır. Soruda verilen kod bloğu iç içe if yapısına örnektir.

Soru 7

Bir bilgisayar programında, belirli bir koşula ulaşılana kadar tekrar edilen talimatlar aşağıdakilerden hangisidir?

Seçenekler

A
Düzenlemeler
B
Yüklemeler
C
Derlemeler
D
Depolamalar
E
Döngüler
Açıklama:
Bir bilgisayar programındaki döngü, belirli bir koşula ulaşılana kadar tekrar eden bir talimattır. Döngü yapısında döngü bir soru sorar. Cevap eylem gerektiriyorsa, yürütülür. Aynı soru, başka bir işlem yapılmasına gerek kalmayana kadar tekrar tekrar sorulur. Soru her sorulduğunda oluşan duruma yineleme denir. Döngülerin farklı çeşitleri vardır. Yaygın olarak kullanılan iki çeşidi for ve while döngüleridir. For döngüsünün özel bir kullanım çeşidi olan foreach döngüsü de bazı programlama dillerinde kullanılır.
Bir sayıyı 100 kez başka bir sayı ile toplamak, ekrana 1000 kez “merhaba” yazmak gibi, döngüler kullanılmaması durumunda binlerce satır sürebilecek işlemler, döngüler sayesinde birkaç satır kod ile yapılabilir.

Soru 8

Aşağıdakilerden hangisi bilgisayar programlarında kullanılan döngülerden biri değildir?

Seçenekler

A
For Döngüsü
B
Foreach Döngüsü
C
While Döngüsü
D
Do-While Döngüsü
E
Big-Omega Döngüsü
Açıklama:
Bir bilgisayar programındaki döngü, belirli bir koşula ulaşılana kadar tekrar eden bir talimattır. Döngü yapısında döngü bir soru sorar. Cevap eylem gerektiriyorsa, yürütülür. Aynı soru, başka bir işlem yapılmasına gerek kalmayana kadar tekrar tekrar sorulur. Soru her sorulduğunda oluşan duruma yineleme denir. Döngülerin farklı çeşitleri vardır. Bunlar; for, while, foreach ve do-while olarak sıralanabilir. Big-Omega işlevi, bir algoritmanın performansını veya karmaşıklığını tanımlamak için kullanılır.

Soru 9

Sayi = 1
DO
PRINT sayi
sayi = sayi + 1
WHILE ( sayi < 100)
Yukarıdaki do-while döngüsüne yönelik pseudo kod ile yazılmış döngü sonucu hangi sayı aralığı basılacaktır?

Seçenekler

A
1-10
B
1-9
C
1-99
D
1-100
E
1-999
Açıklama:
Döngüler / Do-While Döngüsü
Bu döngü sonucunda ekrana 1’den 99’a kadar olan sayılar basılacaktır. Do-While yapısı while yapısında olduğu gibi bir kod bloğundan ve bir koşuldan oluşur. Do-while döngüsünde ilk olarak koşula bakılmaksızın bloktaki kodları en azından bir defa çalıştırılır, ardından koşul kontrol edilir. Eğer koşul doğru ise kod bloğu tekrar yürütülür. Bu durum koşul yanlış olana kadar devam ettirilir. İki döngü arasındaki fark, while döngüsünde ilk olarak koşul değerlendirilirken, do-while döngüsünde en azından bir kez kodun yürütüldükten sonra koşulun kontrol edilerek devam edilmesidir.
Do-while döngüsünün de tıpkı while döngüsünde olduğu gibi toplam kaç kez tekrarlanacağı önceden belli değildir. Koşul ifadesi doğru olduğu sürece döngü devam eder. Sonlanmasını gerektirecek bir müdahale döngü içi işlemlerde bulunmaması durumunda döngü sonsuza kadar devam eder.

Soru 10

“<”, “>”, “<=”, “>=, “==”, “!=” ifadeleri aşağıdakilerden hangisine örnektir?

Seçenekler

A
Sonsuz döngüler
B
For döngüsü
C
Çift seçimli yapılar
D
Mantıksal operatör
E
Karşılaştırma operatörü
Açıklama:
Karar Yapıları / Karşılaştırma Operatörleri
Bilgisayar biliminde koşullu ifadeler, kararları işlemek için programlama dili komutlarıdır. Bu komutlar, programcı tarafından tanımlanan bir koşulunun doğru veya yanlış olarak değerlendirilmesine bağlı olarak farklı hesaplamalar veya eylemler gerçekleştirir. Karar verme, bilgisayar programlama için kritik öneme sahiptir. Bir koşulu doğru veya yanlış olarak bir ifadenin çeşitli değerleri için test edebilirsiniz.
Karşılaştırma operatörleri değerleri karşılaştıran ve doğru veya yanlış döndüren operatörlerdir. >, <, >=, <=, === ve !== örnek olarak verilebilecek operatörlerdir.

Soru 11

Bir dersten geçmek için 1 vize, 1 ödev ve 1 final notunun her birinin en az 50 puan olması gerekmektedir. Öğrencilerin notlarının bulunduğu bir sistemde, öğrencilerin geçme ve kalma durumlarına karar verilmesi için yazılması gereken mantıksal operatör aşağıdakilerden hangisidir?

Seçenekler

A
“vize>=50 || odev>=50 && final>=50”
B
“vize>=50 && odev>=50 && final>=50”
C
“vize>=50 || odev>=50 || final>=50”
D
“vize>=50 && odev>=50 || final>=50”
E
“vize<=50 && odev<=50 && final>=50”
Açıklama:
&& operatörü ancak ve ancak her iki tarafındaki ifadeler doğruysa doğru olacaktır. İfadelerden sadece bir tanesi bile yanlış ise sonuç yanlış olacaktır. Doğru yanıt B seçeneğidir.

Soru 12

Aşağıdakilerden hangisi bir karşılaştırma operatörü değildir?

Seçenekler

A
<
B
>
C
==
D
!
E
!=
Açıklama:
Karşılaştırma operatörleri değerleri karşılaştıran ve doğru veya yanlış döndüren operatörlerdir. >, <, >=, <=, === ve !== örnek olarak verilebilecek operatörlerdir. ! ise bir mantıksal operatördür. Doğru yanıt D seçeneğidir.

Soru 13

Aşağıdakilerden hangisi, tek seçimli yapılar için yanlış bir bilgidir?

Seçenekler

A
Programlamada karar verme aşamasında kullanılır.
B
If yapısı en az iki parçadan oluşur.
C
Belli bir bilgi karşılığında programın hangi koşulda ne yapacağını belirler.
D
If ve then ifadesinin anlamı “eğer bir şey doğru ise (if), bir eylem gerçekleştir(then)” şeklindedir.
E
Bilgi yanlış ise gerçekleştirilecek ifadenin verildiği bölümü de kapsamaktadır.
Açıklama:
Tek Seçimli Yapı (If Yapısı); programlamada karar verme aşamasında kullanılır. Belli bir bilgi karşılığında programın hangi koşulda ne yapacağını belirler. If yapısı en az iki parçadan oluşur. Bu parçalar “if” ve “then” olarak tanımlanabilir. Özetle If ve then ifadesinin anlamı “eğer bir şey doğru ise (if), bir eylem gerçekleştir(then)” şeklinde tanımlanabilir.
Çift Seçimli Yapılardan (If-Else Yapısı); If yapısının en az üç aşamalı olanı olarak düşünülebilir. Belli bir bilgi karşılığında programın ne yapacağı karar aşamaları için bilginin verildiği bölüm “if ”, bilgi doğru ise gerçekleştirilecek ifadenin verildiği bölüm “then”, bilgi yanlış ise gerçekleştirilecek ifadenin verildiği bölüm ise “else” olarak tanımlanır.
Buna göre E seçeneği tek seçimli yapılar için yanlıştır. Doğru yanıt E seçeneğidir.

Soru 14

Öğrencinin bir dersten geçmesi kararı için iki vizeden en az 60 ve finalden en az 50 alması gerekmektedir. Buna göre karar için hangi mantıksal sorgulama yapılmalıdır?

Seçenekler

A
vize1>=60 && vize2>=60 || final>=50
B
vize1>=60 && vize2>=60 && final>=50
C
vize1>=60 || vize2>=60 && final>=50
D
vize1>=60 || vize2>=60 || final>=50
E
vize1>=60 || vize2>=60 && final>=50
Açıklama:
Soruda üç koşulun aynı anda bulunması beklenmektedir. Bu nedenle her bir koşul && ile bağlanmalıdır. Doğru yanıt B seçeneğidir.

Soru 15

Belli bir bilgi karşılığında programın ne yapacağı karar aşamaları için bilginin verildiği bölüm ______, bilgi doğru ise gerçekleştirilecek ifadenin verildiği bölüm ______, bilgi yanlış ise gerçekleştirilecek ifadenin verildiği bölüm ise “else” olarak tanımlanır.
Yukarıdaki cümlede boş bırakılan yerlere sırasıyla aşağıdakilerden hangileri gelmelidir?

Seçenekler

A
if-else
B
if-then
C
then-if
D
else-if
E
then-else
Açıklama:
Belli bir bilgi karşılığında programın ne yapacağı karar aşamaları için bilginin verildiği bölüm “if”, bilgi doğru ise gerçekleştirilecek ifadenin verildiği bölüm “then”, bilgi yanlış ise gerçekleştirilecek ifadenin verildiği bölüm ise “else” olarak tanımlanır. Doğru yanıt B seçeneğidir.

Soru 16


Yukarıda verilen 'sayi =1,N' ifadesi; 1'den N'e kadar (N dahil) sayılar olarak ele alınmaktadır. Bu bilgiye göre yukarıdaki algoritma, N=5 için hangi sonucu verir?

Seçenekler

A
9
B
12
C
15
D
18
E
21
Açıklama:
Soruda 1’den N’e kadar olan sayıların toplamını hesaplayan algoritma için akış diyagramı verilmiştir. N=5 için 1+2+3+4+5=15 şeklinde sonuç üretecektir. Doğru yanıt C seçeneğidir.

Soru 17

kelimeler = [“demet”,”trafo”,”telsiz”,”kafa”,”çubuk”,”tat”]
for x in kelimeler:
if (len(x) == 3):
print(x)
Yukarıdaki kod çalıştırıldığında ekran çıktısı aşağıdakilerden hangisi olacaktır?

Seçenekler

A
demet
B
trafo
C
telsiz
D
kafa
E
tat
Açıklama:
İlgili kodda, kelimelerden oluşan bir dizi bulunmaktadır. Bu dizi içerisinde harf sayısı 3 olan bütün kelimeler ekrana yazdırılmak istenmektedir. Listede 3 harfli olan tek kelime "tat" olduğundan doğru yanıt E seçeneğidir.

Soru 18

kelimeler = [“demet”,”trafo”,”telsiz”,”kafa”,”tat”]
for x in kelimeler:
if (len(x) == 4):
print(x)
Yukarıdaki kod çalıştırıldığında ekran çıktısı aşağıdakilerden hangisi olacaktır?

Seçenekler

A
demet
B
trafo
C
telsiz
D
kafa
E
tat
Açıklama:
Elimizde stringden oluşan bir dizi bulunmaktadır. Bu dizi içerisinde harf sayısı 4 olan bütün kelimeleri ekrana yazdırılmak istenmektedir. Dizide "kafa" elemanı bu koşulu sağlamaktadır. Doğru yanıt D seçeneğidir.

Soru 19

for x in range(1,9,3):
print(x)
Yukarıdaki kod çalıştırıldığında ekran görüntüsü aşağıdakilerden hangisi olacaktır?

Seçenekler

A
4,7
B
5,8
C
3,6,9
D
1,4,7
E
2,5,8
Açıklama:
range() fonksiyonu varsayılan olarak birer birer artar ancak bir parametre daha ekleyerek bunu da belirlemek mümkündür. range(1,9,3) fonksiyonunda değerler 1’den başlar, üçer üçer artarak 9’a kadar (9 hariç) devam eder. Bu fonksiyonun döneceği dizi elemanları 1, 4 ve 7’dir. Doğru yanıt D seçeneğidir.

Soru 20

sayi = 8
DO
PRINT sayi
sayi = sayi - 1
WHILE (sayi > 3)
Yukarıdaki kod çalıştırıldığında, ekran çıktısında kaç tane değer yer alır?

Seçenekler

A
5
B
4
C
3
D
2
E
1
Açıklama:
Bu döngü sonucunda ekrana 8’den 4’e kadar olan sayılar basılacaktır. Doğru yanıt A seçeneğidir.

Ünite 5

Soru 1

Çözüm için geliştirilen algoritmaların veya programların kaynak (bellek, bant genişliği vb.) kullanımı ve performansı üzerine yapılan çalışmalar tanımı aşağıdakilerden hangisine aittir?

Seçenekler

A
Hesaplama karmaşıklığı
B
Yürütme zamanı
C
Alan karmaşıklığı
D
Algoritma analizi
E
Algoritma tasarımı
Açıklama:
Algoritma Analizi, çözüm için geliştirilen algoritmaların veya programların kaynak (bellek, bant genişliği vb.) kullanımı ve performansı üzerine yapılan çalışmalar olarak tanımlanabilir. Algoritmalar genellikle, farklı uzunluktaki girdiler ile çalışmak üzere tasarlanmıştır. Aynı probleme çözüm üreten farklı algoritmik tasarımları olan iki algoritmaya verileri girdi olarak verdiğimizde farklı çalışma zamanlarında işlerini bitirdiklerini gözlemleyebiliriz. Bu noktada iyi olan algoritmayı seçmek için bu iki algoritmayı karşılaştırmamız gerekli olmaktadır. Algoritma analizi genel olarak algoritmaların kıyaslanması için kullanılmaktadır.
Algoritma analizi, bilgisayarın gücünden, özel durumlardan ve veriden bağımsız olarak hesaplanmalıdır. Algoritma analizi, özellikle veriye bağımlı olmamalıdır çünkü algoritmanın performansı verinin büyüklüğü ile değişiklik göstermektedir. Burada veri miktarı bir parametre olarak kullanılmalıdır. Çözümleri karşılaştırma sürecinde programlar yerine algoritmaların karşılaştırılması daha sağlıklı olmaktadır. Çünkü farklı programlama tarzları kullanılarak yazılmış benzer algoritmaların çalışma zamanlarını programlar çok farklı sonuçlar verebilmektedir. Programlama tarzı bir algoritmanın çalışma zamanı üzerinde oldukça etkili olabilmektedir. Bu nedenle programları karşılaştırmak, bir algoritmanın kesin ölçümü için uygun olmamaktadır. Bu nedenler ile algoritma analizin veriden, donanımdan, programlama tarzından bağımsız olarak yapılıp sonucunda algoritmanın matematiksel bir formül ile ifade edilebilmesi gereklidir. Esasen algoritma analizi, çözümün içerisinde yer alan anlamlı ifadelerin sayılması esasına dayanmaktadır. Ardından büyüme fonksiyonları kullanılarak algoritma analizi tamamlanır.

Soru 2

“Bir algoritmanın ……………., algoritmanın problemi çözmesi için gerekli bellek alanını veren bir değer veya fonksiyon olarak tanımlanmaktadır.”
Yukarıdaki cümlede boş bırakılan yeri aşağıdakilerden hangisi doğru şekilde tamamlar?

Seçenekler

A
Hesaplama karmaşıklığı
B
Yürütme zamanı
C
Alan karmaşıklığı
D
Algoritma analizi
E
Algoritma tasarımı
Açıklama:
Algoritma Analizi / Alan Karmaşıklığı
Bir algoritmanın alan karmaşıklığı veya alan maliyeti, algoritmanın problemi çözmesi için gerekli bellek alanını veren bir değer veya fonksiyon olarak tanımlanmaktadır. Alan karmaşıklığı temel olarak program kodu ve verisi için gerekli tüm alanları kapsamaktadır. Eğer programın kodu için gerekli alan küçük ise hesaplamaya dahil edilmemektedir. Alan karmaşıklığı hesabında algoritma içerisinde kullanılan bellek alanları göz önünde bulundurularak hesaplamalar gerçekleştirilir. Örneğin, içerisinde n adet tamsayı (2 byte) bulunduran bir algoritma için alan karmaşıklığı 2n olarak hesaplanır. Alan karmaşıklığı fonksiyonu S(n) şeklinde gösterilmektedir. Eğer algoritma girdisi küçük ise alan karmaşıklığı göz ardı edilebilmektedir. Ancak yüksek girdilerde bu zaman karmaşıklığının yanında bu analize de ihtiyaç bulunmaktadır.

Soru 3

Geliştirilen bir algoritmanın problemi çözmek için harcadığı süre tanımı aşağıdaki seçeneklerden hangisine aittir?

Seçenekler

A
Hesaplama karmaşıklığı
B
Zaman karmaşıklığı
C
Alan karmaşıklığı
D
Algoritma analizi
E
Algoritma tasarımı
Açıklama:
Algoritma Analizi / Yürütme Zamanı- Zaman Karmaşıklığı
Geliştirilen bir algoritmanın problemi çözmek için harcadığı süreye “yürütme zamanı” ismi verilmektedir. Fakat bu noktada direk olarak süre karşılaştırılması, algoritmanın üzerinde çalıştığı bilgisayarın işlem gücü ile direk olarak bağlantılı olacaktır. Bu nedenle yürütme zamanı hesaplanırken algoritmanın çalıştığı süre boyunca kaç komut işlediği bilgisi kullanılmaktadır. Bir başka deyişle, algoritmanın çözüme ulaşabilmesi için, temel kabul edilen işlemlerden kaç adet yürütülmesi gerektiğini veren bir bağıntıdır. Burada temel işlem olarak kastedilen karşılaştırma, döngü çevrimi, aritmetik işlem gibi işlemlerdir.
Algoritmadaki eleman sayısı çok fazla olduğunda yürütme zamanı, zaman karmaşıklığı olarak da adlandırılır. Daha önce de belirtildiği üzere algoritmaları karşılaştırılmasında zaman ve alan karmaşıklıkları kullanılmaktadır. Yürütme zamanı hesaplanan algoritmaların karşılaştırmaları farklı girdi boyutlarında kolaylıkla yapılabilmektedir. Karmaşıklık incelemesinde karmaşıklığın nasıl ve ne hızda büyüdüğü de önemli bir durum olarak incelenmelidir.

Soru 4

Algoritma analizinde, t(zaman) ve n (girdi büyüklüğü) arasındaki ilişki için bir fonksiyon bulunmaya çalışılmaktadır. Ama genelde bu ilişki oldukça karışık ve çok terimli olabilmektedir. Fonksiyon içerisindeki katsayılar ve sabit sayılar atılarak fonksiyon daha basit hâle getirilebilir. Bu basitleştirme işlemi ile elde edilen ölçüme ne denir?

Seçenekler

A
Hesaplama karmaşıklığı
B
Zaman karmaşıklığı
C
Alan karmaşıklığı
D
Big-O gösterimi
E
Asimptotik karmaşıklık
Açıklama:
Bir önceki başlık altında, zaman karmaşıklığı hesaplamalarında, girdi sayısı olan bir algoritma için “n” değişkenini kullanarak zaman karmaşıklığı fonksiyonu yani T(n)’i hesaplaması hakkında bilgiler sunulmuştu. Bu başlık altında ise eleman sayısı n’nin sonsuza gitmesi durumunda algoritmanın, benzer işi yapan algoritmalarla karşılaştırmak için kullanılan asimptotik gösterim hakkında bilgiler sunulacaktır.
Esasen algoritma analizinde, t(zaman) ve n (girdi büyüklüğü) arasındaki ilişki için bir fonksiyon bulunmaya çalışılmaktadır. Ama genelde bu ilişki oldukça karışık ve çok terimli olabilmektedir. Bu nedenle fonksiyon içerisindeki katsayılar ve sabit sayılar atılarak fonksiyon daha basit hâle getirilebilir. Basitleştirilir ve gerçek fonksiyona göre yaklaşık bir fonksiyon sunulur. Bu basitleştirme işlemi ile elde edilen ölçüme asimptotik karmaşıklık denmektedir.

Soru 5

Bir algoritmanın en kötü çalışma zamanını gösteren gösterim türü aşağıdakilerden hangisidir?

Seçenekler

A
Asimptotik Gösterim
B
Big-O Gösterim
C
Big Omega Gösterimi
D
Big Theta Gösterimi
E
Zaman Karmaşıklığı
Açıklama:
Asimptotik Gösterim / Big-O Gösterimi
Big-O gösterimi ilk olarak Paul Bachman ve Edmund Landau tarafından ortaya atılmıştır. Big-O gösterimi zaman karmaşıklığında üst sınırı ifade etmektedir. Bir başka deyişle algoritmanın en kötü çalışma zamanını gösterir.

Soru 6

Zaman karmaşıklığında alt sınırı gösteren gösterim türü aşağıdakilerden hangisidir?

Seçenekler

A
Asimptotik Gösterim
B
Big-O Gösterim
C
Big Omega Gösterimi
D
Big Theta Gösterimi
E
Alan Karmaşıklığı
Açıklama:
Asimptotik Gösterim / Big Omega Gösterimi
Big Omega gösterimi zaman karmaşıklığında alt sınırı göstermektedir. Bir başka deyişle Big-Omega ile ölçülen değerden daha iyi daha hızlı bir değer bulunamaz. Big-Omega gösterimi Big-O gösteriminin tam tersi olarak görülebilir. Big-Omega gösterimi big-O gösterimlerde de olduğu gibi birçok ifadeyi sadeleştirerek elde edilir.

Soru 7

Bir algoritmanın performansının ölçülebilmesi için kullanılacak en önemli araçlardan biri Big Theta gösteriminin doğru olarak yer aldığı formül aşağıdakilerden hangisidir?

Seçenekler

A
Θ(g(n)) ≥ O(g(n)) Ω (g(x))
B
Θ(g(x)) = O(g(n)) Ω (g(n))
C
Θ(g(n)) ≤ O(g(x)) Ω (g(x))
D
Θ(g(n)) = O(g(n)) Ω (g(x))
E
Θ(g(n)) ≠O(g(n)) Ω (g(x))
Açıklama:
Asimptotik Gösterim / Big Omega Gösterimi
Big theta gösterimi Big-O gösterimi ile Big-Omega gösterimi arasında ortalama bir karmaşıklığı ifade eder. Bir başka deyişle algoritmanın ortalama çalışma zamanını göstermektedir.
Matematiksel olarak ifade etmek gerekirse;
Bir f(x) fonksiyonu için her durumda
c1.g(x) <=f(x) <=c2.g(x) koşullarını sağlayan pozitif, sabit c1, c2 değerleri bulunabiliyorsa
f(x)= Θ(g(x))
şeklinde ifade edilebilir.
Bunlara ek olarak big-tetha fonksiyonunu aşağıdaki şekilde ifade etmekte mümkündür.
Θ(g(n)) = O(g(n)) Ω (g(x))

Soru 8

F (x) ve g(x) herhangi iki fonksiyon olsun.
F(x) fonksiyonu için
C ve k sabit olmak üzere O(g(x))
O(g(x)) = c. |g(x)| + k
Yukarıdaki matematiksel ifadeye göre Big-O Gösteriminin formülü aşağıdakilerden hangisidir?

Seçenekler

A
|f(x)| ≤ c. |g(x)| + k
B
|f(g)| ≤ c. |g(x)| + k
C
|g(x)| ≤ c. |f(x)| + k
D
|f(x)| = c. |g(x)| + k
E
|f(x)| ≥c. |g(x)| + k
Açıklama:
Asimptotik Gösterim / Big Omega Gösterimi
Big-O gösterimi diğer asimptotik gösterimlerde de olduğu gibi birçok ifadeyi sadeleştirerek elde edilir. Örneğin çalışma zamanı T(n)=n4+n2+2n+8 olan bir algoritma için Big-O gösterimi O(n4) şeklinde olacaktır. Bu işlem bir fonksiyonun büyümesi şeklinde de tanımlanmaktadır. Matematiksel olarak ifade etmek gerekirse;
f ve g reel sayılarda tanımlı iki fonksiyon olsun.
f(x) fonksiyonu için
c ve k sabit olmak üzere O(g(x)) fonksiyonu aşağıdaki gibi tanımlanmaktadır.
O(g(x)) = c. |g(x)| + k olmak üzere;
|f(x)| ≤ c. |g(x)| + k

Soru 9

I. O(n) bir algoritmanın en kötü çalışma zamanını gösterir.
II. O(n²) gösterimine sahip algoritmalar O(2n) gösterimine sahip algoritmalardan daha yavaştır.
III. Big Omega zaman karmaşıklığında üst sınırı gösterir.
IV. Big Theta bir algoritmanın ortalama çalışma zamanını gösterir.
Yukarıdaki iadelerden hangisi/ hangileri yanlıştır?

Seçenekler

A
I ve III
B
II ve III
C
III ve IV
D
I ve IV
E
II ve IV
Açıklama:
Asimptotik Gösterim
II ve III. İfadeler tamamen yanlıştır. Big Omega gösterimi zaman karmaşıklığında alt sınırı göstermektedir. Bir başka deyişle Big-Omega ile ölçülen değerden daha iyi daha hızlı bir değer bulunamaz. O(n²) gösterimine sahip algoritmalar O(2n) gösterimine sahip algoritmalardan daha yavaş değildir. .

Soru 10

“…………………………… algoritmanın ortalama çalışma zamanını göstermektedir.” Boşluğu doğru olarak dolduracak olan seçenek aşağıdakilerden hangisidir?

Seçenekler

A
Asimptotik Gösterim
B
Big-O Gösterim
C
Big Omega Gösterimi
D
Big Theta Gösterimi
E
Alan Karmaşıklığı
Açıklama:
Asimptotik Gösterim / Big Theta Gösterimi
Big theta gösterimi big-O gösterimi ile big-Omega gösterimi arasında ortalama bir karmaşıklığı ifade eder. Bir başka deyişle algoritmanın ortalama çalışma zamanını göstermektedir.

Soru 11

Aşağıdakilerden hangisi insanoğlunun karşılaştığı problemlerden çözüme ulaşmak için geçmesi gereken aşamalardan biri değildir?

Seçenekler

A
Problemin farkına varılması
B
Problemin anlaşılması
C
Problem için çözüm yolu üretilmesi
D
Problem için çözümün uygulanması
E
Çözüm bulduktan sonra sorunu göz ardı etmek
Açıklama:
Giriş
"Çözüm bulduktan sonra sorunu göz ardı etmek", insanoğlunun problemleri çözme sürecinde yer almayan bir aşamadır.

Soru 12

Algoritma kelimesi aşağıdakilerden hangisinin isminden gelmektedir?

Seçenekler

A
Harezmi
B
İbni Sina
C
Russell
D
Platon
E
Aristoteles
Açıklama:
Giriş
Harezmi

Soru 13

Aşağıdakilerden hangisi algoritmanın özelliklerinden değildir?

Seçenekler

A
Kesinlik
B
Doğruluk
C
Verimlilik
D
Genellenebilirlik
E
Ürün verme
Açıklama:
Giriş
Ürün verme

Soru 14

Aşağıdakilerden hangisi algoritma değildir?

Seçenekler

A
Bellek yönetimi
B
Paketleme
C
Genetik
D
Optimisyon
E
Kitap yazma
Açıklama:
Algoritma, belirli bir problemi çözmek için sıralı, sonlu ve açık adımlardan oluşan bir işlemler dizisidir.
Temel özellikleri:


  • Giriş (input) alabilir,


  • Adım adım işlem yapar,


  • Çıkış (output) üretir,


  • Sonlu sayıda işlemde tamamlanır,


  • Belirsizliğe yer vermez.


Şıkların Analizi:


A) Bellek Yönetimi:


- Bilgisayar bilimlerinde, bellek yönetimi için algoritmalar vardır (örneğin: Garbage Collection, Paging, Segmentation).
Bir algoritma ile yönetilebilir.

B) Paketleme:


- Paketleme problemleri için algoritmalar geliştirilmiştir (örneğin: Knapsack algoritması).
Matematiksel optimizasyon problemlerine dayalı algoritmalar içerir.

C) Genetik:


- Genetik algoritmalar, evrimsel kurallara dayanan optimizasyon algoritmalarıdır.
Bizzat bir algoritma türüdür.

D) Optimizasyon:


- Optimizasyon, birçok algoritmanın konusudur (örneğin: Lineer programlama, genetik algoritmalar, greedy algoritmalar).
Algoritmalara dayalı bir alandır.

E) Kitap yazma:


- Yaratıcı, sanatsal ve kişisel kararlar içeren bir süreçtir.
- Belirli, sıralı ve sonlu adımlarla yapılması mümkün değildir.
Bu süreç algoritma değildir.

Doğru Cevap: E) Kitap yazma


Neden?


“Kitap yazma” süreci:


  • Belirsizlik içerir,


  • Sonlu ve açık adımlar halinde tanımlanamaz,


  • Yaratıcılık ve sezgi gerektirir.


Bu nedenle algoritma değildir.

Soru 15

Bir problemi çözerken aşağıdaki hangi algoritmayı öncelikle seçeriz?

Seçenekler

A
Hızlı olanı
B
Hesaplama yapabileni
C
Analiz edeni
D
Çok yer kaplayanı
E
İngilizce olanı
Açıklama:
Öncelikle az yer kaplayanı ve en hızlı olanı seçeriz.

Soru 16

Bilgisayarın gücünden, özel durumlardan ve veriden bağımsız hesaplanan çözümlere ne ad verilir?

Seçenekler

A
Algoritma analizi
B
OPtimisyon
C
Veri sıkıştırma
D
Bellek yönetimi
E
Zaman analizi
Açıklama:
Algoritma analizi

Soru 17

Geliştirilen bir algoritmanın problemi çözmek için harcadığı sürece ne ad verilir?

Seçenekler

A
Yürütme zamanı
B
Komut zamanı
C
Bellek
D
Karmaşa
E
Yön bulma
Açıklama:
Yürütme zamanı/Zaman karmaşıklığı

Soru 18

Aşağıdakilerden hangisi algoritmanın zaman karmaşıklığındaki üst sınırı ifade eder?

Seçenekler

A
Big-O Gösterimi
B
Big-tetha
C
Big-omega
D
Np-complete
E
T-zaman
Açıklama:
Big-O Gösterimi

Soru 19

Aşağıdakilerden hangisi algoritmanın zaman karmaşıklığındaki alt sınırını ifade eder?

Seçenekler

A
Big-Omega
B
Big-tetha
C
Np-complete
D
T-zaman
E
Big-O
Açıklama:
Big Omega gösterimi
Big-Omega

Soru 20

Algoritmanın en hızlı şekilde sonuca ulaşma durumuna ne ad verilir?

Seçenekler

A
En iyi durum (best case)
B
En kötü durum (worst case)
C
Durum (case)
D
Ortalama durum (average case)
E
Karmaşık durum
Açıklama:
En iyi/En Kötü ve Ortalama Durumlar
En iyi durum (best case)

Soru 21

Çözüm için geliştirilen algoritmaların veya programların kaynak (bellek, bant genişliği vb.) kullanımı ve performansı üzerine yapılan çalışmalar olarak tanımlanan kavram aşağıdakilerden hangisidir?

Seçenekler

A
Algoritma Analizi
B
Verimlilik Analizi
C
Problem Analizi
D
Durum Analizi
E
Vaka Analizi
Açıklama:
Algoritma Analizi, çözüm için geliştirilen algoritmaların veya programların kaynak (bellek, bant genişliği vb.) kullanımı ve performansı üzerine yapılan çalışmalar olarak tanımlanabilir. Algoritmalar genellikle, farklı uzunluktaki girdiler ile çalışmak üzere tasarlanmıştır. Aynı probleme çözüm üreten farklı algoritmik tasarımları olan iki algoritmaya verileri girdi olarak verdiğimizde farklı çalışma zamanlarında işlerini bitirdiklerini gözlemleyebiliriz. Bu noktada iyi olan algoritmayı seçmek için bu iki algoritmayı karşılaştırmamız gerekli olmaktadır. Algoritma analizi genel olarak algoritmaların kıyaslanması için kullanılmaktadır.

Soru 22

Algoritmaları karşılaştırmak için gerçekleştirilen algoritmanın zorluk derecesi ölçümüne ne ad verilir?

Seçenekler

A
Hesaplama karmaşıklığı
B
Hesaplama prosedürü
C
Hesaplama fonksiyonu
D
Hesaplamalı problem
E
Hesaplama maliyeti
Açıklama:
Algoritmaları karşılaştırmak için gerçekleştirdiğimiz algoritmanın zorluk derecesi ölçümüne “hesaplama karmaşıklığı (Computational Complexity)” denmektedir. Hesaplama karmaşıklığı algoritmanın gerçekleşebilmesi için gerekli olan maliyet olarak da tanımlanabilir. Algoritma analizi genel olarak iki önemli maliyet bulunmaktadır. Bunlardan ilki algoritmanın kullandığı bellek alanıdır ve “alan karmaşıklığı” olarak isimlendirilir. Diğer maliyet ise çalışma zamanıdır ve “zaman karmaşıklığı” şeklinde ifade edilmektedir. Günümüz teknolojisi göz önünde bulundurulduğunda, eğer problemin boyutu çok küçük ise algoritmanın hesaplama karmaşıklığının hesaplanması çok gerekli olmamaktadır. Algoritma seçiminde genel olarak zaman karmaşıklığı göz önünde bulundurulsa da zaman ve bellek gereksinimleri arasındaki dengeyi her zaman göz önünde bulundurmalıyız.

Soru 23

I. Yürütme zamanı / Zaman karmaşıklığı
II. Alan karmaşıklığı
III. En iyi, ortalama, en kötü durumlar
IV. Girdi
Yukarıdakilerden hangileri algoritma analizindeki temel kavramlardandır?

Seçenekler

A
Yalnız I
B
I ve IV
C
I, II ve III
D
I, II ve IV
E
I, II, III ve IV
Açıklama:
Algoritma analizinde temel kavramlar, yürütme zamanı / zaman karmaşıklığı, alan karmaşıklığı, en iyi, ortalama, en kötü durumlar olarak karşımıza çıkmaktadır. Bu kavramlar alt başlıklar hâlinde incelenecektir.

Soru 24

Big-O gösterimi ilk olarak kimler tarafından ortaya atılmıştır?

Seçenekler

A
Paul Bachman ve Edmund Landau
B
Alonzo Church ve Gödel-Herbrand-Kleen
C
Alan Turing ve Alonzo Church
D
Thomas Bayes ve Gerolamo Cardano
E
Gerolamo Cardano ve Edmund Landau
Açıklama:
Big-O gösterimi ilk olarak Paul Bachman ve Edmund Landau tarafından ortaya atılmıştır. Big-O gösterimi zaman karmaşıklığında üst sınırı ifade etmektedir. Bir başka deyişle algoritmanın en kötü çalışma zamanını gösterir.

Soru 25

Aşağıdakilerden hangisi zaman karmaşıklığında alt sınırı gösterir, bir başka deyişle onunla ölçülen değerden daha iyi daha hızlı bir değer bulunamaz?

Seçenekler

A
Big-Omega gösterimi
B
Big-O gösterimi
C
Big Theta Gösterimi
D
Asimptotik Gösterim
E
Little-o Gösterimi
Açıklama:
Big-Omega gösterimi Big-O gösteriminin tam tersi olarak görülebilir. Yani Big Omega gösterimi zaman karmaşıklığında alt sınırı göstermektedir. Bir başka deyişle Big-Omega ile ölçülen değerden daha iyi daha hızlı bir değer bulunamaz.

Soru 26

Seçenekler

A
B
O(logn)
C
O(nlogn)
D
E
O(n!)
Açıklama:

Soru 27

Algoritmadaki eleman sayısı çok fazla olduğunda yürütme zamanı, ------- olarak da adlandırılır.
Yukarıdaki cümlede boş bırakılan yeri aşağıdakilerden hangisi doğru olarak tamamlar?

Seçenekler

A
zaman karmaşıklığı
B
hesaplama karmaşıklığı
C
alan karmaşıklığı
D
yer karmaşıklığı
E
dil karmaşıklığı
Açıklama:
Algoritmadaki eleman sayısı çok fazla olduğunda yürütme zamanı, zaman karmaşıklığı olarak da adlandırılır. Daha önce de belirtildiği üzere algoritmaları karşılaştırılmasında zaman ve alan karmaşıklıkları kullanılmaktadır.

Soru 28

Aşağıdakilerden hangisi big-O gösterimi ile big-Omega gösterimi arasında ortalama bir karmaşıklığı ifade eder?

Seçenekler

A
Big theta gösterimi
B
Alan karmaşıklığı
C
Asimptotik varyans
D
Yürütme zamanı
E
Ortalama durum
Açıklama:
Big theta gösterimi big-O gösterimi ile big-Omega gösterimi arasında ortalama bir karmaşıklığı ifade eder. Bir başka deyişle algoritmanın ortalama çalışma zamanını göstermektedir.

Soru 29

Yürütme zamanı 2n4+n2+3 olan bir durumda n=3 için yürütme zamanı kaçtır?

Seçenekler

A
174
B
182
C
196
D
212
E
221
Açıklama:
2n4+n2+3 denkleminde n yerine 3 koyduğumuzda:
2.81+9+3 = 174 olur.

Soru 30

n=100 olduğunda alan karmaşıklığı açısından aşağıdaki algoritmalardan hangisi tercih edilir?

Seçenekler

A
S(n) = 1000n
B
S(n) = nn
C
S(n) = 10n + n2
D
S(n) = n3
E
S(n) = n(n2+1)
Açıklama:
C şıkkındaki fonksiyonun n=100 için değeri 10*100+1002=11.000 olmaktadır.
(A şıkkındaki fonksiyonun n=100 için değeri 1000*100=100.000 olarak daha büyüktür. Diğer seçenekler ise n3 = 1003 = 1.000.000 veya daha fazla bir değere sahip olmaktadır. Bu sebeple A şıkkından da büyük alan kaplamaktadır. Alan karmaşıklığı daha fazladır.)
n=100 için en küçük değerin elde edildiği fonksiyon c şıkkındaki fonksiyon olduğundan doğru cevap (C) şıkkıdır.

Soru 31

Geliştirilen bir algoritmanın problemi çözmek için harcadığı süreye ne ad verilir?

Seçenekler

A
Zaman karmaşıklığı
B
Alan karmaşıklığı
C
Hesaplama karmaşıklığı
D
En iyi durum
E
En kötü durum
Açıklama:
Algoritma analizinde temel kavramlar, yürütme zamanı / zaman karmaşıklığı, alan karmaşıklığı, en iyi, ortalama, en kötü durumlar olarak karşımıza çıkmaktadır. Geliştirilen bir algoritmanın problemi çözmek için harcadığı süreye “yürütme zamanı” ismi verilmektedir. Doğru cevap A'dır.

Soru 32

Zaman karmaşıklığı T(n)=n, T(n)=2n, T(n)=100n, T(n)=2n ve T(n)=3n olan algoritmalardan hangisinin tercih edilmesi gerekir?

Seçenekler

A
T(n)=n
B
T(n)=2n
C
T(n)=100n
D
T(n)=2n
E
T(n)=3n
Açıklama:
T(n)=n algoritmasının n için verilecek değerlere göre diğer algoritmalara göre oldukça iyi olduğu görülebilir. Doğru cevap A'dır.

Soru 33

ArananKalem=”Sarı”
WHILE (Kalem kutuda bakılmayan kalem kaldı mı?)
IF (sıradakiKalem=arananKalem)
PRINT “kalem bulundu”
EXIT
ENDWHILE
Yukarıdaki kod Sarı renkteki kalemin kalem kutuda bulunup bulunmadığını test etmektedir. n kalem kutudaki kalem sayısı olmak üzere ortalama durum nedir?

Seçenekler

A
T(n)=0
B
T(n)=1
C
T(n)=n/2
D
T(n)=n
E
T(n)=2n
Açıklama:
Bu algoritma için en iyi yürütme zamanı n kalem sayısı olmak üzere T(n)=1’ dir. Bu durum sorgulanan ilk kalemin sarı renkte olma durumunda gerçekleşir. Algoritma için en kötü durum ise sarı renkteki kalemin kalem kutuda bulunmaması veya en son sorguda bulunmasıdır. Bu durumda yürütme zamanı T(n)=n olacaktır. Ortalama durumda ise T(n)=n/2 şeklinde hesaplanabilir. Doğru cevap C'dir.

Soru 34

Bir algoritmanın bir problemi çözmesi için ihtiyaç duyduğu bellek miktarını belirten değere ne ad verilir?

Seçenekler

A
Zaman karmaşıklığı
B
Bellek erişim süresi
C
Alan karmaşıklığı
D
Giriş boyutu
E
Algoritmik doğruluk
Açıklama:
Alan karmaşıklığı, bir algoritmanın çalışırken ihtiyaç duyduğu toplam bellek miktarını ifade eder. Bu, algoritmanın ne kadar verimli bellek kullandığını analiz etmek için kullanılır.
Zaman karmaşıklığı ise algoritmanın çalışması için geçen süreyle ilgilidir, bellekle değil.

Soru 35

Zaman karmaşıklığı T(n)=n2+3n+3 olan bir algoritmanın n2 biçiminde düzenlenerek basitleştirilmesi işlemi ile elde edilen ölçüme ne ad verilir?

Seçenekler

A
Asimptotik karmaşıklık
B
Alan karmaşıklığı
C
Algoritma analizi
D
Ortalama durum
E
En iyi durum
Açıklama:
Esasen algoritma analizinde, t(zaman) ve n (girdi büyüklüğü) arasındaki ilişki için bir fonksiyon bulunmaya çalışılmaktadır. Ama genelde bu ilişki oldukça karışık ve çok terimli olabilmektedir. Bu nedenle fonksiyon içerisindeki katsayılar ve sabit sayılar atılarak fonksiyon daha basit hâle getirilebilir. Basitleştirilir ve gerçek fonksiyona göre yaklaşık bir fonksiyon sunulur. Bu basitleştirme işlemi ile elde edilen ölçüme asimptotik karmaşıklık denmektedir. Örneğin zaman karmaşıklığı T(n)= 80n2+3n+74 olan bir algoritmayı ele alalım. Bu fonksiyon içerisindeki katsayılar ve sabitleri göz ardı ettiğimizde 80n2 gibi bir fonksiyon elde edebiliriz. Doğru cevap A'dır.

Soru 36

Zaman karmaşıklığı fonksiyonu T(n)=1/4(n4)+4n3+4n2+n+4 için big-O gösterimi aşağıdakilerden hangisidir?

Seçenekler

A
O(n)
B
O(n2)
C
O(n3)
D
O(n4)
E
O(n!)
Açıklama:
Big-O gösterimi diğer asimptotik gösterimlerde de olduğu gibi birçok ifadeyi sadeleştirerek elde edilir. Örneğin çalışma zamanı T(n)=n4+n2+2n+8 olan bir algoritma için Big-O gösterimi O(n4) şeklinde olacaktır. Bu durumda verilen T(n)=1/4(n4)+4n3+4n2+n+4 fonksiyonu için Big-O gösterimi O(n4)'tür. Doğru cevap D'dir.

Soru 37

Aşağıdaki Big-O gösterimlerinden hangisi en yavaştır?

Seçenekler

A
O(logn)
B
O(n)
C
O(nlogn)
D
O(2n)
E
O(n!)
Açıklama:
Verilen Big-O gösterimlerinden en yavaş olanı O(n!)'dir (Bkz. Tablo 5.7, s.96). Doğru cevap E'dir.

Soru 38

Zaman karmaşıklığında alt sınır aşağıdakilerden hangisi ile gösterilir?

Seçenekler

A
Big-O
B
Big-Omega
C
Big-Tetha
D
Little-o
E
Little-omega
Açıklama:
Big-Omega gösterimi Big-O gösteriminin tam tersi olarak görülebilir. Yani Big Omega gösterimi zaman karmaşıklığında alt sınırı göstermektedir. Doğru cevap B'dir.

Soru 39

Bir f(x) fonksiyonu için her durumda
c1.g(x) <=f(x) <=c2.g(x) koşullarını sağlayan pozitif, sabit c1 , c2 değerleri bulunabiliyorsa f fonksiyonuna ne ad verilir?

Seçenekler

A
Big-O
B
Big-Omega
C
Big-Tetha
D
Little-o
E
Little-omega
Açıklama:
Bir f(x) fonksiyonu için her durumda
c1.g(x) <=f(x) <=c2.g(x) koşullarını sağlayan pozitif, sabit c1 , c2 değerleri bulunabiliyorsa f fonksiyonu f(x)= Θ(g(x))
şeklinde ifade edilebilir. Bunlara ek olarak big-tetha fonksiyonunu aşağıdaki şekilde ifade etmekte mümkündür.
Θ(g(n)) = O(g(n)) ∩ Ω (g(x))
Doğru cevap C'dir.

Soru 40

Algoritmanın olabilecek en kötü durumu üzerinden hesaplanan asimptotik gösterim aşağıdakilerden hangisidir?

Seçenekler

A
Big-O
B
Big-Omega
C
Big-Tetha
D
Little-o
E
Little-omega
Açıklama:
Asimptotik gösterimler, Big-O, Big-Omega ve Big-Tetha olarak isimlendirilmektedir. Big-O gösterimi algoritmanın olabilecek en kötü durumu üzerinden hesaplanırken, Big-Omega ise en iyi durum üzerinden hesaplanmaktadır. Big-tetha ise algoritmanın ortalama çalışma süresini göstermektedir. Doğru cevap A'dır.

Ünite 6

Soru 1

Karşılaştırılan iki verinin sıraya konulmasının ardından bu işlemin tüm veriler sıralanana kadar devam ettirildiği sıralama algoritma stratejisine ne ad verilir?

Seçenekler

A
Seçerek Sıralama
B
Eklemeli Sıralama
C
Değiştirerek Sıralama
D
Böl ve Yönet Sıralama
E
Numaralandırmalı Sıralama
Açıklama:
Değiştirerek Sıralama: Bu sıralama stratejisinde, karşılaştırılan iki veri öncelikle sıraya konulur. Ardından bu işlem tüm veriler sıralanana kadar devam ettirilir.
Soruda bahsedilen stratejide:


  • İkili karşılaştırmalar yapılır,


  • Yer değiştirme işlemi uygulanır,


  • Bu işlem tüm elemanlar sıralanana kadar devam eder.


Bu tanım en çok Bubble Sort (Kabarcık Sıralama) algoritmasına uyar. Çünkü:


  • Her iki komşu öğe karşılaştırılır,


  • Yer değiştirilir,


  • Bu işlem tekrarlanarak veriler sıralanır.


Bu mantık:


"Değiştirerek sıralama" olarak adlandırılan yöntemin özüdür.

Diğer Şıkların İncelemesi:


A) Seçerek Sıralama (Selection Sort)


- Minimum (veya maksimum) değer bulunur, başa alınır.
- Yer değiştirme yapılmaz, tüm elemanlar karşılaştırılır.
Bu tanıma tam olarak uymaz.

B) Eklemeli Sıralama (Insertion Sort)


- Her yeni eleman uygun yere eklenir.
- Daha çok kart dizmeye benzer.
Bu da “karşılaştır - değiştir - devam et” mantığını kapsamaz.

D) Böl ve Yönet Sıralama (Divide and Conquer)


- Merge Sort veya Quick Sort gibi algoritmaların stratejisidir.
- Veri küçük parçalara bölünür, sonra birleştirilir.
Sorudaki sırayla ilerleyen, sürekli karşılaştırmalı yapıya uymaz.

E) Numaralandırmalı Sıralama


- Böyle bilinen bir algoritma türü yoktur.
- Mümkünse dikkat dağıtıcı bir şık olarak eklenmiş.
Tanımsal bir karşılığı yok.

Sonuç:


Sorudaki işlem tarzı birebir "değiştirerek sıralama" (Bubble Sort gibi) yaklaşımına uygundur.
✔ Doğru cevap: C) Değiştirerek Sıralama

Soru 2

Aşağıda verilen sıralama algoritmalarından hangisi veya hangileri dahili sıralama algoritmaları grubunda yer alır?
I) Eklemeli Sıralama II) Değiştirerek Sıralama III) Böl ve Yönet Sıralama

Seçenekler

A
I
B
II
C
III
D
II,III
E
I,II ve III
Açıklama:
Değiştirerek Sıralama: Bu sıralama stratejisinde, karşılaştırılan iki veri öncelikle sıraya konulur. Ardından bu işlem tüm veriler sıralanana kadar devam ettirilir.
Seçerek Sıralama: Veriler içerisinde en küçük olanı bulunur ve sıraya yerleştirilir. Ardından kalan veriler arasında en küçük veri bulunur ve tekrar sıraya konulur. Bu işlem veri seti sıralanana kadar devam ettirilir.
Eklemeli Sıralama: Verileri birer birer alarak boş bir veri yapısı içerisine uygun sırada eklenir.
Böl ve Yönet Sıralama: Verinin sıralanması amacı ile bir veya iki veri kalana kadar problem daha küçük parçalara bölünür. Ardından en alt seviyede sıralanan parçalar yukarı seviyelere doğru birleştirilerek tüm verinin sıralanması sağlanır.
Numaralandırmalı Sıralama: Her bir veri diğer tüm verilerle karşılaştırarak ve daha küçük değere sahip veri sayısını bulunur. Ardından veri bu pozisyona yerleştirilir.
Tüm bu stratejiler, ögeleri karşılaştırmaya ve ardından bunları buna göre yen
I,II ve III

Soru 3

Kabarcık sıralama algoritması hangi sıralama stratejisine dayanır?

Seçenekler

A
Değiştirerek Sıralama
B
Numaralandırmalı Sıralama
C
Seçerek Sıralama
D
Böl ve Yönet Sıralama
E
Eklemeli Sıralama
Açıklama:
Kabarcık sıralama algoritması, değiştirerek sıralama stratejine dayanmaktadır

Soru 4

Kabarcık sıralama ile ilgili olarak verilen bilgilerden hangisi yada hangileri doğrudur?
I- Genel olarak, büyük listeleri sıralamak için kabarcık sıralama algoritması kullanılmalıdır
II) Kabarcık sıralama mümkün olan her çifti karşılaştırır
III) En basit sıralama algoritmalarından biridir

Seçenekler

A
I
B
II
C
I,II
D
II,III
E
I,II ve III
Açıklama:
Genel olarak, büyük listeleri sıralamak için kabarcık sıralama algoritması kullanılmamalıdır. Ancak, nispeten küçük listelerde oldukça iyi bir performans sergilemektedir.
Kabarcık sıralama en kötü sıralama türlerinden biridir. Bunun nedeni mümkün olan her çifti karşılaştırmasıdır.
Kabarcık sıralama, en basit sıralama algoritmalarından biridir.
II,III

Soru 5

Eklemeli sıralama ile ilgili olarak verilen bilgilerden hangisi yada hangileri doğrudur?
I- Değiştirerek sıralama stratejisini kullanmaktadır
II-Listenin belirli bir bölümünün zaten sıralanmış olduğunu varsayar
III- Kabarcık sıralama gibi zaman karmaşıklığına sahiptir.

Seçenekler

A
I
B
I,II
C
I,III
D
II,III
E
I,II ve III
Açıklama:
Tıpkı kabarcık sıralamada olduğu gibi eklemeli sıralama da değiştirerek sıralama stratejisini kullanmaktadır. Eklemeli sıralama algoritmasında, listenin belirli bir bölümünün zaten sıralanmış olduğunu, diğer bölümün ise sıralanmamış kaldığını varsayılmaktadır. Bu varsayımla her seferinde sıralanmamış bölümden bir eleman seçilerek sıralanmış bölümdeki uygun sıraya eklenmektedir.
Yine, bu sıralama algoritması, iç içe döngüler nedeniyle kabarcık sıralama gibi O(n2) zaman karmaşıklığına sahiptir.
I,II ve III

Soru 6

Aşağıda verilen sıralamala algoritmalarından hangisi veya hangileri iç içe iki döngü içerir?
I- Kabarcık sıralama II- Eklemeli sıralama III-Seçmeli sıralamanın

Seçenekler

A
I
B
I,II
C
II,III
D
I,III
E
I,II ve III
Açıklama:
Kabarcık sıralama, eklemeli sıralama ve seçmeli sıralamanın hepsinin iç içe iki döngü içermesinden dolayı tam karşılaştırma sayısını hesaplamak zorunda kalmadan genel karmaşıklıklarının O(n2)
olacağı kolaylıkla söylenebilir.
I,II ve III

Soru 7

Temel olarak başka sıralama algoritmalarının verimliliğini artıran bir algoritmadır ve içerisinde başka sıralama algoritmaları çalıştıran ve öncelikle bir aralık değeri belirlenmesini gerektiren sıralama algoritması aşağıdakilerden hangisidir?

Seçenekler

A
Seçmeli Sıralama
B
Kabuk Sıralama
C
Eklemeli Sıralama
D
Kabarcık Sıralama
E
Ağaç Sıralama
Açıklama:
Bir diğer sıralama algoritması da kabuk (shell) sıralamadır. İsmini algoritmayı geliştiren Donald
Shell’den almaktadır. Bu algoritma temel olarak başka sıralama algoritmalarının verimliliğini artıran bir algoritmadır ve içerisinde başka sıralama algoritmaları çalıştırır.
Kabuk sıralama

Soru 8

Yığın sıralama algoritmasında yer alan basamakların sırası nedir?

Seçenekler

A
Kaldırma işlemi, Takas işlemi, Yeniden yığınlama işlemi, İşlemin tekrarı
B
Takas işlemi, Kaldırma işlemi, Yeniden yığınlama işlemi, İşlemin tekrarı
C
Takas işlemi, Yeniden yığınlama işlemi, Kaldırma işlemi, İşlemin tekrarı
D
Yeniden yığınlama işlemi, Takas işlemi, Kaldırma işlemi, İşlemin tekrarı
E
Kaldırma işlemi, Yeniden yığınlama işlemi, Takas işlemi, İşlemin tekrarı
Açıklama:
Yığın ağaç yapısından bahsettikten sonra yığın sıralama yönteminin nasıl çalıştığını inceleyelim. Bahsedildiği üzere yığın ağaçlarında en büyük veri daima kök düğümde yani ilk indiste tutulmaktadır. Buradan
hareket ile algoritma temel olarak 4 basamaktan oluşmaktadır:
1. Takas işlemi: Kök elemanı alarak bir diziye yerleştirin yığının son elemanını kök elmanın yerine
yerleştirin.
2. Kaldırma işlemi: Yığın boyutunu 1 azaltın.
3. Yeniden yığınlama işlemi (Heapify): Kökteki en yüksek ögeye sahip olmamız için kök ögeyi tekrar
yığınlayın.
4. Bu işlemi, listenin tüm ögeleri sıralanana kadar tekrarlayın.
Takas işlemi, Kaldırma işlemi, Yeniden yığınlama işlemi, İşlemin tekrarı

Soru 9

Aşağıda verilen sıralama algoritmalarından hangisi sıralama problemine çözüm getirirken veriyi bir bütün olarak almaz?

Seçenekler

A
Böl ve Yönet
B
Yığın Sıralama
C
Ağaç Sıralama
D
Kabuk Sıralama
E
Seçmeli Sıralama
Açıklama:
Şu ana kadar bahsedilen tüm sıralama algoritmaları veriyi bir bütün olarak alıp sıralama problemine çözüm getirmektedirler. Sıralama algoritmaları arasında farklı yaklaşım gösteren algoritmalar da bulunmaktadır. Bu algoritmalar, sıralama problemini öz yinelemeli olarak daha yönetebilir alt problemlere bölmektedirler. Bu tip algoritmalar böl ve yönet algoritmaları adı altında sınıflandırılmaktadır.

Soru 10

Aşağıda verilen sıralam algoritmalarından hangisi veya hangileri böl yönet yaklaşımını kullanır?
I- Kabarcık Sıralama II- Hızlı Sıralama III- Birleştirmeli Sıralama

Seçenekler

A
I
B
I,II
C
I,III
D
II,III
E
I,II ve III
Açıklama:
Birleştirmeli sıralama (merge sort) algoritması böl ve yönet yaklaşımını kullanan diğer bir algoritmadır.
Bu algoritmadaki genel fikir daha önce de bahsedildiği üzere, verilen listeyi, birinci alt dizideki tüm elemanlar ikinci alt dizideki tüm elemanlardan daha küçük olacak şekilde tekrar tekrar bölmek ve ardından tüm alt dizileri birleştirmektir.
II ve III

Soru 11

Bir sıralama işlemini gerçekleştirebilmek için ilk tanımlanması gereken kavram aşağıdakilerden hangisidir?

Seçenekler

A
Sıra
B
Değişken
C
Liste
D
Ağaç
E
İkileme
Açıklama:
Bir sıralama işlemini gerçekleştirebilmek için öncelikle veri seti üzerinde “sıra” kavramını belirlememiz gerekmektedir.
Doğru yanıt "A" seçeneğidir.

Soru 12

Aşağıdaki açıklamada tanımlanan sıralama algoritması hangisidir?

"Bu sıralama stratejisinde, karşılaştırılan iki veri öncelikle sıraya konulur. Ardından bu işlem, tüm veriler sıralanana kadar tekrarlanır."

Seçenekler

A
Kabarcık (Bubble) sıralama
B
Seçmeli (Selection) sıralama
C
Birleştirme (Merge) sıralama
D
Hızlı (Quick) sıralama
E
Ekleme (Insertion) sıralama
Açıklama:

Verilen tanım, kabarcık sıralama (bubble sort) algoritmasını tarif eder. Bu algoritmada, her adımda ardışık iki eleman karşılaştırılır ve gerekiyorsa yer değiştirir. Bu işlem tüm liste sıralanana kadar devam eder. Diğer algoritmalar (örneğin quick sort ya da merge sort) daha karmaşık bölme-birleştirme ya da pivot seçimi stratejileri içerir.

Soru 13

Aşağıdaki sıralama türlerinden hangisinde veriler içerisinde en küçük olanı bulunur ve sıraya yerleştirilir ?

Seçenekler

A
Kabuk sıralama
B
Kabarcık sıralama
C
Seçerek sıralama
D
Numaralandırmalı Sıralama
E
Böl ve Yönet Sıralama
Açıklama:
Seçerek Sıralama: Veriler içerisinde en küçük olanı bulunur ve sıraya yerleştirilir. Ardından kalan veriler arasında en küçük veri bulunur ve tekrar sıraya konulur. Bu işlem veri seti sıralanana kadar devam ettirilir.
Doğru yanıt "C" seçeneğidir.

Soru 14

Kabarcık sıralama algoritması hangi stratejiye dayanmaktadır?

Seçenekler

A
Böl ve yönet sıralama
B
Eklemeli sıralama
C
Seçerek sıralama
D
Değiştirerek sıralama
E
Numaralandırmalı sıralama
Açıklama:
Kabarcık sıralama algoritması, değiştirerek sıralama stratejine dayanmaktadır. Temelindeki fikir oldukça basittir. Sırasız rastgele bir liste verildiğinde, her seferinde iki elemanı karşılaştırıp doğru büyüklük sırasına koyarak sıralama gerçekleştirilir.
Doğru yanıt "D" seçeneğidir.

Soru 15

"Örnek olarak aynı yıl içinde bulunan aylardan oluşan verileri sıralamamız istendiğinde kullanılabilecek bir sıralama algoritmasıdır."
Yukarıda verilen örnek aşağıdaki sıralama türlerinden hangisine aittir?

Seçenekler

A
Liste
B
Ağaç sıralama
C
Kabuk sıralama
D
Değiştirerek sıralama
E
Radix sıralama
Açıklama:
Radix Sıralama, değerleri küçük veya sınırlı veri setleri üzerinde iyi çalışan, temelde “karşılaştırmaya dayalı olmayan” sıralama algoritmasıdır. Örnek olarak aynı yıl içinde bulunan aylardan oluşan verileri sıralamamız istendiğinde kullanılabilecek bir sıralama algoritmasıdır.
Doğru yanıt "E" seçeneğidir.

Soru 16

Aşağıdakilerden hangisinde bir veri setinde aranan değerin setteki tüm elemanların tek tek kontrol ederek aranması söz konusudur?

Seçenekler

A
Doğrusal arama
B
Arama ağacı
C
Kabuk araması
D
Değiştirerek arama
E
Atlamalı arama
Açıklama:
Doğrusal arama (linear search) algoritması bir veri setinde aranan değerin setteki tüm elemanların tek tek kontrol ederek aranması mantığına dayanmaktadır. Arama işlemi bir sayı üzerinde olabileceği gibi metinsel verilerde üzerinde de gerçekleştirilebilmektedir.
Doğru yanıt "A" seçeneğidir.

Soru 17

Düzgün sıralama (smoothsort), İplik sıralama (Strand sort), Sabırlı sıralama (Patience sorting) gibi algoritmalar aşağıdaki gruplardan hangisine girmektedir?

Seçenekler

A
Radix sıralama algoritması
B
Diğer sıralama algoritmaları
C
Doğrusal sıralama algoritmaları
D
Birleştirmeli sıralama
E
Hızlı sıralama
Açıklama:
Bilinen sıralama algoritmaları dışında, geliştirilmiş birçok algoritma bulunmaktadır. Bunlar; Blok birleştirmeli sıralama (block merge sort), Değişimli sıralama (Exchange sort), Döngü sıralama (Cycle sort), Düzgün sıralama (smoothsort ), Girişe yönelik sıralama (introspective sort), Gnome sıralama (Gnome sort), İplik sıralama (Strand sort), Kitaplık sıralama veya boşluklu ekleme sıralaması (Library sort veya gapped insertion sort), Kokteyl sıralama (Cocktail shaker sort), Küp sıralama (Cube sort), Sabırlı sıralama (Patience sorting) bulunmaktadır.
Doğru yanıt "B" seçeneğidir.

Soru 18

Aşağıdaki sıralamalardan hangisi böl ve yönet yaklaşımını kullanmaktadır?

Seçenekler

A
Ağaç sıralama
B
Kabarcık sıralama
C
Birleştirmeli sıralama
D
Seçmeli sıralama
E
Radix sıralama
Açıklama:
Birleştirmeli sıralama (merge sort) algoritması böl ve yönet yaklaşımını kullanır. Bu algoritma özyineleme süreçlerini kullanmaktadır. Hızlı sıralamada olduğu gibi veri listesi ikişer elemanlı alt listelere ulaşıncaya kadar bölünür.
Doğru yanıt "C" seçeneğidir.

Soru 19

"İkili arama algoritması oldukça hızlı bir algoritmadır ancak yalnızca ....... veri setleri üzerinde çalışabilir."
Yukarıdaki boşluğa gelmesi gereken ifade aşağıdakilerden hangisidir?

Seçenekler

A
ikili
B
dağınık
C
rakamsal
D
sıralı
E
eşit
Açıklama:
İkili arama algoritması oldukça hızlı bir algoritmadır ancak yalnızca sıralı veri setleri üzerinde çalışabilir. Bu veri setleri sayısal olabildiği gibi sözel veriler de olabilmektedir.
Doğru yanıt "D" seçeneğidir.

Soru 20

" .........., veri seti kullanılarak oluşturulan bir yığın ağacının (heap) en üstündeki sayısını alarak sıralama işlemi yapmaktadır."
Yukarıdaki boşluğa gelmesi gereken en uygun ifade aşağıdakilerden hangisidir?

Seçenekler

A
Doğrusal sıralama
B
Dağınık sıralama
C
İkili sıralama
D
Linear sıralama
E
Yığın sıralama
Açıklama:
Yığın sıralama, veri seti kullanılarak oluşturulan bir yığın ağacının (heap) en üstündeki sayısını alarak sıralama işlemi yapmaktadır. Yığın ağacı, sıralama amacıyla kullanılan bir veri yapısıdır.
Doğru yanıt "E" seçeneğidir.

Soru 21

Aşağıdakilerden hangisi algoritma sıralamalarından değildir?

Seçenekler

A
Değiştirerek sıralama
B
Seçerek sıralama
C
Eklemeli sıralama
D
Böl ve yönet sıralama
E
Dahili sıralama
Açıklama:
Sıralama algoritmaları
Dahili sıralama

Soru 22

Sırasız bir liste verildiğinde her seferinde ardışık iki elemanı karşılaştırıp doğru büyüklük sırasına koyarak sıralama gerçekleştirir. İlk aşama sonunda sıralamanın ilk elemanı en sağa taşınmış olur. İç içe döngüler kullanır. O(n2) zaman karmaşıklığına sahiptir.
Tanımda verilen algoritma aşağıdakilerden hangisidir?

Seçenekler

A
Kabarcık sıralama
B
Ortalama sıralama
C
Bölmeli sıralama
D
Seçmeli sıralama
E
Eklemeli sıralama
Açıklama:
Kabarcık sıralama algoritması, değiştirerek sıralama stratejine dayanmaktadır. Temelindeki fikir oldukça basittir. Sırasız rastgele bir liste verildiğinde, her seferinde iki elemanı karşılaştırıp doğru büyüklük sırasına koyarak sıralama gerçekleştirilir. Liste içerisindeki ardışık ikili elemanları karşılaştırarak uygun sıraya yerleştirir. Kabarcık sıralama iç içe döngüler kullandığından, en kötü ve ortalama zaman açısından O(n2) zaman karmaşıklığına sahiptir.
Buna göre doğru cevap A seçeneğidir.

Soru 23

temp=x
x=y
y=temp
Yukarıda algoritmalarda tanımlanan işlem aşağıdakilerden hangisidir?

Seçenekler

A
Takas işlemi
B
Alma işlemi
C
Verme işlemi
D
Eşleme
E
Numaralandırma
Açıklama:
Kabarcık sıralama
Takas işlemi

Soru 24

İsmini algoritmayı geliştiren Donald Shell'den alan sıralama aşağıdakilerden hangisidir?

Seçenekler

A
Kabuk sıralama
B
Kabarcık sıralama
C
Değiştirmeli sıralama
D
Seçmeli sıralama
E
Radyal sıralama
Açıklama:
Kabuk sıralama

Soru 25

Değerleri küçük veya sınırlı veri setleri üzerinde çalışan, temelde karşılaştırmaya dayalı olmayan sıralama algoritması aşağıdakilerden hangisidir?

Seçenekler

A
Radix
B
Pivot
C
Shell
D
Petrus
E
Python
Açıklama:
Radix sıralama

Soru 26

Aşağıdakilerden hangisi yığın (heap) sıralama işleminin özelliklerinden değildir?

Seçenekler

A
Veri seti kullanılır.
B
Bir yığın ağacının en üstündeki sayıyı alarak sıralama işlemi yapılır.
C
Sıralama amacıyla kullanılan bir veri yapısıdır.
D
Bu yapıda üst düğüm daima çocuklarından büyüktür.
E
Bu yapıda üst düğüm daima en küçük olandır.
Açıklama:
Yığın (heap) sıralama
Bu yapıda üst düğüm daima en küçük olandır.

Soru 27

Aşağıdakilerden hangisi ağaç sıralama (tree sort) yönteminin bir özelliği değildir?

Seçenekler

A
Sıralama işlemi sırasında ikili arama ağacı (BST) kullanılır.
B
Ortalama durumda O(n log n) zaman karmaşıklığına sahiptir.
C
Veriler öncelikle bir yığında saklanır ve yığın yapısı sıralama için kullanılır.
D
Sıralama işlemi sırasındaki düğüm ziyaretleri sıklıkla in-order şeklindedir.
E
Ağaç yapısının dengeli olması durumunda performansı artar.
Açıklama:
Seçenek C, ağaç sıralama yöntemine ait değildir. Bu ifade heap sort algoritmasına aittir; heap sort algoritması sıralama için yığın (heap) yapısını kullanır.
Ağaç sıralama yönteminde veriler ikili arama ağacı (BST) yapısına yerleştirilir, ardından ağaç in-order sırayla dolaşılarak sıralı liste elde edilir. Bu nedenle C seçeneği ağaç sıralama yöntemiyle ilgili bir özellik değildir.

Soru 28

Algoritmaların hızlı sıralama listesinde diziyi ikiye bölen orta noktasına ne ad verilir?

Seçenekler

A
Pivot
B
Medyum
C
Medyan
D
Yığın
E
Indis
Açıklama:
Hızlı sıralama
pivot

Soru 29

10-20-30-40-45-50-60-70
Hızlı sıralama kullanarak sekiz tam sayıdan oluşan yukarıdaki bir diziyi sıraladığımızda aşağıdakilerden hangisi kesinlikle doğrudur?

Seçenekler

A
Bu işlemde pivot 10 dur.
B
Bu işlemde pivot 70 dir.
C
Bu işlemde pivot 40 veya 45 tir.
D
Bu işlemde pivot 20 dir.
E
Bu işlemde pivot 60 dir.
Açıklama:
Hızlı sıralama
Bu işlemde pivot 40 veya 45 tir.

Soru 30

Algoritmalar hakkında aşağıdaki maddelerden hangisi yanlıştır?

Seçenekler

A
Algoritmaların hızlı sıralama listesinde diziyi ikiye bölen orta noktasına pivot denir.
B
Donald Shell, kabuk sıralama algoritmasını geliştiren kişidir.
C
Değerleri küçük veya sınırlı veri setleri üzerinde çalışan temelde karşılaştırmaya dayalı olmayan sıralama algoritmasına Radix sıralama denir.
D
Yığın (heap) ağacının en üstündeki sayıyı alarak sıralama işlemidir.
E
Radix sıralama; takas işlemi ile sıralama gerçekleştirir.
Açıklama:
Sırasız bir liste verildiğinde, her seferinde iki elemanı karıştırıp doğru büyüklükte sıralamaya kabarcık sıralama denir.
Kabarcık sıralama, liste içerisindeki ardışık ikili elemanları karşılaştırarak uygun sıraya yerleştirir, bu işlem tüm dizi elemanları için gerçekleştirilmektedir. Birinci aşamada, ilk eleman ardından gelen eleman ile karşılaştırılır ve doğru büyüklük sırası için eğer gerekliyse takas işlemi uygulanır. Ardından sıra ile dizinin diğer elemanları ve ardından gelen elemanlar ile benzer işlem tekrarlanır. Radix sıralamada takas kullanılmamaktadır.

Ünite 7

Soru 1

Yukarıdaki şekilde verilen bağlı liste örneği için aşağıdakilerden hangisi doğrudur?

Seçenekler

A
İki düğümlü tek yönlü bağlı liste
B
İki düğümlü çift yönlü bağlı liste
C
Üç düğümlü tek yönlü bağlı liste
D
Üç düğümlü çift yönlü bağlı liste
E
Altı düğümlü tek yönlü bağlı liste
Açıklama:
Üç düğümlü tek yönlü bağlı listedir. Doğru cevap C seçeneğidir.

Soru 2

Aşağıda bir listenin başına düğüm eklemeye dair adımlar verilmiştir. Bu adımların doğru sıralanışı aşağıdakilerden hangisidir?

  1. Veri düğüm içine aktarılır ve işaretçi değeri olarak BOŞ atanır.

  2. Yeni bir düğüm yaratılmalıdır.

  3. Listenin geçerliliği yani en azından ilk düğümü içermesi durumu kontrol edilir.

  4. Geçerli bir liste var ise yeni düğüm işaretçisine listede bulunan ilk düğümün adresi yani listenin adresi atanmalıdır.

  5. Listenin adresi olarak yeni düğümün adresi atanmalıdır.

Seçenekler

A
I-II-III-IV-V
B
I-III-V-IV-II
C
II-I-V-IV-III
D
II-I-III-IV-V
E
V-II-I-III-IV
Açıklama:
Liste başına ekleme operasyonunda ilk olarak yeni bir düğüm yaratılmalıdır. Bu işlemde bellekte bir düğüm yaratılır, veri düğüm içine aktarılır ve işaretçi değeri olarak BOŞ atanır. Daha sonra listenin geçerliliği yani en azından ilk düğümü içermesi durumu kontrol edilir. Geçerli bir liste var ise yeni düğüm işaretçisine listede bulunan ilk düğümün adresi yani listenin adresi atanmalıdır. Bu atama ile yeni düğüm ile liste bağlanmış olacaktır. Bu bağlama sonrasında listenin başlangıç düğümü artık yeni düğüm olmalıdır. Bu sebeple listenin adresi olarak yeni düğümün adresi atanmalıdır. Diğer bir deyişle listeye erişim için artık yeni düğüm kullanılmalıdır.
Doğru cevap D seçeneğidir.

Soru 3

Şekilde verilen AVL ağaçlarında örneklenmiş döndürme işlemi aşağıdakilerden hangisidir?

Seçenekler

A
Sağa döndürme işlemi
B
Sola döndürme işlemi
C
Sağ-sol döndürme işlemi
D
Sol-sağ döndürme işlemi
E
Aşağı-yukarı döndürme işlemi
Açıklama:
Doğru cevap B seçeneğidir.

Soru 4

Temel liste işlemlerinden listeden bir düğümün silinmesi ile aşağıdakilerden hangisi ya da hangileri doğrudur?

  1. Listenin başından düğüm silme işlemi basitçe ikinci düğümün liste başı olarak etiketlenmesini gerektirir.

  2. Listede son düğüm silinmesi işleminde öncelikle son düğümden önceki düğüme kadar liste içinde ilerlenmesi, bu düğüme gelindiğinde ise işaretçisinin BOŞ hâle getirilmesi gereklidir.

  3. Listeden düğüm silme probleminin en basit hâli verilen bir verinin listede aranması ve listede bu verinin bulunması durumunda ilgili düğümün listeden silinmesidir.

Seçenekler

A
Yalnız I
B
Yalnız II
C
I ve II
D
I ve III
E
II ve III
Açıklama:
Temel liste işlemlerinden biri de listeden bir düğümün silinmesidir. Listenin başındaki ve sonundaki düğümün silinmesi işlemlerine ek olarak verilen bir verinin yani belirli bir düğümün de silinmesi istenebilir. Listenin başından düğüm silme işlemi basitçe ikinci düğümün liste başı olarak etiketlenmesini gerektirir. Doğru cevap C seçeneğidir.

Soru 5


Yukarıdaki şekilde verilen liste türü örneği için aşağıdakilerden hangisi doğrudur?

Seçenekler

A
Çift yönlü bağlı liste dört düğümlü bir örnek verilmiştir.
B
Burada p işaretçisi sonraki düğüme ait adres değerini saklamaktadır.
C
Burada n işaretçisi önceki düğüme ait adres değerini saklamaktadır.
D
Son düğüm ilk düğüme ait adres bilgisini saklamaktadır.
E
İlk düğümün p işaretçisi herhangi bir düğümü işaret etmeyeceği için geçerli bir adres saklamamaktadır.
Açıklama:
İlk düğümün p işaretçisi herhangi bir düğümü işaret etmeyeceği için geçerli bir adres saklamamaktadır. Doğru cevap E seçeneğidir.

Soru 6

Başka düğümlerin adreslerini saklamayan düğümlere verilen ad aşağıdakilerden hangisidir?

Seçenekler

A
Kök
B
Yaprak
C
Çocuk
D
Kardeş
E
Ebeveyn
Açıklama:
Başka düğümlerin adreslerini saklamayan düğümlere yaprak adı verilir. Doğru cevap B seçeneğidir.

Soru 7

Ağaç yapısında bulunan düğümler ile ilgili aşağıdaki ifadelerden hangisi ya da hangileri doğrudur?
  1. Ağacın yüksekliği kök düğümün yüksekliğine eşittir.
  2. Ağaçların yaprak düğümlerinin yüksekliği sıfırdır.
  3. Bir düğümden kök düğüme kadar izlenen yolda bulunan tüm düğümler ilgili düğümün varisleridir.

Seçenekler

A
Yalnız I
B
Yalnız II
C
I ve II
D
I ve III
E
II ve III
Açıklama:
Bir düğümden kök düğüme kadar izlenen yolda bulunan tüm düğümler ilgili düğümün atası olur. Doğru cevap C seçeneğidir.

Soru 8

Şekilde verilen örnek ikili bir arama ağacında X ve Y değerleri sırasıyla aşağıdakilerden hangisi olabilir?

Seçenekler

A
X=3, Y=6
B
X=3, Y=8
C
X=6, Y=3
D
X=9, Y=1
E
X=9, Y=6
Açıklama:
Bu ağaçlarda sol çocuk her zaman ebeveyninden küçük veya eşit değeri saklarken sağ çocuk ise her zaman ebeveyninden büyük bir değer saklamak durumundadır. Buna X=9 değerini alabilirken, Y ise 1,2 değerlerini alabilir. Doğru cevap D seçeneğidir.

Soru 9

İkili arama ağaçları ile ilgili aşağıdaki ifadelerden hangisi ya da hangileri doğrudur?
  1. İkili arama ağaçlarında gezinme için önce-kök, sonra-kök gibi çeşitli yöntemler vardır.
  2. Düğümlerin sakladıklarının veri değerine dair belirlenen kısıtlama sayesinde ikili arama ağaçları içinde gezinilirken ağaçta saklanan veriye sıralı şekilde ulaşılması mümkün değildir.
  3. İkili arama ağaçlarında belirli bir düğümün aranması işleminde düğümlerin sakladıkları değere göre sola veya sağa yönlendirme yapılarak sol veya sağ ağaç arama işlemine devam edilir.

Seçenekler

A
Yalnız I
B
Yalnız II
C
I ve II
D
I ve III
E
II ve III
Açıklama:
Düğümlerin sakladıklarının veri değerine dair belirlenen kısıtlama sayesinde ikili arama ağaçları içinde gezinilirken ağaçta saklanan veriye sıralı şekilde ulaşılması mümkündür. Doğru cevap D seçeneğidir.

Soru 10

Ağaç yapılarına ait aşağıdaki ifadelerden hangisi doğru değildir?

Seçenekler

A
Ağacın yüksekliği kök düğümün yüksekliğine eşittir.
B
Ağaçların yaprak düğümlerinin yüksekliği her zaman sıfırdan farklıdır.
C
Ağaç yapısında düğümler arası bağlantılar dal veya kenar olarak adlandırılır.
D
Kök düğümün en uçtaki yaprak düğüme olan uzaklığı (geçilen kenar sayısı) ağacın derinliğini ifade eder.
E
Ağaçlar düğümlerin hiyerarşik bir yapıya sahip olacak şekilde birbirine bağlandığı doğrusal olmayan yapılardır.
Açıklama:
Ağaçların yaprak düğümlerinin yüksekliği sıfırdır. Doğru cevap B seçeneğidir.

Soru 11

Liste nedir?

Seçenekler

A
Bitişik bir bellek bloğunda veri öğelerini depolayan bir veri yapısı.
B
Bitişik olmayan bir bellek bloğunda veri öğelerini depolayan bir veri yapısı.
C
Yalnızca bir veri öğesini depolayan bir veri yapısı.
D
Yalnızca Boole verilerini depolayan bir veri yapısı.
E
Yalnızca String verilerini depolayan bir veri yapısı.
Açıklama:
Bağlı listelerde düğümler bir sonraki düğümün adresini gösterdiğinden bellekte farklı yerlerde yer alabilirler. Listeler dizi (İng. array) yapılarına benzer şekilde belirli bir veri koleksiyonunu işlemek/saklamak amaçlı
kullanılırlar. Ancak bellek kullanımı açısından daha avantajlı oldukları durumlar söz konusudur. Örneğin, 100 adet sayının dizi yapısı ile saklanması durumunda bu kümenin tümünün tek bir bellek bloğu içinde
saklanması gerekirken liste yapısında her bir düğüm bellekteki farklı bir lokasyonda bulunabilir
Dopru yanıt B seçeneğinde verilmiştir.

Soru 12

Tek yönlü liste ile çift yönlü liste arasındaki temel fark nedir?

Seçenekler

A
Tek yönlü bir listede yalnızca bir yönde gezinilebilirken, çift yönlü bir listede her iki yönde de gezinilebilir.
B
Tek yönlü bir liste yalnızca ilkel veri türlerini depolayabilirken, çift yönlü bir liste nesneleri depolayabilir.
C
Tek yönlü bir liste bir dizi kullanılarak yaratılırken çift yönlü bir dizi bir matris kullanılarak yaratılır.
D
Tek yönlü bir liste sabit bir uzunluğa sahipken, çift yönlü bir liste dinamik olarak büyüyebilir.
E
Tek yönlü liste ve çift bağlantılı listeyönlü aynı veri yapısındadır.
Açıklama:
Çift yönlü listelerin farkı iki adet işaretçiye sahip olmalarıdır. Bu sayede önceki ve sonraki düğüme ait adresi saklayarak çift yönlü harekete olanak tanırlar
Doğru yanıt A seçeneğinde verilmiştir.

Soru 13

Aşağıda verilen seçeneklerden hangisi bir liste türü değildir?

Seçenekler

A
Tek yönlü bağlı liste
B
Çift yönlü bağlı liste
C
Dairesel tek yönlü bağlı liste
D
Dairesel çift yönlü bağlı liste
E
Dizisel Liste
Açıklama:
Listeler işaretçilerin sayısı ve kullanımına bağlı olarak dört temel sınıfa ayrılırlar. Bunlar
1. Tek yönlü bağlı liste
2. Çift yönlü bağlı liste
3. Dairesel tek yönlü bağlı liste
4. Dairesel çift yönlü bağlı liste
Bu soruda E seçeneğini işaretlemeniz gerekir.

Soru 14

Aşağıda verilen şekilde görülen liste ne tür bir listeye örnektir?

Seçenekler

A
Tek yönlü bağlı liste
B
Dairesel Dizi
C
İki yönlü dizi
D
Çift yönlü bağlı liste
E
Dairesel çift yönlü bağlı liste
Açıklama:
Çift yönlü listelerin farkı iki adet işaretçiye sahip olmalarıdır. Bu sayede
önceki ve sonraki düğüme ait adresi saklayarak çift yönlü harekete olanak tanırlar.
Doğru yanıt D seçeneğinde verilmiştir.

Soru 15

Dairesel tek yönlü bağlı liste ile tekyönlü bağlı liste arasındaki fark nedir?

Seçenekler

A
Dairesel tek yönlü bağlı listelerde son düğüm ilk düğüme ait adres bilgisini saklamaktadır.
B
Dairesel tek yönlü bağlı listede iki taraflı hareket mümkünken tekyönlü bağlı listede bu mümkün değildir.
C
Dairesel bağlı listelerde ilk düğüm son düğüme ait adres bilgisini saklamaktadır.
D
Tek yönlü bağlı liste sabit bir uzunluğa sahipken dairesel tek yönlü bağlı liste dinamik olarak büyüyebilir.
E
Dairesel tek yönlü bağlı liste sabit bir uzunluğa sahipken tek yönlü bağlı liste dinamik olarak büyüyebilir.
Açıklama:
Dairesel bağlı listelerde diğer listelerden farklı olarak son düğüm ilk düğüme ait adres bilgisini saklamaktadır.
Doğru yanıt A seçeneğinde verilmiştir.

Soru 16

Aşağıda sözde kod olarak verilen SoruIslem'in görevi nedir?

Seçenekler

A
Dizide ilk elemanın silinmesini sağlar.
B
Tek yönlü bağlı listede son elemanın silinmesini sağlar.
C
Dizide son elemanın silinmesini sağlar.
D
Tek yönlü bağlı listede ilk elemanın silinmesini sağlar.
E
Çift yönlü bağlı listeden herhangi bir düğümün silinmesini sağlar.
Açıklama:
Bağlı listenin başından düğüm silme işlemi basitçe ikinci düğümün liste başı olarak etiketlenmesini gerektirir
Kodda öncelikle listenin boş olup olmadığı kontrol edilmektedir. Liste boş değil ise listenin son elemanı (Tek yönlü bağlı bağlı listede son elemanın işaretçisi NULL olarak yer almaktadır) bulunana kadar liste üzerinde gezinme yapılmaktadır. Listedeki son eleman bulunduğunda önceki düğüm artık son eleman olacaağı için önceki düğümün işaretçisine BOŞ (NULL) değeri atanmakta ve listenin sonundaki düğüm silinmektedir.
Doğru yanıt B seçeneğinde verilmiştir.

Soru 17

Ağaç yapılarında kök düğüm hangi katmanda bulunur?

Seçenekler

A
Katman numarası en büyük düğümde bulunur.
B
Katman 1 de bulunur.
C
Katman 0 da bulunur
D
Katman -1 de bulunur.
E
Her katmandaki düğüm kök düğümü olduğundan her katmanda bulunur.
Açıklama:
Ağaçlar düğümlerin hiyerarşik bir yapıya sahip olacak şekilde birbirine bağlandığı doğrusal olmayan yapılardır. Bu yapılarda ilk düğüm kök olarak adlandırılır. Kök düğümden başlayarak her düğümün adreslerini
sakladığı çocuk düğümleri olabilir. Görsel olarak kök düğüm en üst katman olan katman 0 da yer alır ve diğer düğümler katmanlar hâlinde yerleştirilirler.
Doğru yanıt C seçeneğinde verilmiştir.

Soru 18

Bir ikili ağaçta bir düğümün sahip olabileceği maksimum çocuk sayısı nedir?

Seçenekler

A
0
B
1
C
2
D
3
E
2^2 = 4
Açıklama:
İkili ağaçlarda her bir düğümün en fazla iki çocuk düğümü olabilmektedir. Bu düğümler sağ ve sol çocuk olarak adlandırılmaktadır. İkili ağaçlar derleyiciler tarafından söz dizimi ağaçlarının oluşturulması, ifade derleyici ve çözücülerde kullanılmaktadır
Doğru yanıt C seçeneğinde verilmiştir.

Soru 19

İkili ağaç ile ikili arama ağacı arasındaki fark nedir?

Seçenekler

A
Bir ikili ağacın düğüm başına herhangi bir sayıda çocuğu olabilirken, bir ikili arama ağacının düğüm başına yalnızca iki çocuğu olabilir.
B
Bir ikili ağacın düğümleri tek yönlü bağlı liste içermekte ancak ikili arama ağaçlarının düğümleri çift yönlü bağlı listeler içermektedir.
C
Bir ikili arama ağacın düğüm sayısı her zaman ikili ağaçların düğüm sayısından farklıdır.
D
İkili arama ağaçlarının düğümlerinin sol tarafındaki düğümler sağ taraftaki düğümlerden küçük ögeler içermek zorundadır. İkili ağaçlarda bu zorunluluk yoktur.
E
İkili arama ağaçlarında her düğümün mutlaka bir sol ve sağ düğümü olması gerekirken ikili ağaçlarda bu zorunluluk yoktur.
Açıklama:
İkili arama ağaçları her düğümün sağ ve sol çocuğunun olabileceği yapıya sahiptir. Bu ağaçlarda sol çocuk her zaman ebeveyninden küçük veya eşit değeri saklarken sağ çocuk ise her zaman ebeveyninden büyük bir değer saklamak durumundadır.
Doğru yanıt D seçeneğinde verilmiştir.

Soru 20

AVL ağacını ikili arama ağacına göre kullanmanın birincil avantajı nedir?

Seçenekler

A
AVL ağaçları listelerden oluşurken ikili arama ağaçları düğümlerden oluşur.
B
AVL ağaçları, ikili arama ağaçlarından daha basit bir uygulamaya sahiptir.
C
AVL ağaçları, ikili arama ağaçlarından daha fazla türde veri depolayabilir.
D
AVL ağaçları, ikili arama ağaçlarından daha az bellek gerektirir.
E
AVL ağaçları, arama, ekleme ve silme işlemleri için daha hızlı en kötü durum zaman karmaşıklığına sahiptir.
Açıklama:
AVL ağaçları dengeli ağaçlar olduğundan aranan değere en kısa sürede ulaşılabilir. Bu yüzden arama, ekleme ve silme işlemleri için daha hızlı en kötü durum zaman karmaşıklığına sahiptir.
Doğru yanıt E seçeneğinde verilmiştir.

Soru 21

"......." ve "........" yapıları işaretçilerin kullanımı sayesinde dinamik olarak saklanan veri miktarının ve/veya verinin değiştirilebileceği veri yapılarıdır.
Yukarıdaki boşluklara aşağıdaki ikililerden hangisi gelmelidir?

Seçenekler

A
Ağaç-liste
B
Düğüm-veri
C
Adres-veri
D
Liste-düğüm
E
Ağ-ağaç
Açıklama:
Ağaç ve liste yapıları işaretçilerin kullanımı sayesinde dinamik olarak saklanan veri miktarının ve/veya verinin değiştirilebileceği veri yapılarıdır.
Doğru yanıt "A" seçeneğidir.

Soru 22

Bir düğümden diğer düğüme geçmek için gereken gereken eleman aşağıdakilerden hangisidir?

Seçenekler

A
Düğüm ucu
B
İşaretçi
C
Liste
D
Yolak
E
Adres
Açıklama:
Düğüm birimi içerisinde veri ve diğer düğümlere ait adres bilgisini taşıyan işaretçi(ler) yer alır. Bu işaretçiler sayesinde bir düğümden diğer düğüme geçiş yapılabilir.
Doğru yanıt "B" seçeneğidir.

Soru 23

Verilerin bellekte ardışık olarak saklanmasını gerektirmeyen yapı aşağıdakilerden hangisidir?

Seçenekler

A
Ai
B
Adres
C
Liste
D
Dizin
E
Yığın
Açıklama:
Listeler verilerin bellekte ardışık olarak saklanmasını gerektirmeyen dinamik yapılardır. Bu dinamik yapı temelde veriyi saklayan düğüm yapısının içine işaretçiler yerleştirilerek kurulur.
Doğru yanıt "C" seçeneğidir.

Soru 24

Liste başına ekleme operasyonunda ilk olarak yaratılan düğümün adres değeri aşağıdaki seçeneklerden hangisinde doğru olarak verilmiştir?

Seçenekler

A
255
B
0
C
1
D
Boş
E
Tanımsız
Açıklama:
Liste başına ekleme operasyonunda ilk olarak yeni bir düğüm yaratılmalıdır. Bu işlemde bellekte bir düğüm yaratılır, veri düğüm içine aktarılır ve işaretçi değeri olarak BOŞ atanır.

Soru 25

Yukarıda verilen kod aşağıdaki işlemlerden hangisine aittir?

Seçenekler

A
Yeni liste oluşturma
B
Liste girdisi yaratma
C
Bağlı liste girişlerinin taranması
D
2. pozisyona düğüm eklenmesi
E
Bağlı listeden son düğümün silinmesi
Açıklama:
Görselde verilen işlem bağlı listeden son düğümün silinmesine dair olan koddur.
Doğru yanıt "E" seçeneğidir.

Soru 26

Aşağıdakilerden hangisi liste yapılarının gruplanmasında kullanılan bir ölçüttür?

Seçenekler

A
Elemanların fiziksel büyüklüğü
B
Listenin ekrana yazdırılma süresi
C
Elemanlar arasındaki bağlantı tipi
D
Kullanıcının tercih ettiği veri türü
E
İşlemci mimarisi
Açıklama:
Listeler işaretçilerin sayısı ve kullanımına bağlı olarak dört temel sınıfa ayrılırlar. Bunlar
1. Tek yönlü bağlı liste
2. Çift yönlü bağlı liste
3. Dairesel tek yönlü bağlı liste
4. Dairesel çift yönlü bağlı liste
Liste yapıları (örneğin: bağlı liste, çift bağlı liste, dairesel liste) genellikle elemanlar arasındaki bağlantı türüne göre gruplanır. Bu bağlantı, verinin nasıl erişildiğini ve işlediğini belirler. Diğer seçenekler bu sınıflandırma açısından belirleyici değildir.

Soru 27

Ağaç yapılarının derinliğini aşağıdakilerden hangisi belirler?

Seçenekler

A
Geçilen kenar sayısı
B
Yaprak düğüm sırası
C
İşaretçi sayısı
D
Düğüm yüksekliği
E
Düğüm sırası
Açıklama:
Kök düğümün en uçtaki yaprak düğüme olan uzaklığı (geçilen kenar sayısı) ağacın derinliğini ifade eder.
Doğru yanıt "A" seçeneğidir.

Soru 28

AVL ağaçları her bir düğümün sağ ve sol ağaçlarının uzunluğu arasındaki fark en fazla kaç olabilir?

Seçenekler

A
Boş
B
2
C
1
D
12
E
6
Açıklama:
AVL ağaçları sağ ve sol alt ağaçlarda dengenin sağlandığı ikili ağaçlardadır. Diğer bir deyişle bu ağaçlarda her bir düğümün sağ ve sol ağaçlarının uzunluğu arasındaki fark en fazla bir olabilir.
Doğru yanıt "A" seçeneğidir.

Soru 29


Görsele göre verilen işlem aşağıdakilerden hangisidir?

Seçenekler

A
Yatay sağ arama
B
Dikey ters arama
C
Sol tekrarlı arama
D
Sağa döndürme
E
Sola döndürme
Açıklama:

Görselde verilem işlem sağa döndürmedir.
Doğru yanıt "D" seçeneğidir.

Soru 30

AVL ağaçlarında yeni bir düğüm eklendiğinde eğer ağacın dengesi bozulur ise aşağıdaki işlemlerden hangisi yapılmalıdır?

Seçenekler

A
Sorgu kontrolü
B
Hata analizi
C
İşaretçi kontrolü
D
Ağacın yeniden yazılması
E
Döndürme işlemi
Açıklama:
AVL ağaçlarında yeni bir düğüm eklendiğinde eğer ağacın dengesi bozulur ise döndürme işlemi ile ağaç tekrar dengeli hâle getirilir. Sağ, sol, sağ-sol, sol-sağ şeklinde isimlendirilen 4 döndürme işlemi vardır.

Soru 31

Aşağıdakilerden hangisi bir düğümden diğer düğüme geçişi sağlar?

Seçenekler

A
işaretçi
B
veri
C
adres
D
yaprak
E
kök
Açıklama:
Bir düğümden diğer düğüme geçişi işaretçi, sağlar.

Soru 32

Düğümler arası ilişkilerin sadece ok (→) kullanılarak ve işaretçi çizilmeden gösterilmesinin nedeni aşağıdakilerden hangisidir?

Seçenekler

A
İşaretçinin önemsiz olması
B
Gösterim kolaylığı
C
Programcı tercihi
D
Yazım hatası
E
Adreslerin önemsiz olması
Açıklama:
Düğümler arası ilişkilerin sadece ok kullanılarak ve işaretçi çizilmeden gösterilmesinin nedeni gösterim kolaylığıdır.
Veri yapılarında düğümler arası ilişki, genellikle bir işaretçi (pointer) ile kurulsa da, diyagramlarda bu işaretçileri ayrıntılı olarak çizmek yerine sadece bir ok (→) ile temsil etmek hem pratiklik hem de okunabilirlik açısından tercih edilir.

Bu yöntem neden kullanılır?




  • Gerçek bellekte işaretçiler vardır, ancak çizimlerde soyut bir temsil kullanmak daha kolay ve görseldir.


  • İşaretçi çizmek yerine ok kullanmak:


    • Diyagramın sade görünmesini sağlar.


    • Karmaşıklığı azaltır.


    • Eğitim ve sunumlarda anlatımı kolaylaştırır.




Diğer Şıklar Neden Yanlış?


A) İşaretçinin önemsiz olması:
→ Tam tersi, işaretçiler oldukça önemlidir. Gösterilmemesi, önemsenmediği anlamına gelmez.
C) Programcı tercihi:
→ Bu bir bireysel tercih değil, görsel gösterim konvansiyonudur.
D) Yazım hatası:
→ Bilinçli olarak yapılan bir gösterimdir, hata değildir.
E) Adreslerin önemsiz olması:
→ Bellek adresleri uygulama için önemlidir, sadece görsel temsil sırasında soyutlanır.

Sonuç:


Düğümler arası ilişkiler diyagramlarda işaretçi yerine okla gösterilir çünkü bu gösterim kolaylığı ve görsel sadelik sağlar.
Doğru cevap: B) Gösterim kolaylığı

Soru 33

Son düğümün silinebilmesi için, aşağıdakilerden hangisinin yapılması gerekir?

Seçenekler

A
verilerin kontrol edilmesi
B
işlemlerin silinecek düğümden başlanması
C
düğüm işaretçisinin boş hale getirilmesi
D
işlemlerin silinecek düğüme erişmemesi
E
düğüm sayısının tespiti
Açıklama:
Son düğümün silinebilmesi için, düğüm işaretçisinin boş hale getirilmesi gerekir.

Soru 34

Son ve ilk düğüm arasında bulunan ve ardışık olarak çok sayıda düğümün birbirinin adresini sakladığı yapı, aşağıdakilerden hangisidir?

Seçenekler

A
işaretçi
B
adres
C
düğüm
D
liste
E
ağaç
Açıklama:
Son ve ilk düğüm arasında bulunan ve ardışık olarak çok sayıda düğümün birbirinin adresini sakladığı yapı, listelerdir.

Soru 35

Listeler, işaretçilerin kullanımı ve sayısına bağlı olarak kaç temel sınıfa ayrılır?

Seçenekler

A
8
B
7
C
6
D
5
E
4
Açıklama:
Listeler, işaretçilerin kullanımı ve sayısına bağlı olarak 4 temel sınıfa ayrılır.

Soru 36

Ağaç yapıları, aşağıdakilerden hangisinden başlar?

Seçenekler

A
kök düğüm
B
boş düğüm
C
yaprak
D
doğrusal düğüm
E
katman 3
Açıklama:
Ağaç yapıları, kök düğümden başlar.

Soru 37

ikili ağaçlarda her bir düğümün en fazla kaç tane çocuk düğümü olabilir?

Seçenekler

A
1
B
2
C
3
D
4
E
5
Açıklama:
ikili ağaçlarda her bir düğümün en fazla iki çocuk düğümü olabilir.
2

Soru 38

AVL ağaçlarında, sağ ve sol ağaçların uzunlukları arasındaki fark, en fazla ne kadar olabilir?

Seçenekler

A
3
B
2
C
1
D
0
E
4
Açıklama:
AVL ağaçlarında, sağ ve sol ağaçların uzunlukları arasındaki fark, en fazla bir (1) olabilir.

Soru 39

Geçerli bir adres bilgisinin saklanmadığı düğümler, aşağıdakilerden hangisidir?

Seçenekler

A
sayısal veri saklayan düğüm
B
listedeki ilk düğüm
C
kök düğüm
D
ağaç yapısındaki yaprak düğümleri
E
liste yapısındaki bütün düğümler
Açıklama:
Ağaç yapısındaki yaprak düğümleri, geçerli bir adres bilgisinin saklanmadığı düğümlerdir

Soru 40

Düğümlerin bir kök düğümden başlayarak hiyerarşik düzende bağlandığı ve doğrusal olmayan veri yapısı, aşağıdakilerden hangisidir?

Seçenekler

A
tek yönlü bağlı liste
B
çift yönlü bağlı liste
C
dairesel tek yönlü bağlı liste
D
dairesel çift yönlü bağlı liste
E
ağaç yapıları
Açıklama:
Düğümlerin bir kök düğümden başlayarak hiyerarşik düzende bağlandığı ve doğrusal olmayan veri yapısı, ağaç yapılarıdır.

Ünite 8

Soru 1

Gözetimli öğrenme aşağıda verilen problemlerin hangisine veya hangilerine çözüm üretebilir?
I- Sınıfandırma II- Kümeleme III- Regresyon

Seçenekler

A
I
B
I,II
C
I,III
D
II,III
E
I,II ve III
Açıklama:
Gözetimli öğrenmede iki temel problem üzerinde çözüm üretilebilir. Bunlardan ilki sınıflandırma problemidir. Gözetimli algoritmalar sınıflandırma dışında değer tahminleme amaçlı da kullanılırlar. Bu durumda ilgili problem sürekli bir problem olarak kabul edilerek regresyon ismiyle anılır.
Gözetimli öğrenmede iki temel problem üzerinde çözüm üretilebilir. Bunlardan ilki sınıflandırma problemidir. Sınıflandırma verilen bir örneğin bilinen sınıflardan hangisine ait olduğunun saptanmasıdır.
Gözetimli algoritmalar sınıflandırma dışında değer tahminleme amaçlı da kullanılırlar. Bu durumda ilgili problem sürekli bir problem olarak kabul edilerek regresyon ismiyle anılır. Regresyon algoritmalarında mevcut örneklerin değerleri göz önünde bulundurularak bir tahminde bulunulur.
Doğru cevap C seçeneğidir.

Soru 2

Aşağıdakilerden hangisi yada hangileri gözetimsiz öğrenmenin uygulama hedefleri arasındadır?
I- Kümeleme II- Boyut indirgeme III-Regresyon

Seçenekler

A
I
B
I,II
C
I,III
D
II,III
E
I,II ve III
Açıklama:
Diğer bir bakış açısıyla etiketli veri olmaması durumunda gözetimsiz yöntemler tercih edilir. Sınıflandırma problemine benzer şekilde verilerin belirli kümeler altında toplanması işlemi kümeleme algoritmaları ile sağlanır. Bu yaklaşımda her bir örnek kendine en benzer örnekler ile bir küme oluşturur ancak ilgili kümeye bir sınıf etiketi atanamaz. Gözetimsiz öğrenmenin diğer bir uygulama hedefi ise bir modeldeki öznitelik sayısını, boyut azaltma yoluyla düşürmek için kullanılmasıdır.
I,II

Soru 3

Pekiştirmeli öğrenme aşağıdaki durumlardan hangisi veya hangileri ile gözetimli öğrenmeden ayrılır?
I- Ortamla etkileşimin sürekli olması
II- Optimal olmayan eylemlerin düzeltilmemesi
III- Etiket bilgisinin verilmemesi

Seçenekler

A
I
B
II
C
I,II
D
I,III
E
I,II ve III
Açıklama:
Pekiştirmeli öğrenme, doğru girdi/çıktı eşleşmelerinin diğer bir deyişle etiket bilgisinin verilmemesi, optimal olmayan eylemlerin düzeltilmemesi, ortamla etkileşimin sürekli olması gibi çeşitli yönleriyle gözetimli öğrenmeden ayrışmaktadır.
I,II ve III

Soru 4

Verilen bir sınıf için doğru tahminlenen örnek sayısının o sınıf etiketi ile etiketlenen toplam
örnek sayısına oranı olarak tanımlanan başarım metriğine ne ad verilir?

Seçenekler

A
Hata matrisi
B
Doğruluk
C
Kesinlik
D
Duyarlılık
E
Ortalama kare hatası
Açıklama:
Kesinlik metriği hata matrisinde yer alan TP değerinin TP+FP değerine bölünmesi ile elde edilir. Diğer bir deyişle verilen bir sınıf için doğru tahminlenen örnek sayısının o sınıf etiketi ile etiketlenen toplam örnek sayısına oranıdır. Çok sınıflı problemlerde her bir sınıf için ilgili değer hesaplanarak ortalama kesinlik değeri başarım sonucu olarak kullanılır

Soru 5

Aşağıdakilerden hangisi yada hangileri yapay sinir hücrelerinin girdi işleme sürecindeki temel bileşenler arasında yer alır?
I- Aktivasyon fonksiyonu II- Ağırlık değeri III- Toplama/birleştirme fonksiyonu

Seçenekler

A
I
B
I,II
C
I,III
D
II,III
E
I,II ve III
Açıklama:
Yapay sinir hücrelerinin girdi işleme sürecinde aktivasyon fonksiyonu, ağırlık değeri ve toplama/birleştirme fonksiyonu temel bileşenler olarak kabul edilir
I,II ve III

Soru 6

Aşağııda verilen katmanlardan hangisi veya hangileri tek katmanlı algılayıcılarda bulunur?
I- Gizli katmanlar II- Girdi katmanı III- Çıktı katmanı

Seçenekler

A
I
B
I,II
C
I,III
D
II,III
E
I,II ve III
Açıklama:
Tek katmanlı algılayıcılarda bir girdi bir de çıktı katmanı olur. Çok katmanlı ağlarda ise giriş, gizli katmanlar ve çıktı katmanı yer alır
II,III

Soru 7

Aşağıdakilerden hangisi veya hangileri genetik algoritmalarda performansı etkileyen faktörler arasında yer alır?
I- Çaprazlama ve mutasyon işlemlerinin olasılıkları
II- Popülasyon büyüklüğü
III- Maksimum nesil sayısı

Seçenekler

A
I
B
I,II
C
I,III
D
II,III
E
I,II ve III
Açıklama:
Genetik algoritmalarda performansı çaprazlama ve mutasyon işlemlerinin olasılıklarının yanı sıra popülasyon büyüklüğü, maksimum nesil sayısı gibi faktörler de etkiler
I,II ve III

Soru 8

Aşağıdaki alanlardan hangileri genetik algoritmaların kullanım alanları arasında yer almaktadır?
I. Görüntü kontrolü
II. Optimizasyon
III. Yapay sinir ağı tasarımı
IV. Atölye çizelgeleme
V. Elektronik devre tasarımı
Bu alanlardan kaç tanesi genetik algoritmalarla ilişkilendirilebilir?

Seçenekler

A
1
B
2
C
3
D
4
E
5
Açıklama:
Genetik algoritmalarda performansı çaprazlama ve mutasyon işlemlerinin olasılıklarının yanı sıra popülasyon büyüklüğü, maksimum nesil sayısı gibi faktörler de etkiler. Bu algoritmaların atölye çizelgeleme, yapay sinir ağı tasarımı, görüntü kontrolü, elektronik devre tasarımı, optimizasyon, uzman sistemler,paketleme problemleri, gezgin satıcı problemi, ekonomik model çıkarma vb. gibi bir çok farklı alanda kullanımı görülmektedir.
Genetik algoritmalar (Genetic Algorithms - GA), evrimsel hesaplama yöntemlerinden biridir ve çok çeşitli alanlarda optimum veya yaklaşık en iyi çözümleri bulmak amacıyla kullanılır. Şimdi her bir maddeyi inceleyelim:


  1. Görüntü kontrolü:
    Görüntü işleme alanında genetik algoritmalar, filtre parametrelerinin seçimi, segmentasyon gibi görevlerde kullanılabilir. Bu da görüntü kontrolü gibi konuları kapsar.


  2. Optimizasyon:
    En yaygın kullanım alanıdır. Çok değişkenli ve doğrusal olmayan problemlerde çözüm bulmak için idealdir.


  3. Yapay sinir ağı tasarımı:
    Ağın yapısal parametrelerinin (katman sayısı, nöron sayısı, bağlantı ağırlıkları vs.) belirlenmesinde kullanılır.


  4. Atölye çizelgeleme:
    İş sıralarının ve makine atamalarının en verimli şekilde yapılmasını sağlar. Bu NP-zor problem sınıfına girer ve GA’lar sıkça kullanılır.


  5. Elektronik devre tasarımı:
    Devre elemanlarının yerleşimi ve optimizasyonunda kullanılır. Özellikle otomatikleştirilmiş tasarım sistemlerinde GA’lar tercih edilir.
    Yukarıda verilen tüm alanlar, genetik algoritmaların potansiyel kullanım alanları arasındadır. Bu nedenle doğru cevap: 5

Soru 9

Aşağıdakilerden hangisi veya hangileri simetrik algoritmaların avantajları arasında yer alır?
I-Anahtar boyunun kısa olması II- Donanım ile birlikte kullanılabilmeleri III- Hızlı olmaları

Seçenekler

A
I
B
II
C
I,II
D
I,III
E
I,II ve III
Açıklama:
Simetrik algoritmalar anahtar boyunun kısa olması, donanım ile birlikte kullanılabilmeleri, hızlı olmaları gibi güçlü yanlara sahiptir.
I,II ve III

Soru 10

Aşağıdakilerden hangisi veya hangileri asiimetrik şifreleme algoritmaları arasında yer alır?
I- Anahtarın dağıtımındaki zorluk
II- CPU zamanının çok fazla olması
III- Şifrelemenin kırılması simetrik şifrelemeye göre daha kolay olması

Seçenekler

A
I
B
II
C
I,II
D
I,III
E
I, II ve III
Açıklama:
Asimetrik şifrelerin farklı anahtar kullanılarak oluşturulması sebebi ile şifrelemenin kırılması simetrik
şifrelemeye göre daha zordur. Farklı anahtarlar kullanılması sebebi ile simetrik şifrelemede karşılaşılan anahtar dağıtma problemi de mevcut değildir. Bununla birlikte anahtarları kullanarak bilgileri çözme işlemlerinde CPU zamanının çok fazla olması asimetrik şifrelemenin zayıf yönüdür
II

Soru 11

Aşağıdakilerden hangisi belirli bir problemin çözülmesine veya bir amaca ulaşılmasına yönelik olarak kurgulanan işlem basamaklarını ifade eder.

Seçenekler

A
Algoritma
B
Regresyon
C
Kümeleme
D
Sınıflandırma
E
Boyut indirgeme
Açıklama:
Algoritma kavramı belirli bir problemin çözülmesine veya bir amaca ulaşılmasına yönelik olarak kurgulanan işlem basamaklarını ifade eder.

Soru 12

Aşağıdakilerden hangisi insanların öğrenme yeteneklerini taklit etmeyi hedefleyen algoritmaların kullanıldığı bir araştırma alanıdır.?

Seçenekler

A
Makine öğrenmesi
B
Algoritma
C
Gözetimsiz Öğrenme
D
Pekiştirmeli Öğrenme
E
Gözetimli Öğrenme
Açıklama:
Makine öğrenmesi insanların öğrenme yeteneklerini taklit etmeyi hedefleyen algoritmaların kullanıldığı bir araştırma alanıdır.

Soru 13

Aşağıdakilerden hangisinde, verileri sınıflandıran veya veri değerlerini tahmin eden algoritmaları eğitmek için tamamiyle etiketli bir veri kümesi kullanılır?

Seçenekler

A
Gözetimli öğrenme
B
Pekistirmeli Ögrenme
C
Kümeleme
D
Yarı-Gözetimli Ögrenme
E
Gözetimsiz Ögrenme
Açıklama:
Gözetimli öğrenmede, verileri sınıflandıran veya veri değerlerini tahmin eden algoritmaları eğitmek için etiketli bir veri kümesi kullanılır.
Gözetimli öğrenmede, verileri sınıflandıran veya veri değerlerini tahmin eden algoritmaları eğitmek için tamamiyle etiketli bir veri kümesi kullanılır.

Soru 14

Aşağıdakilerden hangisi insan müdahalesine gerek olmadan veri içinde saklı kalıpları veya veri gruplamalarını keşfetmeyi amaçlar?

Seçenekler

A
Gözetimsiz öğrenme algoritmaları
B
Gözetimli öğrenme algoritmaları
C
Pekiştirmeli öğrenme algoritmaları
D
Durağan öğrenme algoritmaları
E
Yari öğrenme algoritmaları
Açıklama:
Gözetimsiz öğrenme algoritmaları insan müdahalesine gerek olmadan veri içinde saklı kalıpları veya veri gruplamalarını keşfetmeyi amaçlar.

Soru 15

Aşağıdakilerden hangisi yazılım etmeninin verilen ortamda en yüksek ödül miktarına ulaşabilmesi için hangi eylemleri yapması gerektiği üzerine kurulmuştur.

Seçenekler

A
Pekiştirmeli öğrenme algoritmaları
B
Serbest öğrenme algoritmaları
C
Gözetimli öğrenme algoritmaları
D
Kümeleme öğrenme algoritmaları
E
Regresyon
Açıklama:
Pekiştirmeli öğrenme algoritmaları yazılım etmeninin (İng. agent) verilen ortamda en yüksek ödül miktarına ulaşabilmesi için hangi eylemleri yapması gerektiği üzerine kurulmuştur.

Soru 16

Aşağıdakilerden hangisi temel amaç veri kümesini adımsal olarak böl-fethet yöntemiyle alt gruplara bölerek çözüme yaklaşmaktır?

Seçenekler

A
Karar ağaçlarında
B
Kök düğümlerde
C
Kesinlik metriğinde
D
Terminal düğümlerinde
E
Yapay Sinir Ağlarında
Açıklama:
Karar ağaçlarında temel amaç veri kümesini adımsal olarak böl-fethet yöntemiyle alt gruplara bölerek çözüme yaklaşmaktır.

Soru 17

Aşağıdakilerden hangisi insan beyninin karar verme mekanizmasının taklit edilmesine dayalı bir algoritmalar grubudur?

Seçenekler

A
Yapay sinir ağları
B
Düğümler
C
Öznelik vektörleri
D
Karar Ağaçları
E
Regresyon
Açıklama:
Yapay sinir ağları insan beyninin karar verme mekanizmasının taklit edilmesine dayalı bir algoritmalar grubudur. Bu algoritmaların temel amacı bir dizi verideki temel ilişkileri tanımaya çalışmaktır.

Soru 18

Aşağıdakilerden hangisi mesajları şifrelemek ve deşifre etmek için kullanılan süreç veya kurallar dizisidir?

Seçenekler

A
Kriptografik algoritmalar.
B
Mutasyon
C
Çaprazlama
D
Yapa sinir ağları
E
Karar Ağaçları
Açıklama:
Kriptografik algoritmalar, mesajları şifrelemek ve deşifre etmek için kullanılan süreç veya kurallar dizisidir.

Soru 19

Aşağıdakilerden hangisi bir genel anahtar ve bir özel anahtar olmak üzere bir çift anahtar gerektirir?

Seçenekler

A
Asimetrik şifreleme algoritmaları
B
Mutasyonlar
C
Genetik algoritmalar
D
Gelişmiş şifre standartları
E
Simetrik Şifreleme Algoritmaları
Açıklama:
Asimetrik şifreleme algoritmaları, bir genel anahtar ve bir özel anahtar olmak üzere bir çift anahtar gerektirir. Bu algoritmalarda şifrelemek için genel anahtar ve şifre çözmek için farklı, ancak matematiksel olarak ilişkili bir özel anahtar kullanılır.

Soru 20

Aşağidakilerden hangisinin temel amacı insanların öğrenme yeteneklerini taklit etmektir?

Seçenekler

A
Makine öğrenme
B
Genetik öğrenme
C
Asimetrik öğrenme
D
Uzaktan öğrenme
E
Kriptografik öğrenme
Açıklama:
Makine öğrenmesinin temel amacı insanların öğrenme yeteneklerini taklit etmektir.

Soru 21

Aşağıda verilen problemlerden hangisi makine öğrenmesinde gözetimsiz öğrenme için uygundur?

Seçenekler

A
Kullanıcının girdiği WEB sitelerine bakıp uygun WEB sitesi önerme.
B
Borsa takip edip yatırım için uygun şirket önerme.
C
Hava tahmini yapma.
D
Birçok resmi inceleyip resmin hayvan resmi içerip içwermediğine karar vermek.
E
Güvenlik kameralarından plaka tanımlamak.
Açıklama:
Gözetimsiz öğrenme, kümeleme algoritmalarında kullanılmaktadır. Bilgisayar kullanıcısının girdiği WEB sitelerini diğer girilmeyen siteler arasında belirleyip hangi tür sitelere girildiğinin analizi bu sitelerle benzer içeriklerin bulunması ve o içeriklerin önerilmesi doğrudan bir kümeleme algoritmasıdır. Bu yüzden A seçeneği bu problem için uygundur.
Doğru yanıt A seçeneğinde verilmiştir.

Soru 22

Aşağıdakilerden hangisi gözetimli öğrenmeye bir örnektir?

Seçenekler

A
Müşteri segmentlerini belirlemek için müşteri verilerini kümeleme
B
Bir evin fiyatını konumu, büyüklüğü ve oda sayısı gibi özelliklerine göre tahmin etme
C
Görüntü ve video verisi sıkıştırma
D
Müşterileri davranışlarına veya tercihlerine göre gruplara ayırma
E
Finansal verilerdeki hileli işlemlerin tespiti.
Açıklama:
B seçeneğinde verilen problem çözümü regresyon için son derece elverişli bir örnektir. Ai D ve E seçeneklerinde verile problemler kümeledirme problemi olup gözetimcisiz öğrenme için uygundur. C seçeneğinde ise veri sıkıştırma yöntemi kulannılmakta bu da gözetimcisiz öğrenme için uygun bir problem sunmaktadır.
Doğru yanıt B seçeneğinde verilmiştir.

Soru 23

Aşağıda seçeneklerden hangisi temel makine öğrenmesi algoritmalarından birisi değildir?

Seçenekler

A
Gözetimli öğrenme
B
Yarı-Gözetimli Öğrenme
C
Öznitelikli Öğrenme
D
Pekiştirmeli Öğrenme
E
Gözetimsiz Öğrenme
Açıklama:
Öznitelik öğrenme algoritmalarında veriden çıkarılan algoritmanın çalışmasını sağlayan bileşenlerdir. Dolayısıyla öznitelikli öğrenme diye bir algoritma yoktur.
C Seçeneğini seçmeniz gerekirdi.

Soru 24

Hata matrisi kullanılarak kesinlik metriği nasıl bulunur?

Seçenekler

A
FP değerinin TN+FN+FP değerine bölünmesiyle elde edilir.
B
TP değerinin TN+FN+FP değerine bölünmesiyle elde edilir.
C
TN değerinin TN-FN değerine bölünmesiyle elde edilir.
D
TP değerinin TP-FP değerine bölünmesiyle elde edilir.
E
TP değerinin TP+FP değerine bölünmesiyle elde edilir.
Açıklama:
Kesinlik metriği hata matrisinde yer alan TP değerinin TP+FP değerine bölünmesi ile elde edilir. Diğer bir deyişle verilen bir sınıf için doğru tahminlenen örnek sayısının o sınıf etiketi ile etiketlenen toplam örnek sayısına oranıdır. Çok sınıflı problemlerde her bir sınıf için ilgili değer hesaplanarak ortalama kesinlik değeri başarım sonucu olarak kullanılır.
Hata matrisi, bir sınıflandırma modelinin tahmin sonuçlarını gerçek değerlerle karşılaştırarak 4 temel kategoride özetleyen bir tablodur.

İkili sınıflandırma için tipik bir hata matrisi:


Gerçek Pozitif (1)Gerçek Negatif (0)
Tahmin Pozitif (1)True Positive (TP)False Positive (FP)
Tahmin Negatif (0)False Negative (FN)True Negative (TN)


Kesinlik
, modelin pozitif olarak tahmin ettiklerinin ne kadarının gerçekten pozitif olduğunu gösterir.
Kesinlik (Precision)=TPTP+FP\text{Kesinlik (Precision)} = \frac{TP}{TP + FP} Açılım:


  • TP (True Positive): Modelin "pozitif" deyip, gerçekten pozitif olan örnekler


  • FP (False Positive): Modelin "pozitif" deyip, aslında negatif olan hatalı örnekler


Anlamı:


Model “bu örnek pozitiftir” dediğinde, bu tahminin ne kadar güvenilir olduğunu açıklamaktadır.
Doğru cevap E seçeneğinde verilmiştir.

Soru 25

Hata matrisi kullanılarak duyarlılık değeri nasıl bulunur?

Seçenekler

A
TP değerin TP+TN toplamına bölünmesiyle elde edilir.
B
TP değerin TP+FN toplamına bölünmesiyle elde edilir.
C
TN değerin TP+FN toplamına bölünmesiyle elde edilir.
D
TN değerin TN+FN toplamına bölünmesiyle elde edilir.
E
TN değerin TN+FP toplamına bölünmesiyle elde edilir.
Açıklama:
Duyarlılık değeri; verilen bir sınıf için doğru tahminlenen örnek sayısının (TP) o sınıfa ait toplam örnek sayısına (TP+FN) oranı olarak hesaplanır. Diğer bir deyişle bir sınıfa ait örneklerin ne oranda o sınıfa ait olarak tahminlendiğini gösteren bir göstergedir.
Duyarlılık değeri ise verilen bir sınıf için doğru tahminlenen örnek sayısının (TP) o sınıfa ait toplam örnek sayısına (TP+FN) oranı olarak hesaplanır. Diğer bir deyişle
bir sınıfa ait örneklerin ne oranda o sınıfa ait olarak tahminlendiğini gösteren bir göstergedir

Soru 26

F1 değerinin hesaplanması ile ilgili aşağıda verilen hangi seçenek doğru bir önerme içermez?

Seçenekler

A
F1 değeri hesaplanmasında kesinlik değeri kullanılır.
B
F1 değeri hesaplanmasında duyarlılık değeri kullanılır
C
F1 değeri hesaplanmasında TP (Doğru Pozitif) değeri kullanılır.
D
F1 değeri hesaplanmasında TN (Doğru Negatif) değeri kullanılır.
E
F1 değeri hesaplanmasında FP (Yanlış Pozitif) değeri kullanılır.
Açıklama:
Kesinlik metriği hata matrisinde yer alan TP değerinin TP+FP değerine bölünmesi ile elde edilir. Diğer bir deyişle verilen bir sınıf için doğru tahminlenen örnek sayısının o sınıf etiketi ile etiketlenen toplam örnek sayısına oranıdır. Çok sınıflı problemlerde her bir sınıf için ilgili değer hesaplanarak ortalama kesinlik değeri başarım sonucu olarak kullanılır. Duyarlılık değeri ise verilen bir sınıf için doğru tahminlenen örnek sayısının (TP) o sınıfa ait toplam örnek sayısına (TP+FN) oranı olarak hesaplanır. Diğer bir deyişle
bir sınıfa ait örneklerin ne oranda o sınıfa ait olarak tahminlendiğini gösteren bir göstergedir. Bu iki metriğin harmonik ortalaması F1 değerini verir. Ortalama kare hatası ise regresyon problemlerinde sıklıkla kullanılan bir performans metriğidir. Basitçe, tahminlenen değer ile gerçek değer arasındaki farkların ortalamasıdır. Ortalama kare hatası değerinin yüksek olması tahminlerin hatalı olduğu ve tahminlerde gerçek değerlerden uzaklaşıldığına dair belirti olarak kabul edil
F1 değeri hesabında TN kullanılmaz. O yüzden D seçeneği işaretlenmelidir.

Soru 27

Aşağıda verilen seçeneklerde hangisi çok katmanlı sinir ağları için yanlış bir öneri içermektedir?

Seçenekler

A
Çok katmanlı yapay sinir ağlarında öğrenme işlemi geri yayılım algoritması kullanılarak yapılır.
B
Tek katmanlı bir sinir ağında sadece çıktı katmanı bulunur.
C
Çok katmanlı bir sinir ağında giriş katmanı gizli katman ve çıkış katmanı bulunur.
D
Çok katmanlı bir sinir ağında birden fazla gizli katman olabilir.
E
Yapay sinir ağları gözetimli ve gözetimsiz öğrenme amacıyla kullanılabilir.
Açıklama:
Tek katmanlı algılayıcılarda bir girdi bir de çıktı katmanı olur. Çok katmanlı ağlarda ise giriş, gizli katmanlar ve çıktı katmanı yer alır
B seçeneği yanlış bir önerme içermektedir. Bu seçeneği işaretlemeniz gerekir.

Soru 28

Aşağıda verilen seçeneklerden entropi hesabı yapılmak istendiğinde hangi seçeneğin entropisi 0 (sıfır) olur?

Seçenekler

A
Bir torbada 5 kırmızı 5 siyah topun olduğu ve görmeden rastgele seçilen top için entropi hesabı yapılması durumu.
B
Bir torbada 50 kırmızı 50 siyah topun olduğu ve görmeden rastgele seçilen top için entropi hesabı yapılması durumu.
C
Bir torbada 1000 kırmızı 1 siyah topun olduğu ve görmeden rastgele seçilen top için entropi hesabı yapılması durumu.
D
Bir torbada 10 kırmızı ve 0 (sıfır) siyah topun olduğu ve görmeden rastgele seçilen top için entropi hesabı yapılması durumu.
E
Bir torbada 1 kırmızı 1 siyah topun olduğu ve görmeden rastgele seçilen top için entropi hesabı yapılması durumu.
Açıklama:
Tüp topların aynı renk olduğu durumda herhangi bir entropi bilgisi bulunmayacaktır.
E(Top) = -(0*log(0) + 1*log(1)) = 0
Doğru yanıt D seçeneğinde verilmiştir.

Soru 29

Böl fethet yöntemi aşağıdaki hangi makine öğrenmesi algoritması için uygundur?

Seçenekler

A
Regresyon analizi
B
Yapay Sinir Ağları
C
Karar Ağaçları
D
Genetik Algoritmalar
E
Şifreleme Algoritmaları
Açıklama:
Sembolik fonksiyonların kullanıldığı parametrik olmayan algoritmaların en bilinen örneği karar ağaçlarıdır. Karar ağaçlarında temel amaç veri kümesini adımsal olarak böl-fethet yöntemiyle alt gruplara bölerek çözüme yaklaşmaktır. Karar ağaçlarında kök düğüm, düğümler, yapraklar (terminal düğüm) şeklinde isimlendirilen yapılar bulunur
Doğru yanıt C seçeneğinde verilmiştir.

Soru 30

İnsan düşünce ve öğrenme sisteminine en yakın geliştirilmiş model aşağıdakilerden hangisidir?

Seçenekler

A
Yapay Sinir Ağları
B
Karar Ağaçları
C
Genetik Algoritmalar
D
Kriptografik Algoritmalar
E
Asimetrik Anahtar Algoritmaları
Açıklama:
Yapay sinir ağları insan beyninin karar verme mekanizmasının taklit edilmesine dayalı bir algoritmalar grubudur. Bu algoritmaların temel amacı bir dizi verideki temel ilişkileri tanımaya çalışmaktır. Yapay sinir ağlarının temel birimi sinir hücresidir. Sinir hücreleri biyolojik sinir hücrelerine benzer bir yapıda tasarlanmıştır.
Doğru yanıt A seçeneği olmalıdır.

Soru 31

Bu yaklaşım hem etiketli hem de etiketsiz verileri kullanır. Bu algoritmalarda sınırlı sayıdaki etiketli veri kullanılarak ilk eğitim gerçekleştirilir. Ardından bir miktar etiketsiz veri tahminleme süreci sonucunda etiketlenerek eğitim veri kümesi genişletilir. Bu işlem yeteri kadar etiketli veri örneği elde edilene kadar tekrarlanarak süreç tamamlanır.
Yukarıda sözü edilen makine öğrenmesi yaklaşımı aşağıdakilerden hangisidir?

Seçenekler

A
Yarı gözetimli öğrenme
B
Gözetimli öğrenme
C
Gözetimsiz öğrenme
D
Pekiştirmeli öğrenme
E
Kümeleyerek öğrenme
Açıklama:
Makine öğrenmesi alanında kullanılan yaklaşımlar gözetimli ve gözetimsiz olmak üzere temel iki sınıfa ayrılır. Bu iki sınıfa ek olarak özellikle girdi olarak kullanılan etiketli veri kümesinin yetersiz olması durumunda kullanılacak yaklaşımları içeren yarı-gözetimli ve pekiştirmeli öğrenme yöntemleri de mevcuttur. İlgili sınıflandırma Şekil 8.1’de verilmiştir.

Soru 32

Aşağıdakilerden hangisi makine öğrenmesinde kullanılabilecek gözetimsiz öğrenme yöntemlerinden biridir?

Seçenekler

A
Karar ağaçları
B
Lojistik regresyon
C
Kümeleme analizi
D
Doğrusal regresyon
E
k-en yakın komşular
Açıklama:
Kümeleme analizinde bir çıktı-bağımlı değişken yoktur. Diğer tüm yöntemlerde ise vardır.

Soru 33

Sınıflamaya dayalı makine öğrenmesi algoritmalarında tahmin edilen sınıf ile gerçek durumun örtüşmesi;
  1. Doğru pozitif
  2. Yanlış pozitif
  3. Doğru negatif
  4. Yanlış negatif
durumlarından hangilerinde görülür?

Seçenekler

A
I ve II
B
I ve III
C
II ve III
D
II ve IV
E
III ve IV
Açıklama:
Doğru pozitif ve doğru negatif, gerçekteki durumlarla tahmin edilen durumların örtüşmesi sonucu hata matrisinde kullanılan kavramlardır.

Soru 34

Karar ağaçlarında ağacın başladığı en üstteki düğüme ne ad verilir?

Seçenekler

A
Kök
B
Terminal
C
Yaprak
D
Son
E
Özel
Açıklama:
Ağaca dayalı ML algoritmalarında ilk düğüm, kök düğüm olarak adlandırılır.

Soru 35

Aşağıdakilerden hangisi genetik algoritmaların bileşenleri arasında yer alır?

Seçenekler

A
Çaprazlama
B
Düğüm
C
Yaprak
D
Asimetrik şifreleme
E
Yapay sinir ağları
Açıklama:
Genetik algoritmalarda çaprazlama operatörü ile ebeveyn olarak seçilen iki örneğin temsil ettiği çözümlerin belirli parçaları karşılıklı olarak değiştirilir.

Soru 36

Sınıflandırma probleminde ayırt ediciliği bulunan kategorik veya kategorik olmayan özelliklere ne ad verilir?

Seçenekler

A
Öznitelik
B
Sınıflama
C
Çaprazlama
D
Boyut indirgeme
E
Algortima
Açıklama:
Öznitelik, sınıflandırma probleminde ayırt ediciliği bulunan kategorik veya kategorik olmayan özelliklerdir.

Soru 37

Bir araştırma kapsamında eğer çıktı-bağımlı değişken biliniyor, yani etiketlenmişse, aşağıdaki sınıflardan hangisi altında yer alan bir istatistiksel yöntem kullanılır?

Seçenekler

A
Gözetimli
B
Gözetimsiz
C
Pekiştirmeli
D
Non-parametrik
E
Denetimsiz
Açıklama:
Veri etiketlenmişse, yani çıktı değişkenin kategorisi ya da miktarı biliniyorsa, gözetimli yöntemlerden biri kullanılmalıdır.

Soru 38

Yalnızca yetkili iki tarafça bilinen bir anahtarın kullanılmasıyla çalışan algoritmalara ne ad verilir?

Seçenekler

A
Simetrik şifreleme
B
Asimetrik şifreleme
C
Genetik
D
Doğrusal
E
Gözetimsiz
Açıklama:
Simetrik anahtar veya paylaşılan anahtar algoritmaları olarak da bilinen simetrik algoritmalar, yalnızca yetkili iki tarafça bilinen bir anahtarın kullanılmasıyla çalışır. Bunlar blok şifreler veya akış şifreleri şeklinde uygulanabilirken, mesajın hem şifrelenmesi hem de şifresinin çözülmesi (deşifreleme) için genelde aynı anahtar kullanılır.

Soru 39

İnsan beyninin karar verme mekanizmasının taklit edilmesine dayalı bir algoritmalar grubuna ne ad verilir?

Seçenekler

A
Yapay sinir ağları
B
Genetik algoritmalar
C
Kriptografik algoritmalar
D
Gözetimsiz algoritmalar
E
Markov modelleri
Açıklama:
Yapay sinir ağları insan beyninin karar verme mekanizmasının taklit edilmesine dayalı bir algoritmalar grubudur. Bu algoritmaların temel amacı bir dizi verideki temel ilişkileri tanımaya çalışmaktır.

Soru 40

Makine öğrenmesinin performasını ölçmek amaçlı kullanılan doğruluk, kesinlik ve F1 metrikleri hangi aralıkta değer alırlar?

Seçenekler

A
0-1
B
1-5
C
0-10
D
5-15
E
0-100
Açıklama:
Makine öğrenmesinin performasını ölçmek amaçlı kullanılan doğruluk, kesinlik ve F1 metrikleri [0 1] aralığında değer alırlar. İlgili değerin bire yakın olması başarımın yüksek olduğunu ifade eder.

⚠️ Telif Hakkı Bildirimi: Bu portaldaki sorular telif hakkı içerebilir. İçerik yalnızca ders çalışma amaçlı hazırlanmış olup, ticari amaçlı kopyalanması veya çoğaltılması hak sahibi tarafından yasal yükümlülükler getirebilir.

Telif hakkı bildirimleri için GitHub Issues bölümünü kullanabilirsiniz. Bildirim üzerine ilgili içerik 7 iş günü içerisinde kaldırılacaktır.