Pratik Ara Sınav 1 Çözümleri

Benzer belgeler
Ara Sınav 1. Algoritmalara Giriş 14 Ekim 2005 Massachusetts Institute of Technology Profesörler Erik D. Demaine ve Charles E. Leiserson Kitapçık 14

Problem Set 1 Çözümler

Algoritmalara Giriş Ekim 17, 2005 Massachusetts Institute of Technology Profesörler Erik D. Demaine ve Charles E. Leiserson Dağıtım 15.

Algoritmalara Giriş Eylül 21, 2005 Massachusetts Institute of Technology Profesörler Erik D. Demaine ve Charles E. Leiserson Çalışma notu 6

Algoritmalara Giriş Ekim 10, 2005 Massachusetts Institute of Technology Professors Erik D. Demaine ve Charles E. Leiserson. Problem Seti 3 Çözümler

Algoritmalara Giriş 6.046J/18.401J DERS 2

6.046J/18.401J DERS 7 Kıyım Fonksiyonu (Hashing I) Prof. Charles E. Leiserson

Algoritmalara Giriş 6.046J/18.401J

Algoritmalar. DERS 3 Böl ve Fethet(Divide and Conquer) İkili arama Sayı üstelleri Fibonacci sayıları Matriks çarpımı Strassen in algoritması

Algoritmalar. Arama Problemi ve Analizi. Bahar 2016 Doç. Dr. Suat Özdemir 1

Problem Seti 4 Çözümler

Algoritmalara Giriş J/18.401J Ders 15. Dinamik Programlama En uzun ortak altdizi En uygun altyapı Altproblemlerin çakışması

Algoritmalar. DERS 7 Dengeli Arama Ağaçları Kırmızı-siyah ağaçlar Kırmızı-siyah ağacın yüksekliği Rotation / Dönme Insertion / araya yerleştirme

Pratik Final Sınavı Çözümleri 2

Algoritmalar. Doğrusal Zamanda Sıralama. Bahar 2017 Doç. Dr. Suat Özdemir 1

b) Algoritmanızın en kötü durumda işlem zamanını asimptotik olarak bulunuz

YZM ALGORİTMA ANALİZİ VE TASARIM DERS#2: ALGORİTMA ANALİZİ

Algoritmalara Giriş. Prof. Erik Demaine. September 26, 2005 Copyright Erik D. Demaine and Charles E. Leiserson L5.1

YZM ALGORİTMA ANALİZİ VE TASARIM DERS#6: AZALT VE FETHET YÖNTEMİ

Algoritmalar. Heap Sort. Bahar 2017 Doç. Dr. Suat Özdemir 1

Algoritmalara Giriş 6.046J/18.401J

HACETTEPE ÜNİVERSİTESİ BAHAR DÖNEMİ

3.Hafta Master Teorem ve Böl-Fethet Metodu

Algoritmalara Giriş 6.046J/18.401J

Problem Seti 2 Çözümler

Algoritmalara Giriş Ekim 31, 2005 Massachusetts Institute of Technology Professors Erik D. Demaine ve Charles E. Leiserson Dağıtım 19.

ÖZEL EGE LİSESİ 10. OKULLARARASI MATEMATİK YARIŞMASI 10. SINIFLAR SORULARI

6.Hafta Kıyım Fonksiyonu (Hashing), BST. Doğrudan erişim tabloları Çarpışmaları ilmekleme ile çözmek Kıyım fonksiyonu seçimi Açık adresleme

Algoritmalara Giriş Kasım 7, 2005 Massachusetts Institute of Technology Profesör Erik D. Demaine ve Charles E. Leiserson Dağıtım 22.

HACETTEPE ÜNİVERSİTESİ BAHAR DÖNEMİ

F(A, N, K) // A dizi; N, K integer if N<0 then return K; if A[N]>K then K = A[N]; return F(A, N-1, K);

Programlama Dilleri 1. Ders 3: Rastgele sayı üretimi ve uygulamaları

ELN1002 BİLGİSAYAR PROGRAMLAMA 2

BIP116-H14-1 BTP104-H014-1

SORULAR. 2. Noktaları adlandırılmamış 6 noktalı kaç ağaç vardır? Çizerek cevaplayınız.

2.Hafta Algoritmaların Analizi. Araya Yerleştirme Sırlaması (Insert Sort) Birleştirme Sıralaması (Merge Sort ) Yinelemeler

Tanım Bir X kümesi üzerinde bir karakter dizgisi (string) X kümesindeki. boş karakter dizgisi (null string) denir ve l ile gösterilir.

1. GRUPLAR. c (Birleşme özelliği) sağlanır. 2) a G için a e e a a olacak şekilde e G (e ye birim eleman denir) vardır.

Problem Seti 8 Çözümleri

Max - Min Heap Tree (Max ve Min Yığıt Ağaçları) Veri Yapıları ve Algoritmalar 2 - Mustafa EGE Ders Notları

23. ULUSAL ANTALYA MATEMATİK OLİMPİYATI SORULARI B B B B B B B

Algoritmalar. Sıralama Problemi ve Analizi. Bahar 2017 Doç. Dr. Suat Özdemir 1

BİL-341 ALGORİTMALAR BÜYÜK O NOTASYONU AHMET ATAKAN atakanahmet@hotmail.com KIRGIZİSTAN-TÜRKİYE MANAS ÜNİVERSİTESİ MÜHENDİSLİK FAKÜLTESİ

Algoritmalara Giriş Ekim 24, 2005 Massachusetts Institute of Technology Profesör Erik D. Demaine ve Charles E. Leiserson Dağıtım 16.

(m+2) +5<0. 7/m+3 + EŞİTSİZLİKLER A. TANIM

KARAKTER DİZGİLERİ, BAĞINTILAR, FONKSİYONLAR KESİKLİ MATEMATİKSEL YAPILAR

Olimpiyat Soruları. sonuçları tekrar fonksiyonda yerine koyup çıkan tüm sonuçları toplayan program (iterasyon sayısı girilecek)

YMT219 VERİ YAPILARI ÖDEV-1

BIL222 Veri Yapıları ve Algoritmalar

Algoritma Geliştirme ve Veri Yapıları 9 Ağaç Veri Modeli ve Uygulaması. Mustafa Kemal Üniversitesi

BMB204. Veri Yapıları Ders 9. B+ Ağacı, Hash, Heap. Erdinç Uzun NKÜ Çorlu Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü

23. ULUSAL ANTALYA MATEMATİK OLİMPİYATI SORULARI A A A A A A A

HACETTEPE ÜNİVERSİTESİ BAHAR DÖNEMİ

A GRUBU Her bir yüzü düzgün beşgen olan düzgün 12-yüzlünün kaç ayrıtı vardır? A) 30 B) 24 C) 12 D) 36 E) 48

NİSAN 2010 DENEMESİ A)75 B)80 C)85 D)90 E)95 A)0 B)1 C)2 D)3 E)4

5.Hafta Alt Sınırları Sıralama Doğrusal-Zaman (linear time) Sıralaması (devam)

olsun. Bu halde g g1 g1 g e ve g g2 g2 g e eşitlikleri olur. b G için a b b a değişme özelliği sağlanıyorsa

Yrd. Doç. Dr. A. Burak İNNER Bilgisayar Mühendisliği

ÖDEV (Vize Dönemi) CEVAPLAR. 1. Ekrana Merhaba Dünya! yazdıran algoritmanın akış diyagramını çiziniz ve sözde kod olarak yazınız.

Örnek...3 : Aşağıdaki ifadelerden hangileri bir dizinin genel terim i olabilir? Örnek...4 : Genel terimi w n. Örnek...1 : Örnek...5 : Genel terimi r n

1.GRUPLAR. c (Birleşme özelliği) sağlanır. 2) a G için a e e a a olacak şekilde e G. vardır. 3) a G için denir) vardır.

YZM 2116 Veri Yapıları

Yrd. Doç. Dr. Ümit ATİLA

Yeşilköy Anadolu Lisesi

Algoritmaların Karşılaştırılması. Doç. Dr. Aybars UĞUR

Temel Kavramlar. (r) Sıfırdan farklı kompleks sayılar kümesi: C. (i) Rasyonel sayılar kümesi: Q = { a b

TEMEL KAVRAMLAR. a Q a ve b b. a b c 4. a b c 40. 7a 4b 3c. a b c olmak üzere a,b ve pozitif. 2x 3y 5z 84

Doğrusal Denklem Sistemlerini Cebirsel Yöntemlerle Çözme. 2 tişört + 1 çift çorap = 16 lira 1 tişört + 2 çift çorap = 14 lira

1.DERECEDEN DENKLEMLER. (Bu belgenin güncellenmiş halini bu adresten indirebilirsiniz)

Dr. Fatih AY Tel: fatihay@fatihay.net

p sayısının pozitif bölenlerinin sayısı 14 olacak şekilde kaç p asal sayısı bulunur?

EŞİTSİZLİKLER. 5. x 2 + 4x + 4 > x 2 0. eşitsizliğinin çözüm kümesi. eşitsizliğinin çözüm kümesi. aşağıdakilerden hangisidir?

6.Hafta Bilinen Probleme İndirgeme Tasarım Yöntemi

YZM YAPAY ZEKA DERS#6: REKABET ORTAMINDA ARAMA

1 BAĞINTILAR VE FONKSİYONLAR

Final Sınavı Çözümleri

A GRUBU Noktaları adlandırılmış K 6 tam çizgesinin tam olarak 3 noktalı kaç tane alt çizgesi vardır? A) 9 B) 20 C) 24 D) 60 E) 160

Bilgisayar programlamanın üç temel mantık yapısından biridir. Diğer ikisi ise Seçilim(Selection) ve Döngü(Loop, Iteration)dür.

BIL1202 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ

2. (x 1 + x 2 + x 3 + x 4 + x 5 ) 10 ifadesinin açılımında kaç terim vardır?

Cebir Notları. Gökhan DEMĐR, ÖRNEK : A ve A x A nın bir alt kümesinden A ya her fonksiyona

Bir algoritma aşağıdaki ğ dki özelliklere sahip komutların sonlu bir kümesidir.

MODÜLER ARİTMETİK A)1 B)3 C)8 D)11 E)13. TANIM Z tam sayılar kümesinde tanımlı

LYS MATEMATİK DENEME - 1

Algoritmalara Giriş. Prof. Erik Demaine. November 16, 2005 Copyright by Erik D. Demaine and Charles E. Leiserson L18.1

YAZILI SINAV SORU ÖRNEKLERİ MATEMATİK

Dr. Musa KILIÇ Öğretim Görevlisi

MIT OpenCourseWare Ekonomide İstatistiksel Yöntemlere Giriş Bahar 2009

Atatürk Anadolu. Temel Kavramlar Üzerine Kısa Çalışmalar

Mantıksal çıkarım yapmak. 9 ve üzeri

YZM ALGORİTMA ANALİZİ VE TASARIM DERS#3: ALGORİTMA ANALİZİ#2

BLM-112 PROGRAMLAMA DİLLERİ II. Ders-7 Sıralama Algoritmaları

Sivas Fen Lisesi Ortaokul 2. Matematik Olimpiyatı Sınavı A A) 55 B) 50 C) 45 D) 40 E) 35

Bu kısımda işlem adı verilen özel bir fonksiyon çeşidini ve işlemlerin önemli özelliklerini inceleyeceğiz.

Bireylerin yaşadığı çevreye uyum sağlaması durumunda ortaya çıkan olumsuzluklara PROBLEM denir.

BMÜ-101 ALGORİTMA VE PROGRAMLAMAYA GİRİŞ LABORATUARI

Veri Yapıları Laboratuvarı

Değişken içeren ve değişkenlerin belli değerleri için doğru olan cebirsel eşitliklere denklem denir.

Transkript:

Kitapçık 11: Pratik Ara Sınav 1 Algoritmalara Giriş Massachusetts Institute of Technology Profesörler Erik D. Demaine ve Charles E. Leiserson 6 Ekim 2005 6.046J/18.410J Kitapçık 11 Pratik Ara Sınav 1 Çözümleri Problem -1. Yinelemeler Aşağıdaki yinelemeleri, sıkı Ө-simgelemi sınırlarını vererek çözün. Cevabınızı açıklamanıza gerek yok, ancak vereceğiniz bilgiler gidiş yolundan puan almanızı sağlayabilir. (a) Burada Ana Metod direkt olarak uygulanamaz. Ama, Şimdi bunu elde etmek için Ana Metodun 3. Şıkkın ı kullanın: Ayrıca, olduğundan alt sınır oldukça nettir. (b) Ana metod burada da direkt olarak uygulanamaz. Ama n/2 den oldukça küçüktür, bu nedenle küçük olan terimi yok sayar ve yanıtın T(n) = Ө(n) olduğunu tahmin ederiz. Yerine koyma ile sağlamasını yaparız. (c) Ana metodun, birinci durumundan faydalanarak, (d) Ana Metodun 3. durumundan faydalanırsak,

(e) Ana metodun 2. durumu ile (f) Ana metodun 2. durumundan faydalanarak (g) Ana metodun 3. durumundan faydalanırsak, T(n) = Ө(n 3 ) (h) Burada, Üst sınır için, T(n) S(n) dir. S(n)= S(n-1) + lg n olduğunda, O(n lg n) üst sınırımız olur. Problem -2. Doğru veya Yanlış Aşağıdaki ifadelerle ilgili, D veya Y yi daire içine alarak, ifadelerin doğru mu yanlış mı olduğunu belirtin ve cevabınızı kısaca açıklayın. Anlatımınız ne kadar açık olursa, o kadar yüksek not alırsınız, ama kısa anlatmanız da önemli. Açıklama yapmadığınız takdirde, doğru cevaptan puan alamayacaksınız. (a) D Y Asimptotik olarak pozitif olan bütün f(n) ler için; f(n) + o(f(n))= Ө(f(n)) dir. Doğru. f(n) + o(f(n)), Ω(f(n)) dir. g(n) Є o(f(n)) olsun. c nin 0 dan büyük olduğu bütün değerler için ve bazı n 0 dan büyük bütün n ler için, g(n) c(f(n)) dir. Böylece g(n) = O(f(n)) e eşit olduğuna göre, f(n) + o(f(n)) = O(f(n)) dir. Yani f(n) + o(f(n)) = Ө(f(n)) dir. (b) D Y En kötü durumda ve beklenen durumdaki koşma süreleri, rastgele algoritmalar için, sabit faktörlere bağlıdır.

Yanlış... Rastgele çabuk sıralamanın en kötü durum koşma süresi ve beklenen koşma süresi Ө(n lgn) dir. (c) D Y {A, B, C, D} evrenindeki anahtarları, aşağıdaki tabloya göre {0, 1, 2} aralığına eşlemleyen, H={ h 1, h 2, h 3 } tanımlı 3 kıyım fonksiyonunun koleksiyonu evrenseldir. Doğru. U anahtarlar evrenini, m tane yuvaya eşlemleyen bir H kıyım ailesi, eğer x, y Є U olan farklı anahtar çiftleri için, h(x) = h(y) ise ve h Є H kıyım fonksiyonlarının sayısı H /m olursa evrenseldir. Burada, H = 3 ve m = 3 tür. 4 farklı anahtarın her bir çifti için, bir çarpışmaya neden olacak kıyım fonksiyonu vardır. Yukarıdaki tablodan; h(a) = h(b), sadece h(a) = h(c), sadece h(a) = h(d), sadece h(b) = h(c), sadece h(b) = h(d), sadece h(c) = h(d), sadece için 2. yuvaya kıyılırlar. için 0. yuvaya kıyılırlar. için 1. yuvaya kıyılırlar. için 0. yuvaya kıyılırlar. için 1. yuvaya kıyılırlar. için 0. yuvaya kıyılırlar.

Problem -3. Kısa cevaplar Aşağıdaki sorulara, kısa ama tam cevaplar verin. (a) Herhangi bir karşılaştırmaya dayalı sıralama algoritması, koşma süresini sabit bir çarpandan daha fazla değiştirmeyecek şekilde kararlı olabilir. Karşılaştırmaya dayalı bir sıralama algoritmasını kararlı yapabilmek için, bütün elemanları dizilimdeki asıl pozisyonlarına etiketleriz. Eğer A[i] = A[j] ise, elemanın pozisyonuna karar vermek için i ve j yi kıyaslarız. Bu koşma süresini en fazla 2 kat arttırır. (b) Kıyaslama modelinde, aşağıdaki özelliklerin ikisinin de olması durumunda Öncelikli Kuyruğun olamayacağını tartışın. EXTRACT-MIN BUILD-HEA P Ө(1) sürede koşacak. Ө(n) sürede koşacak. Eğer böyle bir Öncelikli Kuyruk var olsaydı, sıralamayı BUILD-HEAP(Ө(n)) i yürütür ve sonra n kere en küçüğü bularak (n. Ө(1) = Ө(n)) yapabilirdik. Bu durumda algoritmamız Ө(n) sürede çalışırdı ve bu da, kıyaslamaya dayalı sıralama algoritmalarının alt sınırı Ө(nlgn) e uymazdı. (c) A[1] in en büyük anahtar olduğu A[1,2,...,n] dizilimi içindeki bir yığın (en büyük yığın) için, aşağıdaki yordamı uygulayacak ve aynı zamanda da en büyük yığın olma özelliğini koruyacak sözde kodu yazın. - A[i] anahtarının değerini δ kadar küçültür. δ nın 0 dan büyük veya eşit olduğunu varsayın.

( d ) n tane farklı tamsayıdan (bazıları eksi değerli olabilir) oluşan sıralı A dizilimi için; 1 i n ve A[i]=i olan bir i dizinini ( varsa) bulmak için bir algoritma yazın. Eğer birden fazla buna benzer dizin varsa, algoritmanın herhangi birini vermesi yeterlidir. Buradaki önemli gözlem, eğer A[j] > j ise ve A[i] = i ise, i < j demektir. Benzer şekilde eğer, A[j] < j ise ve A[i] = i ise, i > j demektir. Dolayısıyla, dizilimin ortasındaki elemana bakarsak, dizilimin yarısı elenebilir. Aşağıdaki algoritma, (INDEX-SEARCH) ikili aramaya benzer ve Ө(lgn) sürede koşar. Eğer herhangi bir cevap yoksa -1 i geri döndürür. Problem -4. h yüksekliğinde ve n=2 h yapraklı bir ikili ağacın verildiğini düşünün. Bu ağacın her düğümü ve yaprağına bir v değeri (rastgele gerçek sayı) atanmış durumda. Eğer x bir yaprak ise, x i ve x in atalarının ve x in büyük kümesini A(x) ile ifade ederiz. A(x) köke kadar gider. Benzer şekilde x ve y farklı yapraklarsa,

A(x,y) koyu olarak gösterilmiştir. f(x,y) = 19+15+21+36+20+30 = 141 f(x,y) fonksiyonunu A(x,y) deki düğümlerin değerlerinin toplamı olarak tanımlayın. f(x 0, y 0 ) ın en büyük olduğu x 0 ve y 0 yapraklarını bulmak için verimli bir algoritma (sözde kod) yazın. Algoritmanızın koşma süresi nedir? Bu sorunun farklı bir kaç çözüm yöntemi var. Sınıfta böl ve fethet i çalıştığımızdan, burada böl ve fethet çözümünü veriyoruz. Ama bunun dışında da O(n), O(n lgn) ve O(n 2 lgn) sürelerinde koşan, kaliteli başka algoritmalar da vardı. Bu algoritmaların değerleri sırasıyla 11, 9 ve 4 puandı. Doğru çözümleme 4 puan alacak. Önce O(n lgn) süreli çözüme bakalım,sonra da bu çözümü nasıl O(n) e çevireceğimizi gösterelim. MAX1(z) özyinelemeli fonksiyonunu, f(x) in en büyük değerini (bir düğümün atalarının toplamını) geri döndürmesi için tanımlıyoruz; bunu z nin alt ağacındaki tüm x yaprakları için yapacak. Benzer şekilde, f(x,y) nin en büyük değerini geri döndürecek MAX2(z) yi, z alt-ağacındaki tüm x,y yaprak çiftleri için tanımlıyoruz. Kökte MAX2(z) yi çağırmamız istenen sonucu verecektir. Önce MAX1(z) yi uygulayalım. En uzun yol ya z nin sol alt ağacı, yada z nin sağ alt ağacıdır; böylece aşağıdaki gibi basit bir böl ve fethet algoritması elde edilir.

MAX2(z) için, 3 olası çözüm olduğunu söyleyelim: 2 yaprak z nin sağ alt ağacında, 2 yaprak z nin sol alt ağacında, ya da 1 yaprak sağ, bir yaprak da sol alt ağaçtadır. Çözümleme: MAX1 için Ana Metodu uygulayarak aşağıdaki yinelemeyi elde ederiz. MAX2 için ise Ana Metodun 2. durumu çerçevesinde; elde ederiz. O(n) çözümünü elde edebilmek için, bir MAXBOTH fonksiyonunu tanımlarız. Bu fonksiyon bir çifti geri döndürür (MAX1 ve MAX2 nin yanıtlarını). Bu basit değişiklikle yineleme MAX1 in aynısıdır. Problem -5. Küçük çoklu kümelerin sıralanması Bu problem için, n uzunluğunda, k farklı anahtardan oluşan A diziliminde, Amacımız bu dizilimi, Ω(n lgn) den daha hızlı sıralayabilmek. Bunu 2 aşamada yapacağız. Birinci aşamada, A daki k farklı anahtarı B sıralı diziliminde hesaplayacağız. İkinci aşamada, B dizilimini kullanarak, A dizilimini sıralayacağız. k nın bir sabit gibi çok küçük olabileceğini ve koşma sürenizin n kadar, k ya da bağımlı olabileceğine dikkat edin. n öğenin anahtarlara ek olarak uydu verileri de var. Örnek: olsun.

Kitapçık 11: Pratik Ara Sınav 1 Burada n= 10 ve k = 4 olur. İlk aşamada, hesaplarız. İkinci aşamadan sonra sıralı dizilimimiz ise, olur. Hedefiniz, bu iki aşama için de verimli algoritmalar tasarlamak ve bunları çözümlemek. Unutmayın, algoritmanız ne kadar verimli olursa, alacağınız not da o kadar yüksek olur! (a) Birinci aşama için, k farklı anahtarı olan k uzunluğundaki sıralı B dizilimini hesaplayacak bir algoritma tasarlayın. k nın değeri algoritmaya girdi olarak verilmemektedir. Algoritma, farklı (tekrarlamayan) elemanları, B dizilimine eklerken, ara basamaklarda, dizilimi sıralı tutar. i= 1,2,...,n için, A[i] elemanı ikili arama ile B diziliminde aranır. Eğer A[i], B de yer alıyorsa, araya yerleştirmeye gerek olmaz. Aksi halde ikili arama, bu elemanın dizilime eklenmesi gereken konumu da B nin sıralı düzenini koruyarak bulur. B nin içindeki, o konumun sağında olan tüm elemanlar, A[i] ye yer açmak için bir konum kaydırılırlar. (b) ( a) bölümündeki algoritmanın çözümlemesini yapın. B diziliminde, A diziliminin her elemanının ikili araması, O(lg k) kadar süre gerektirir, çünkü B nin boyutu en fazla k dir. Bu da toplam da O(n lg k) ya mal olur. Ayrıca her yeni elemanın B de yerine yerleştirilmesi, tam olarak k sayıda işlem gerektirir, bu da O (1 + 2 +... + k) ya, yani O(k2) ye mal olur. Eğer, k< ise, algoritmanın toplam maliyeti O [n lgk+ ] = O (n lgk) olur. (c) İkinci aşama için bir algoritma tasarlayın; yani bölüm (a) da yarattığınız B dizilimini kullanarak verilen bir A dizilimini sıralayın. Öğelerin uydu verileri olduğundan, belirli anahtarları olan elemanları sayıp ve kopyalamanın yeterli olmayacağına dikkat edin. İpucu: Sayma sıralamasını uyarlayın..

Sayma sıralamasında yaptığımız gibi bir C dizilimi oluşturun. C[i], A da, değerleri, B[i] den daha küçük olan elemanları içersin. Sayma sıralaması, olduğu gibi kullanıldığında, A[i] bir tam sayı olduğundan çalışmayacaktır.. Ayrıca, A[i] çok büyük bir tamsayı değeri de olabilir ( giriş aralığımızın bir sınırlaması yok). Bu nedenle A[i], C dizilimimiz için geçersiz bir anahtar listesidir. Yapmak istediğimiz, A[i] nin değeri için uygun bir tümlenik etiket atamaktır. Burada seçtiğimiz etiket, problemin son kısmında hesapladığımız, B nin içindeki A[i] nin değerinin dizinidir.. Bu dizini nasıl buluruz? B yi baştan sona tarayıp, A[i] değerini arayabilir, sonra da B de A[i] yi içeren dizini geri döndürebiliriz. Bu O(k) kadar süre alır. Ancak, B zaten sıralı olduğundan, ikili aramayı kullanarak bu maliyeti O(lg k) ya indirebiliriz. BINARY-SEARCH(S,x), S dizilimini ve x değerini girdi olarak alan, S[i]=x olduğundaki i değerini döndüren fonksiyon olsun. Sayma sıralamasının yeniden düzenlenmiş hali aşağıdadır; yeniden düzenlenen satırlar kalın fontla gösterilmiştir.. (d) (c) bölümündeki algoritmayı çözümleyin. Düzenlenmiş sayma sıralamasının çözümlemesi, şu şekilde parçalara ayrılabilir. Birinci Döngü : O(k) İkinci Döngü : O(n) döngü, her döngü, k boyutunda bir dizilimde ikili arama gerektirdiğinden, toplam iş : O(n lg k) Üçüncü Döngü : O(k)

Dördüncü Döngü : O(n) döngü, her döngü, k boyutunda bir dizilimde ikili arama gerektirdiğinden, toplam iş : O(n lg k) Koşma süresi, 2. ve 4. döngüler tarafından domine edildiğinden, toplam koşma süresi O(n lg k) dır.