Pages

Monday, December 12, 2011

Manfaat Efisiensi Algoritma

Efisiensi Algoritma →kecepatan (waktu) dan space memori

Add caption
Jadi, dalam suatu algoritma analisa yang palin sering dilakukan pada suatu algoritma adalah waktu proses.  Dalam menentukan waktu proses secara tepat merupakan pekerjaan yang sangat sulit karena waktu proses secara eksak sangat tergantung pada implementasi algoritma dan perangakt keras yang dipakai.  Analisa yang digunakan untuk menyatakan efisiensi haruslah se-umum mungkin. Efisiensi suatu algoritma merupakan salah satu penentu dipakai atau tidaknya suatu algoritma itu.









·         Tipe Data
-          integer
-          real
Dua nilai yg sama dgn operator yg sama tapi dgn variabel yg berbeda, maka terdapat perbedaan kecepatan/proses penyelesaiannya.
Contoh :
250 + 17 = 267    (lebih cepat dari)
250.0 + 17.0         = 0.25*103 + 0.17*102
                                                = 0.25*103 + 0.017*103
                                                = (0.25+ 0.17)*103
                                                = 0.267*103
                                                = 267.0
·         Operator
            Urutan penggunaan operator/penempatan operator bisa mempengaruhi efisiensi.
Contoh perkalian (*) lebih lama daripada penjumlahan (+)

·         Tetapi dalam perkembangan teknologi, perbedaan penggunaan operator maupun tipe data dasar tidak terlalu signifikan.
·         Yang perlu diperhatikan adalah banyaknya operasi aritmatika dan logika yang dilakukan.

Operator aritmatika : +,-,*,/,^,div,mod

Operator logika : AND,OR,NOT masing-masing 1.

Operator adalah jika hasil perhitungannya termasuk dalam himpunan itu sendiri.

2 < 5 bukan operator tapi konstanta logika karena tidak menghasilkan nilai yang sejenis

y = 5+0     1 operation
y = 2+3*5  2 operation
y = 3*5+2  2 operation


·         Banyak langkah dalam suatu algoritma dinyatakan dengan banyaknya operasi aritmatika dan logika yang dilakukan. Dengan demikian hal ini bergantung pada statement dan  jenis algoritma :
-          sequensial
-          branching
-          looping
-          subroutine call (bisa memanggil prosedur dan bisa memanggil fungsi)
Banyak langkah (waktu tempuh) + memori
= kompleksitas waktu




CONTOH :

1.   for i ß 2 to 30 step 5


Ts = 2
 
x ß x+1

y ß x+y

           Berapa waktu tempuhnya ?

       T = t (Ts+1)
          = 6 (2+1)
          = 18

2.   n=20

for i ß 2 to 2*n step 5


Ts = 2
 
x ß x+1

y ß x+y

           Berapa waktu tempuhnya ?

 

Looping

      Tfor = t (Ts+1)
              = 8 (2+1)
               = 24
   Waktu tempuh perkalian 2*n T2*n = 1
   Jadi waktu tempuhnya = T = 24 + 1
                                            = 25


SUMBER:
http://wartawarga.gunadarma.ac.id/2011/04/efisiensi-algoritma/
bambang.himatif.or.id/download/Efisiensi%20algoritma.rtf
http://andifharied.blogspot.com/2011/12/manfaat-efisiensi-algoritma.html
http://www.csharp-indonesia.com/2010/08/efisiensi-algoritma.html
urhanm.blogspot.com

No comments:

Post a Comment