Dasar-Dasar Struktur Data dan Algoritma

Sep 10, 2024

Catatan Kuliah: Struktur Data dan Algoritma Dasar

Sambutan

  • Diharapkan semua dalam keadaan sehat, doa untuk teman yang sakit.
  • Pembahasan: Struktur Data dan Algoritma Dasar.

Struktur Data

Pengertian

  • Struktur Data: Cara menyimpan dan mengorganisir data di komputer.
    • Data bisa berupa angka, teks, gambar, suara.
    • Memudahkan pencarian, pengolahan, dan pemanfaatan data.

Pentingnya Struktur Data

  • Efisiensi: Mempercepat akses dan pemrosesan data.
  • Ketepatan: Menjamin akurasi dan konsistensi data.
  • Keamanan: Melindungi data dari akses tidak sah.

Jenis-jenis Struktur Data

  • Array: Kumpulan data tipe yang sama, mudah diakses secara acak.
  • Daftar: Kumpulan data tanpa urutan tertentu, mudah untuk memasukkan dan menghapus.
  • Tumpukan/Stack: Data terakhir masuk, pertama keluar.
  • Antrian/Queue: Data pertama masuk, pertama keluar.
  • Pohon/Tree: Struktur hirarki, sering digunakan untuk struktur organisasi.
  • Graph: Struktur hubungan antar elemen, digunakan untuk masalah rute terpendek.

Mempelajari Struktur Data di SMA

  • Memahami cara kerja komputer dan mengembangkan program yang efisien.
  • Memilih struktur data yang tepat untuk masalah tertentu.
  • Menganalisis dan mengoptimalkan performa program.

Algoritma Dasar

Pengertian

  • Algoritma: Urutan langkah logis untuk menyelesaikan masalah.
    • Harus jelas, terdefinisi, dan dapat diulang.
    • Seperti resep untuk menyelesaikan masalah secara sistematis.

Contoh Algoritma Dasar

  • Membuat Teh
    1. Masukkan air ke panci.
    2. Nyalakan kompor.
    3. Tunggu hingga mendidih.
    4. Masukkan teh.
    5. Aduk, tuang ke cangkir, tambah gula dan susu.

Jenis-jenis Algoritma Pencarian

  • Pencarian Sekuensial: Menjelajahi elemen satu per satu.
  • Pencarian Biner: Membagi daftar menjadi dua hingga menemukan elemen.
  • Pencocokan Pola: Mencari pola dalam teks atau data lain.

Algoritma Pengurutan

  • Bubble Sort: Bandingkan elemen berdekatan dan tukar jika salah.
  • Selection Sort: Cari elemen terkecil/terbesar dan tukar.
  • Insertion Sort: Sisipkan elemen ke daftar yang terurut.

Algoritma Struktur Data

  • Penambahan pada array, penghapusan dari daftar.
  • Pencarian pada pohon, mengitung faktorial.

Algoritma Rekursif dan Divide and Conquer

  • Faktorial: Menghitung faktorial dengan rekursif.
  • Merge Sort dan Quick Sort: Membagi dan mengurutkan bagian daftar.

Sifat-sifat Algoritma yang Baik

  • Jelas, terdefinisi, terstruktur, terbatas, umum, dan efisien.

Mempelajari Algoritma di SMA

  • Menganalisis dan menyelesaikan masalah.
  • Merancang dan mengimplementasikan algoritma.
  • Memahami dan mengoptimalkan performa algoritma.

Kesimpulan

  • Pentingnya Struktur Data dan Algoritma: Fundamental untuk memahami cara kerja komputer dan mengembangkan program.
  • Contoh Penerapan: Pencarian kontak, rekomendasi produk, rute navigasi, sistem antrian, dan permainan komputer.

Penutup

  • Semangat belajar dan beraktivitas.
  • Doa dan salam penutup.