algoritma etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
algoritma etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

2 Aralık 2009 Çarşamba

Artış Oranı Fonksiyonları

Artıs Oranı Fonksiyonları
O(1) : Sabit zaman
Örnek : n elemanlı bir dizinin i. elemanına bir deger atanması O(1)’dir. Çünkü bir
elemana indisinden dogrudan erisilmektedir.
O(n) : Dogrusal zaman
Örnek : n elemanlı bir dizinin tüm elemanlarının ekrana yazdırılması O(n)’dir.
Örnek : sıralı olmayan bir dizideki (listedeki) elemanlardan birinin aranması O(n)’dir
(en kötü durumda da, ortalama durumda da).
O(log2n) : O(1)’den fazla O(n)’den azdır.
Örnek : Sıralı bir listenin elemanları içinde ikili arama (binary search) uygulanarak
belirli bir degerin aranması O(log2n)’dir.
O(n2) : kinci dereceli zaman
Örnek : Basit sıralama algoritmalarının birçogu (selection sort gibi) O(n2)’dir.
O(n log2n) : Bazı hızlı sıralama algoritmaları O(n log2n)’dir.
O(n3) : Kübik zaman
Örnek : Üç boyutlu bir tamsayı tablosundaki her elemanın degerini artıran algoritma.
O(2n) : Üstel zaman, çok büyük degerlere ulasır.

Alıntıdır. (Yrd Doç Dr Aybars Ugur)

2 Kasım 2009 Pazartesi

Postfix ifadelerin sonucunu hesaplayan algoritma

Algoritma : (Bir postfix ifadenin sonucunu hesaplar)
opndstk = the empty stack;
// scan the input string reading one element at a time into symb
while (not end of input) {
symb = next input character;
if (symb is an operand)
push(opndstk,symb);
else {
// symb is an operator
opnd2 = pop(opndstk);
opnd1 = pop(opndstk);
value = result of applying symb (case *,/,+,-) to opnd1 and opnd2
push(opndstk,value);
} // end else
} // end while
return(pop(opndstk));