Algoritma dan Pemrograman Ruang 800 Pertemuan 10

Materi Review

perbedaan “r” dan “r+” adalah r hanya dapat digunakan untuk membaca file sedangkan r+ dapat digunakan untuk membaca dan menulis file

atoi digunakan untuk mengubah string menjadi angka
itoa kebalikan dari atoi yaitu untuk merubah angka menjadi string
selain menggunakan itoa untuk merubah angka menjadi string, dapat juga digunakan sprintf

strcat untuk menyambung string
strtok untuk memisah string

perbedaan strcmp dan strcmpi : strcmpi tidak sensitif huruf besar / kecil sedangkan strcmp pengaruh huruf besar/kecil.

pow : untuk menggunakan pangkat dalam C
pow termasuk dalam library #include<math.h>

a-l-g-o-r-i-t-m-a.blogspot.com = didalam web banyak hasil kodingan

Algoritma dan Pemrograman Ruang 800 Pertemuan 9

Sorting and Searching

Sorting digunakan untuk mempermudah penncarian data
Sorting dibagi menjadi 3 yaitu :

>Bubble Sort<
banyaknya putaran dalam bubble sorting = banyak data dikurangi 1
Contoh cara kerja bubble sorting
5   7   1   6   4
Diawali dari paling belakang yaitu 4 dibandingkan dengan sebelahnya, 6 jika lebih kecil maka kedua angka akan bertukar tempat
5   7   1   4   6
lalu ke index selanjutnya yaitu 6 bandingkan lagi dengan sebelahnya jika tidak lebih kecil maka tidak akan bertukar tempat
5   7   1   4   6
Seterusnya hingga berurut
5   1   7   4   6
1   5   7   4   6
1   5   4   7   6
1   4   5   7   6
1   4   5   6   7
(Sorting Selesai)

>Selection Sort<
sama seperti bubble sort, banyaknya putaran dalam selection sort = banyak data dikurangi 1
Contoh cara kerja Selection Sort

  1. 5   7   1   6   4Di awali dengan index terdepan di bandingkan dengan sampingnya jika lebih kecil maka index tersebut akan ditandai, jika tidak maka akan ke samping lagi
    5   7   1   6   4

    Karena 1<5 maka 1 ditandai
    5   7   1   6   4

    Berlanjut terus hingga index terakhir. Jika sudah dibandingkan dengan index paling terakhir maka index yang ditandai akan bertukar empat dengan 5 karena masih putaran 1
    1   7   5   6   4

  2. Putaran ke 2 sama seperti putaran 1 hanya dimulai pada index ke 2
    1   7   5   6   41   7   5   6   4

    1   7   5   6   4

    1   4   5   6   7

  3. 1   4   5   6   71   4   5   6   7
  4. 1   4   5   6   7Sorting Selesai

 

>Insertion Sort<
Insertion menggunakan rekursif
Contoh cara kerja insertion Sort :


UntitledUntitledUntitled

Searching
searching menggunakan sorting, setelah disorting lalu disearch

Searching dibagi menjadi :

  1. Linear Search
    Linear search membandingkan yang dicari dengan semua data yang tersedia. Tidak cocok dengan data dengan jumlah besar. Misal ada 1 juta data, jika menggunakan linear search maka semua data akan di bandingkan dengan yang kita cari sehingga akan memakan waktu yang sangat lama
  2. Binary Search
    Binary search yang paling efisien dibandingkan dengan jenis search yang lain. Tetapi kelemahan binary search adalah data harus disort sebelum di search.
    Cara Kerja :
    10   20   30   40   50   60   70   80
    Left = 0
    Right = 7
    Mid = (L+R) : 2 = 3
    *NB: koma dalam int dihilangkan
    Yang dicari = 1
    Jika mid<yang dicari maka left = mid-1, tetapi
    jika mid>yang dicari maka right=mid+1
    Yang dibandingkan disini adalah data bukan index10   20   30   40   50   60   70   80
    Left = 4
    Right = 7
    Mid = 540<70
    10   20   30   40   50   60   70   80
    Left = 5
    Right = 7
    Mid = 6
    Index ke 6 berisi 70 nilai yang dicari