Algoritma Pencarian Linear Linear Search Algorithm

adalah meningkatnya keakuratan dalam mengeja kata dan efisiensi dari jumlah tombol keyboard yang ditekan dalam mengetik suatu kata keystroke untuk murid yang mengalami permasalahan dari segi pembelajaran, fisik, dan pengembangan Lewis et al., 1998, MacArthur, 1998; Tumlin Heller, 2004. Tujuan utama dari sistem prediksi kata adalah mengurangi jumlah keystroke yang digunakan untuk mengetik suatu teks. Jadi, penulis akan menghitung jumlah Keystroke Saving KS dengan menggunakan rumus dari Trnka dan McCoy 2008 . KS = �� � � − �� � �� � � �� � � × 2.1

2.3 Algoritma Pencarian

Pencarian adalah suatu proses mencari solusi dari suatu permasalahan melalui sekumpulan kemungkinan ruang keadaan state space. Ruang keadaan merupakan suatu ruang yang berisi semua keadaan yang mungkin. Dalam ilmu komputer, sebuah algoritma pencarian dijelaskan secara luas merupakan algoritma yang menerima masukan berupa sebuah masalah dan menghasilkan sebuah solusi untuk masalah tersebut, yang biasanya didapat dari evaluasi beberapa kemungkinan solusi. Himpunan semua kemungkinan solusi dari sebuah masalah disebut ruang pencarian. Algoritma pencarian brute-force atau pencarian uninformed menggunakan metode yang sederhana dan sangat intuitif pada ruang pencarian, sedangkan algoritma pencarian informed menggunakan heuristik untuk menerapkan pengetahuan tentang struktur dari ruang pencarian untuk berusaha mengurangi banyaknya waktu yang dipakai dalam pencarian Nilson. J, 1998.

2.3.1 Algoritma Pencarian Linear Linear Search Algorithm

Linear Search Sequential Search adalah metode untuk menemukan nilai tertentu pada sebuah larik dengan cara memeriksa elemennya satu persatu secara berurutan hingga nilai kunci yang dicari ditemuka. Jika ditemukan, pencarian akan dihentikan Cormen et al., 1990. Kelebihan dari algoritma Linear Search antara lain: Universitas Sumatera Utara 1. Algoritma pencarian sekuensial ini cocok untuk pencarian nilai tertentu pada sekumpulan data terurut maupun tidak. 2. Keunggulan algoritma adalah dalam mencari sebuah nilai dari sekumpulan kecil data. 3. Termasuk algoritma yang sederhana dan cepat karena tidak memerlukan proses persiapan data misalnya: pengurutan. Sedangkan kelemahan algoritma Linear Search adalah bahwa dalam kasus terburuk nilai tidak ditemukan, pembandingan nilai dilakukan sebanyak jumlah data dalam kumpulan nilai. Dengan demikian, proses pencarian akan bertambah lambat secara linear dengan bertambahnya banyaknya jumlah data. 2.3.2 Algoritma Pencarian Biner Binary Search Algorithm Menurut Abidin 2014 Binary Search adalah algoritma pencarian untuk data yang terurut. Pencarian dilakukan dengan cara menebak apakah data yang dicari berada ditengah-tengah data, kemudian membandingkan data yang dicari dengan data yang ada ditengah. Jika data yang ditengah sama dengan data yang dicari, berarti data ditemukan. Namun, bila data yang ditengah lebih besar dari data yang dicari, maka dapat dipastikan bahwa data yang dicari kemungkinan berada di sebelah kiri dari data tengah dan data disebelah kanan data tengah dapat diabari. Upper bound dari bagian data kiri yang baru adalah indeks dari data tengah itu sendiri. Sebaliknya, bila data yang di tengah lebih kecil dari data yang dicari, maka dapat dipastikan bahwa data yang dicari kemungkinan besar berada disebelah kanan dari data tengah. Lower bound dari data di sebelah kanan dari data tengah adalah indeks dari data tengah itu sendiri ditambah 1. Demikian seterusnya. Misalnya kita memiliki array A, dan kita ingin menemukan lokasi spesifik target integer K dalam array. Ada 3 kemungkinan kondisi pada binary search yaitu Lantana, 2012: 1. Jika data target K langsung di temukan, maka proses pembagian ruangan ebrhenti. Kemudia print out indeks data elemen pada array. Universitas Sumatera Utara 2. Jika data target K A[middle], maka pencarian dapat dibatasi hanya dengan melakukan pencarian pada sisi kiri array dari A[middle]. Seluruh elemen yang berada di sebelah kanan dapat diabaikan. 3. Jika data target K A[middle], maka akan lebih cepat jika pencarian dibatasi hanya pada bagian sebelah kanan saja. 4. Jika seluruh data telah dicari namun tidak ada, maka diberi nilai seperti -1. 2.3.3 Algoritma Pencarian Interpolasi Interpolation Search Algorithm Interpolation Search adalah algoritma pencarian yang lebih efisien daripada algoritma Binary dan Sequential Search. Hal ini dikarenakan algoritma ini tidak perlu menjelajahi setiap elemen dari tabel. Kerugiannya adalah algoritma ini hanya bisa digunakan pada tabel yang elemennya sudah terurut baik menaik maupun menurun. Sama seperti Binary, teknik ini hanya dapat dilakukan pada kumpulan data yang telah terurut dan berada pada strutur array dan data yang dicari diperkirakan ada di dalam kumpulan data. Teknik ini menemukan item dengan memperkirakan seberapa jauh kemungkinan item berada dari posisi saat itu dan pencarian berikutnya. Teknik ini juga dilakukan pada kumpulan data yang sudah terurut. Rumus umum Interpolation Search bisa dilihat pada persamaan 2.2 Afifah, 2010 : P = ku ci−k] i ] �[ � ]− �[ � ] Posisi = RoundPmax-min + min

2.3 Algoritma prediksi