Kompleksitas Algoritma Galil-Seiferas Kompleksitas Algoritma Not So Naϊve

4.3 Kompleksitas Algoritma Galil-Seiferas

Kompleksitas waktu yang digunakan untuk algoritma Galil-Seiferas adalah notasi Big- ϴm yaitu notasi asimtotik linear dapat dilihat pada tabel 4.4. Tabel 4.4 Kompleksitas Algoritma Galil-Seiferas Waktu Big- ϴn C Code C C Private Sub search ByRef hasil As Integer While p = n – m C 1 n C 1 n While p + s + q n AndAlso xs + q = yp + s + q C 1 5n C 1 5n q += 1 C 2 5n C 2 5n End While C 3 5n C 3 5n If q = m - s AndAlso x.Equalsy.Substringp, s + 1 Then C 4 5n C 4 5n hasil = p C 5 5n C 5 5n End If C 6 5n C 6 5n If q = p1 + q1 Then C 4 5n C 4 5n p += p1 C 2 5n C 2 5n q -= p1 C 2 5n C 2 5n Else C 7 5n C 7 5n p += q k + 1 C 2 5n C 2 5n q = 0 C 2 5n C 2 5n End If C 8 5n C 8 5n End While C 9 5n C 9 5n End Sub C 10 5n C 10 5n ϴn Universitas Sumatera Utara Kompleksitas waktu dari algoritma Galil-Seiferas adalah : Tm,n = C 1 n + C 1 5n + 5C 2 5n + C 3 5n + 2C 4 5n + C 5 5n + C 6 5n + C 7 5n + C 8 5n + C 9 5n + C 10 5n = C 1 n 1 + C 1 + 5C 2 + C 3 + 2C 4 + C 5 + C 6 + C 7 + C 8 + C 9 + C 10 5n 1 = n 1 + 5n 1 = ϴn Tabel 4.4 menjelaskan tentang kompleksitas dari Algoritma Galil-Seiferas. C adalah konstanta. adalah frekuensi yang berfungsi sebagai ukuran masukan dan C. adalah untuk mencari kompleksitas waktu Tn, T adalah waktu dan n adalah jumlah proses. Jumlahkan hasil dari perkalian C. maka ambil pangkat terbesar dari nilai masukan dan didapatlah pangkat terbesar yaitu m. Pada algoritma Galil-Seiferas nilai m = 5 dikarenakan adanya perbandingan karakter dalam kasus yang besar dalam fase ini. Fase pre-proses memiliki Tn = Ɵm dan fase pencarian memiliki Tn = Ɵn. Maka kompleksitas Algoritma Galil- Seiferas adalah Ɵn. Universitas Sumatera Utara

4.4 Kompleksitas Algoritma Not So Naϊve

Kompleksitas waktu yang digunakan untuk algoritma Not So Naϊve adalah notasi Big- ϴm x n yaitu notasi asimtotik linear dapat dilihat pada tabel 4.5. Tabel 4.5. Kompleksitas Algoritma Not So Naϊve Waktu Big-ϴm x n Code C C If x.Substring0, 1.Equalsx.Substring1, 1 Then C 1 1 C 1 k = 2 C 2 1 C 2 ell = 1 C 2 1 C 2 Else C 3 1 C 3 k = 1 C 2 1 C 2 ell = 2 C 2 1 C 2 End If C 4 1 C 4 While j = n - m C 5 n C 5 n If Not x.Substring1, 1.Equalsy.Substringj + 1, 1 Then C 6 n C 6 n j = j + k C 2 n C 2 n Else C 7 n C 7 n If x.Substring2, m - 2.Equalsy.Substringj + 2, m - 2 And x.Substring0, 1.Equalsy.Substringj, 1 Then ϴm n m x n Return j C 5 m x n C 5 m x n End If C 8 m x n C 8 m x n j = j + ell C 2 m x n C 2 m x n End If C 9 m x n C 9 m x n End While C 10 m x n C 10 m x n Return n C 11 1 C 11 ϴm x n Universitas Sumatera Utara Kompleksitas waktu dari algoritma Not So Naϊve adalah : Tm,n = C 1 + 4C 2 + C 3 + C 4 + C 11 + C 2 n + C 5 n + C 6 n + C 7 n + Ɵm x n + C 2 m x n + C 5 m x n + C 8 m x n + C 9 m x n + C 10 m x n = C 1 + 4 C 2 + C 3 + C 4 + C 11 m + C 2 + C 5 + C 6 + C 7 n 1 + C 2 + C 5 + C 8 + C 9 + C 10 m 1 n 1 + ϴm x n = m + n 1 + m 1 n 1 + ϴm x n = ϴm x n Pada Tabel 4.5 dijelaskan tentang kompleksitas dari algoritma Not So Naϊve. C adalah sebuah konstanta. Kemudian adalah frekuensi yang berfungsi sebagai ukuran masukan dan C. adalah untuk mencari kompleksitas waktu Tm,n. T adalah waktu, m adalah batas panjang karakter yang di-input pattern dan n adalah batas panjang karakter pada teks string. Jumlahkan hasil dari perkalian C. lalu kemudian ambil pangkat terbesar dari nilai masukan dan akan di dapatkan pangkat terbesar yaitu m x n. Maka kompleksitas waktu algoritma Not So Naϊve adalah Ɵm x n. Hal ini sesuai dengan kompleksitas waktu yang dihitung oleh Charras dalam bukunya yang berjudul Handbook of Exact String Matching tahun 1997 yaitu ϴm x n. Universitas Sumatera Utara

BAB 5 KESIMPULAN DAN SARAN

5.1. Kesimpulan

Berdasarkan pengamatan dari analisis dan perancangan sistem, penulis dapat mengambil kesimpulan yaitu : 1. Aplikasi yang dirancang telah didapatkan solusi dari permasalahan dengan mengimplementasikan algoritma Galil-Seiferas dan algoritma Not So Naϊve untuk melakukkan pencocokkan kata pada aplikasi kamus hukum. 2. Algoritma Galil-Seiferas pada tahap searching dilakukan pencarian pada teks T untuk menemukan setiap v dan ketika ditemukan akan dilanjutkan dengan pencarian terhadap u tepat disebelahnya pada T. 3. Kompleksitas waktu pada algoritma Galil-Seiferas menggunakan waktu ukurann ϴn dan algoritma Not So Naϊve menggunakan kompleksitas waktu ukuran ϴm x n. 4. Hasil waktu proses dengan algoritma Galil-Seiferas lebih cepat dengan hasil rata-rata 2,087 ms dibanding algoritma Not So Naϊve 2,456 ms. Universitas Sumatera Utara