Dokumen ini membahas tentang berbagai algoritma pencarian dan pengurutan data, seperti sequential search, binary search, insertion sort, merge sort, selection sort, bubble sort, dan quick sort. Metode-metode tersebut digunakan untuk mencari nilai tertentu dalam deretan bilangan yang telah diurutkan terlebih dahulu.
Nama Anggota :
1. Surya Mahardika (1204220016)
2 Johnson Gerald Anderson Teks (1204220036)
3. M. Rayhan Labib Afifi
(1204220094)
4. Muhammad Dzulfiqar (1204220062)
Bab 1 dari kurikulum "Merdeka untuk SMA kelas 1" ini bertujuan untuk mengenalkan konsep dasar tentang berpikir komputasional kepada para siswa. Dalam bab ini, siswa akan diperkenalkan dengan pemikiran komputasional sebagai sebuah pendekatan dalam memecahkan masalah dan memahami dunia sekitar melalui lensa komputasi.
Deskripsi bab ini mencakup beberapa poin utama:
1. **Pengenalan Konsep Berpikir Komputasional**: Bab ini dimulai dengan memperkenalkan apa itu berpikir komputasional dan mengapa hal tersebut penting. Siswa akan memahami bahwa berpikir komputasional bukan hanya tentang penggunaan komputer, tetapi lebih tentang cara berpikir secara sistematis dan logis dalam memecahkan masalah.
2. **Penerapan Berpikir Komputasional dalam Kehidupan Sehari-hari**: Siswa akan diajak untuk memahami bagaimana berpikir komputasional dapat diterapkan dalam berbagai situasi kehidupan sehari-hari, seperti memecahkan masalah matematika, membuat keputusan yang terinformasi, dan mengoptimalkan proses.
3. **Pembelajaran Algoritma**: Bab ini juga akan memperkenalkan konsep dasar tentang algoritma. Siswa akan belajar bahwa algoritma adalah serangkaian langkah-langkah yang didefinisikan secara jelas untuk menyelesaikan masalah tertentu. Mereka akan belajar cara merancang dan menerapkan algoritma sederhana untuk memecahkan masalah.
4. **Pemahaman Tentang Abstraksi dan Pemodelan**: Siswa akan diajak untuk memahami bahwa berpikir komputasional melibatkan kemampuan untuk melakukan abstraksi dan pemodelan, yaitu kemampuan untuk menyederhanakan masalah kompleks menjadi bentuk yang lebih mudah dipahami dan dikelola.
5. **Pengenalan Bahasa Pemrograman**: Meskipun tidak secara mendalam, bab ini akan memberikan pengantar singkat tentang bahasa pemrograman dan bagaimana bahasa tersebut digunakan untuk menerjemahkan ide menjadi instruksi yang dapat dipahami oleh komputer.
Dengan demikian, bab ini bertujuan untuk membantu siswa memperoleh pemahaman dasar tentang konsep berpikir komputasional dan bagaimana hal itu dapat diterapkan dalam kehidupan mereka secara luas. Melalui pembelajaran ini, diharapkan siswa akan dapat mengembangkan keterampilan berpikir kritis, pemecahan masalah, dan pemodelan yang akan berguna dalam berbagai konteks di masa depan.
Bab 1 dari kurikulum "Merdeka untuk SMA kelas 1" ini bertujuan untuk mengenalkan konsep dasar tentang berpikir komputasional kepada para siswa. Dalam bab ini, siswa akan diperkenalkan dengan pemikiran komputasional sebagai sebuah pendekatan dalam memecahkan masalah dan memahami dunia sekitar melalui lensa komputasi.
Deskripsi bab ini mencakup beberapa poin utama:
1. **Pengenalan Konsep Berpikir Komputasional**: Bab ini dimulai dengan memperkenalkan apa itu berpikir komputasional dan mengapa hal tersebut penting. Siswa akan memahami bahwa berpikir komputasional bukan hanya tentang penggunaan komputer, tetapi lebih tentang cara berpikir secara sistematis dan logis dalam memecahkan masalah.
2. **Penerapan Berpikir Komputasional dalam Kehidupan Sehari-hari**: Siswa akan diajak untuk memahami bagaimana berpikir komputasional dapat diterapkan dalam berbagai situasi kehidupan sehari-hari, seperti memecahkan masalah matematika, membuat keputusan yang terinformasi, dan mengoptimalkan proses.
3. **Pembelajaran Algoritma**: Bab ini juga akan memperkenalkan konsep dasar tentang algoritma. Siswa akan belajar bahwa algoritma adalah serangkaian langkah-langkah yang didefinisikan secara jelas untuk menyelesaikan masalah tertentu. Mereka akan belajar cara merancang dan menerapkan algoritma sederhana untuk memecahkan masalah.
4. **Pemahaman Tentang Abstraksi dan Pemodelan**: Siswa akan diajak untuk memahami bahwa berpikir komputasional melibatkan kemampuan untuk melakukan abstraksi dan pemodelan, yaitu kemampuan untuk menyederhanakan masalah kompleks menjadi bentuk yang lebih mudah dipahami dan dikelola.
5. **Pengenalan Bahasa Pemrograman**: Meskipun tidak secara mendalam, bab ini akan memberikan pengantar singkat tentang bahasa pemrograman dan bagaimana bahasa tersebut digunakan untuk menerjemahkan ide menjadi instruksi yang dapat dipahami oleh komputer.
Dengan demikian, bab ini bertujuan untuk membantu siswa memperoleh pemahaman dasar tentang konsep berpikir komputasional dan bagaimana hal itu dapat diterapkan dalam kehidupan mereka secara luas. Melalui pembelajaran ini, diharapkan siswa akan dapat mengembangkan keterampilan berpikir kritis, pemecahan masalah, dan pemodelan yang akan berguna dalam berbagai konteks di masa depan.
Kualitas Data:
• Pentingya Kualitas Data
• Indikator Data Berkualitas
• Manfaat dari Meningkatnya
Kualitas Data
• Tantangan dalam Membangun
Kualitas Data
• Macam Permasalahan dalam
Menjaga Kualitas Data
• Penerapan Datawarehouse
Membangun Data Warehouse:
• jenis dasar sistem Data Warehouse
• Bentuk data warehouse
• Arsitektur Datawarehouse
• Karakterisitik arsitektur Datawarehouse
• Operational Data
Konsep Dasar Data Warehouse:
• Pengertian Data Warehouse
• Istilah-istilah yang berhubungan dengan data warehouse
• Karakteristik Data Warehouse
• Tugas-tugas Data warehouse
• Keuntungan Data Warehouse
Pengantar Data Warehouse:
• Pengertian Data, Informasi dan Database
• Proses Data mining
• Data minning & Business Intelegent
• Manfaat Data minning
• Aplikasi Data Mining
2. Amazing day..
Perbedaan antara kuatir dan melakukan persiapan
dengan baik, persiapan yang baik dilakukan tanpa
ada perasaan takut gagal.
3. • Dalam proses pemrograman serching/pencarian
biasanya digunakan untuk proses update atau
penghapusan data sebelumnya melakukan proses
pencarian data.
• Penyisipan data pada sekumpulan data, jika data
sudah ada maka proses penyisipan tidak
diperkenankan.
• Jika data tidak ada maka proses penyisipan dilakukan
tujuan digunakan agar tidak terjadi duplikasi data
DEFINISI SEARCHING
4. Merupakan algoritma pencarian yang sangat sederhana.
Proses pencarian beruntun adalah proses
membandingkan setiap elemen larik satu per satu secara
beruntun, mulai dari elemen pertama sampai elemen
yang dicari ditemukan dan seluruh elemn sudah
diperiksa.
1. Tehnik Sequential Search / Linier Search
5. • 13 16 14 21 76 21
Nilai yang dicari: 21
Maka elemen yang diperiksa : 13 16 14 21
Index ketemu : 4
Nilai yang dicari: 13
Maka elemen yang diperiksa : 13
Index ketemu : 1
Nilai yang dicari: 15
Maka elemen yang diperiksa : 13 16 14 21 76 21
Index ketemu : 0
6. 1. Algoritma dari proses Pencarian diatas adalah:
2. Tentukan i=1, Ketemu = 0.
3. Masukan Nilai X nilai yang dicari.
4. Jika Nilai[i] <> X maka i=i+1, kembali kelangkah 2.
5. Jika Nilai[i] = X maka Ketemu =i.
6. Jika Ketemu = 0 maka Cetak “nilai X tidak ketemu”
7. Jika tidak (Ketemu <>0)Cetak “nilai X ketemu pada
posisi Ketemu”.
8. Selesai.
7. Algoritma :
1. Low = 1 , High = N
2. Ketika Low <= High Maka kerjakan langkah No .3,
Jika tidak Maka kerjakan langkah No.7
3. Tentukan Mid dengan rumus mid = ( Low + High ) Div 2
4. Jika X < Mid Maka High = Mid –1
5. Jika X > Mid Maka Low = Mid +1
6. Jika X = Mid Maka Nil. Tengah = Nil. Yg
dicari
7. Jika X > High Maka Pencarian GAGAL
2. Tehnik Binary Search
8. Contoh Data:
Misalnya data yang dicari X= 17
Kerjakan dengan menggunakan teknik pencarian data dengan
metode binary search
A[0] A[1] A[2] A[3] A[4] A[5] A[6] A[7] A[8]
3 9 11 12 15 17 23 31 35
9. 1. L= 0 , H= 8
2. 2. Ketika L <= H yaitu 0 <= 8, maka ke langkah 3
3. Tentukan Mid rumus = ( Low + High ) Div 2
Mid =(0+8) div 2
Mid = 8 div 2
Mid = 4 -> data pada index tersebut 15
.:. Data Mid =15 Jika X > Mid ke langkah 5
* Yang dimasukkan kedalam rumus adalah indexnya
A[0] A[1] A[2] A[3] A[4] A[5] A[6] A[7] A[8]
3 9 11 12 15 17 23 31 35
L Mid X H
10. 5. Jika X > Mid Maka Low = Mid +1
17>15, maka L=4+1
L= 5 -> data pada index tersebut 17
.:. Mid = Nil. Yg dicari
11. • Menentukan / mencari elemen max & min.
• Pada Himpunan yg berbentuk array linear.
• Waktu tempuh/time complexity yg digunakan untuk
menyelesaikan pencarian hingga mendapatkan solusi yg
optimal terbagi atas best case,average case dan worst case.
• BEST CASE (Data diurutkan scr naik/ ascending n-1)
• WORST CASE (data diurutkan scr turun/ desc 2n-1)
• AVERAGE CASE(data tersusun scra acak3n/2-1)
3. Tehnik Binary MAXMIN
12. Best Case
• Terjadi jika elemen dalam himpunan disusun secara
increasing (menaik). Dengan perbandingan waktu
n – 1 kali satuan operasi.
• Contoh:
Terdapat himpunan A yang berisi 4 buah bilangan
telah tersusun secara decreasing dengan:
Tentukan/cari bilangan Max & Min serta jumlah
operasi perbandingan yang dilakukan ?
A[0] A[1] A[2] A[3]
2 4 5 10
13. • Untuk masalah tersebut dapat digunakan procedure
STRAIT MAXMIN yang menghasilkan bilangan Min=2
& bilangan Max=10
• Operasi perbandingan data mencari bilangan
MaxMin dari himpunan tersebut (n-1) = 3 kali operasi
perbandingan.
14. Worst Case
• Terjadi jika elemen dalam himpunan disusun secara
decreasing (menurun). Dengan operasi perbandingan
sebanyak 2(n-1) kali satuan operasi.
• Contoh:
Terdapat himpunan A yang berisi 4 buah bilangan
telah tersusun secara decreasing dengan:
Tentukan/cari bilangan Max & Min serta jumlah
operasi perbandingan yang dilakukan ?
A[0] A[1] A[2] A[3]
80 21 6 10
15. • Untuk masalah tersebut dapat digunakan procedure
STRAIT MAXMIN yang menghasilkan bilangan
Max=80 & bilangan Min=10
• Operasi perbandingan data mencari bilangan
MaxMin dari himpunan tersebut 2 (n-1) = 6 kali
operasi perbandingan.
16. Average Case
• Terjadi jika elemen dalam himpunan disusun secara acak .
Dengan operasi perbandingan yang dilakukan adalahrata-rata
waktu tempuh best case & worst case yaitu Τ1
2 [(n-1) + 2(n-1)]
• Contoh:
Terdapat himpunan A yang berisi 4 buah bilangan telah
tersusun secara decreasing dengan:
Tentukan/cari bilangan Max & Min:
1. Berapa elemen MaxMin yang didapatkan ?
2. Berapa jumlah operasi perbandingan yang dilakukan ?
A[0] A[1] A[2] A[3]
5 -4 9 7
17. • Untuk masalah tersebut dapat digunakan procedure
STRAIT MAXMIN yang menghasilkan bilangan Max=9
& bilangan Min=-4
• Operasi perbandingan data mencari bilangan
MaxMin dari himpunan tersebut Τ1
2 [(n-1) + 2(n-1)] =
3.𝑛
2
− 1 kali operasi perbandingan.
•
3.4
2
− 1
•
12
2
− 1
• 5
18.
19.
20. Terdapat urutan bilangan sebagai berikut :
10 4 11 28 12 9 15 2 6
1. Urutkan bilangan tersebut menggunakan
metode :
• Insertion Sort
• Merge Sort
• Selection Sort
• Bubble Sort
• Quick Sort
21. 2. Gunakan Binary Search (hasil dari data
yang telah terurut) untuk mencari :
– Angka 10
– Angka 28
– Angka 2