Tugas Resume Analisis Algoritma

Tugas Resume Analisis Algoritma
(Muhammad ammar)
Apa itu algoritma?
Prosedur komputasional yang terdefinisi dengan baik yang membutuhkan nilai (himpunan nilai)
sebagai input dan menghasilkan nilai (himpunan nilai) sebagai output
Alat bantu (tools) menyelesaikan masalah koputasional yang terdefinisi dengan baik (well
defined composesional problem)
Metode penyelesaian yang logis dan wajib benar (correctness) sesuai keinginan masalah (desired
solution)
Algoritma adalah prosedur atau alat bantu yang harus logis. Sifatnya step by step.
Pseudocode : Code untuk memudahkan pemahaman algoritma yang dapat di transformasikan
kedalam berbagai bahasa pemrograman.
Kompleksitas algoritma : analisis kebutuhan dari algoritma khususnya waktu komputasi dan
kapasitas memori
algoritma

input

masalah

output


Contoh masalah komputasional


masalah pencarian data

Input : Barisan n bilangan Asli (a1,a2,…,an) dalam larik A dan sebuah bilangan key yang ingin
di cari.
Output : lokasi key dalam A. Jika key tidak di temukan maka tambahkan key sebagai unsur
terakhir.

Contoh :
Input : Barisan bilangan A = {31,41,59,26,41,58} key =26
Output : indeks dari posisi key. Untuk kasus ini key=26
Algoritma pencarian mengembalikan nilai(unsur) dari indeks posisi key adalah 4

Masalah pencarian data (searching problem)
Input : barisan n bilangan asli (a1, a2 ,… ,an ) dalam larik A dan sebuah bilangan key yang dicari
Output : lokasi key dalam A. jika key tidak ditemukan dalam A . tambahkan key sebagai unsure
tersebut.

ALGORITMA LINEAR SEARCHING (NAÏVE)
a.

Telusuri seluruh indeks A untuk membandingkan apakah unsure dalam indeks yang di

telusuri sama dengan key
b.

Jika key= unsur dalam indeks, algorima berhenti. Jika key tidak di temukan maka indeks

terakhir dari A, tambahkan key sebagai unsure terkahir dari indeks terkahir
c.

Algoritma berhenti dan kembalikan nilai indeks dari A

LINEAR SEARCH(A, key)
1.

Indeks ← 1;


2.

Ada ← False;

3.

Mengecek key dalam A[1…length[A]]

4.

While indeks ≤ length[A] and ada=False

5.

If [indeks] = key

6.

Then ada=true;


7.

Indeks ← indeks+1;

8.
9.

If ada=False
Then indeks ← length[A] + 1;

10. Return indeks-1

Contoh
A = {31,41 ,26,41 } key =26
1. Indeks=1
2. Ada= false
3. While 1 ≤ 4 and ada=False
1. If A[1]=26 (F)
2. Indeks=1+1=2
4. While 2 ≤ 4 and ada=False

a. If A[2]=26 (F)
b. Indeks=2+1=3
5. While 3 ≤ 4 and ada=False
c. If A[3]=26 (T)
i. Ada=true
d. Indeks=3+1=4
6. While 4≤ 4 and ada=False

( T and T)
( T and T)
( T and T)

( T and F)

7. If ada=false (F)
Return 3

Kesipulannya berdasarkan data yang ada dalam A key=26 terdapat diindeks 3
ALGORITMA INSENTION-SORT
Insention sort (A)

1. For J ← 2 to length [A]
2. Key ← 2 [j]
3. Sisipkan A[j] kedalam barisan terurut A[1…j-1]
4. I ← j – 1
5. While (i > 0 Λ A[i] > key)
6. A [ i + 1] ← A [i]
7. i ← i – 1
8. A [ i+ 1] ← key

*while di lakukan maksimal sebanyak j ( j=jumlah deret) untuk mengontrol perbandingannya
masih ada atau tidak.
Contoh
A = {27,41 ,20,38 }
1. For j=2
a. Key=A[2]=41
b. i=j-1=2-1=1
c. while (i>0 ¿ A[1]>key)
d. A[2]=key=41

27


41

2. For j=3
a. Key=A[3]=20
b. i=j-1=3-1=2
c. while (i>0 ¿ A[2]>key)
i.
A[3]=A[2]=41
ii.
i=2-1=1
d. while (i>0

(T and F)

(2>0

27

¿


41>20)

41

41

38

¿

e. while (i>0 ¿ A[0]>key)
f. A[1]=key=20
3. For j=4
a. Key=A[4]=38
b. i=j-1=4-1=3
c. while (i>0 ¿ A[3]>key)
i.
A[4]=A[3]=41
ii.

i=3-1=2

A[2]>key)

27>41)

38

(T and T)

(1>0

¿

27

d. while (i>0

¿


20

A[1]>key)
(T and T)
i.
A[2]=A[1]=27
i=1-1=0

ii.

(1>0

27

(F and F)

(T and T)

41


(0>0

20

¿

27

(T and T)

27
(2>0

¿

27>41)

¿

38

- >20)

41
(3>0

20

¿

27>20)

38

41>38)

41

41

e. A[3]=key= 38

Sehingga didapatkan urutan sebagai berikut
20

27

n

n

j=1

j=1
n

38

T ( j)=n+3(n−1)+ ∑ t j +2 ∑ t j −1
n

=n+3( n−1)+ ∑ t j +2
j=1

(∑
j=2

t j −( n−1)

)

n

=2 n+3 ∑ t j−1
j=1

tj

Kasus terbaik (

=1 terjadi satu kali perulangan)

n

T ( j)=2 n+3 ∑ 1−1
j=1

=5n−4
Kasus terburuk (

tj

=j

terjadi perulangan sebanyak j)

n

T ( j)=2 n+3 ∑ j−1
j=1

=2n+3

(n(2 n+1) )−1

3 n2 3 n
=2 n+
+ −1
2
2
2
3n 7n
=
+ −1
2
2

41

Dokumen yang terkait

Analisis Komparasi Internet Financial Local Government Reporting Pada Website Resmi Kabupaten dan Kota di Jawa Timur The Comparison Analysis of Internet Financial Local Government Reporting on Official Website of Regency and City in East Java

19 819 7

Analisis komparatif rasio finansial ditinjau dari aturan depkop dengan standar akuntansi Indonesia pada laporan keuanagn tahun 1999 pusat koperasi pegawai

15 355 84

Analisis Komposisi Struktur Modal Pada PT Bank Syariah Mandiri (The Analysis of Capital Structure Composition at PT Bank Syariah Mandiri)

23 288 6

Analisis Konsep Peningkatan Standar Mutu Technovation Terhadap Kemampuan Bersaing UD. Kayfa Interior Funiture Jember.

2 215 9

FREKWENSI PESAN PEMELIHARAAN KESEHATAN DALAM IKLAN LAYANAN MASYARAKAT Analisis Isi pada Empat Versi ILM Televisi Tanggap Flu Burung Milik Komnas FBPI

10 189 3

Analisis Sistem Pengendalian Mutu dan Perencanaan Penugasan Audit pada Kantor Akuntan Publik. (Suatu Studi Kasus pada Kantor Akuntan Publik Jamaludin, Aria, Sukimto dan Rekan)

136 695 18

Analisis Penyerapan Tenaga Kerja Pada Industri Kerajinan Tangan Di Desa Tutul Kecamatan Balung Kabupaten Jember.

7 76 65

Analisis Pertumbuhan Antar Sektor di Wilayah Kabupaten Magetan dan Sekitarnya Tahun 1996-2005

3 59 17

Analisis tentang saksi sebagai pertimbangan hakim dalam penjatuhan putusan dan tindak pidana pembunuhan berencana (Studi kasus Perkara No. 40/Pid/B/1988/PN.SAMPANG)

8 102 57

Analisis terhadap hapusnya hak usaha akibat terlantarnya lahan untuk ditetapkan menjadi obyek landreform (studi kasus di desa Mojomulyo kecamatan Puger Kabupaten Jember

1 88 63