Struktur
Data
PUTRAMA ALKHAIRI, M.KOM
Materi Kuliah :
◦ Pengantar Struktur Data
◦ Review Struct/Record dan Array
◦ List
◦ Stack
◦ Queue
◦ Tree
Penilaian :
Tgs : 15 %, Kuis = 20%, UTS = 30%, UAS = 35%
Bagaimana cara mengatasi masalah
implementasi program dengan
komputer?
◦ Pemahaman masalah secara menyeluruh dan persiapan data
◦ Keputusan operasi-operasi yang dilakukan terhadap data
◦ Penyimpanan data-data pada memori sehingga tersimpan dan terstruktur secara logis,
operasinya efisien
◦ Pengambilan keputusan terhadap bahasa pemrograman mana yang paling cocok untuk
jenis data yang ada
PROGRAM
ALGORITMA STRUKTUR DATA
?
Algoritma …..
deskripsi langkah-langkah penyelesaian masalah yang tersusun secara logis
Ciri algoritma yang baik menurut Donald E.Knuth:
1. Input: ada minimal 0 input atau lebih
2. Ouput: ada minimal 1 output atau lebih
3. Definite: ada kejelasan apa yang dilakukan
4. Efective: langkah yang dikerjakan harus efektif
5. erminate: langkah harus dapat berhenti (stop) secara jelas
Contoh Algoritma …..
•Mencari nilai maksimum
•Mengurutkan data
•Mencetak bilangan ganjil dari 1 – 19
•Menyimpan data mahasiswa baru
•Mencetak data absensi
•…
Contoh Algoritma mencetak
bilangan ganjil dari 1-19
1.Dimulai dari nilai 1
2.Seleksi apakah nilai tersebut ganjil (syarat : jika habis di bagi 2)
3.Jika ganjil maka lakukan pencetakan, jika tidak maka ke tahap berikutnya
4.Nilai di tambah satu
5.Seleksi apakah nilai sudah sampai dengan 20, jika belum ulangi langkah 2, jika sudah maka stop
Struktur Data …..
model logika/matematik yang secara
khusus mengorganisasi data
Contoh Struktur Data …..
•Struktur Data Statis – array/larik ,
rekord, himpunan.
•Struktur Data Dinamis - list, queue,
stack, tree, graph.
Contoh Struktur Data …..
1 7 18 03 69 24 08 70
1 2 3 4 5 6 7 8
Array A satu dimensi :
8 indeks (1 s/d 8) dan data 1, 7, 18 dst.
Contoh Struktur Data …..
1 8 0 3 6 9
2 4 0 8 7 0
1
Ar ra y B dua di me ns i (ma tr ik s ) :
- j uml a h ba ri s 2 , k ol om 3
- d a ta 1 8 , 0 3 , 6 9 , 2 4 , 08 , 7 0 .
2
1 2 3
List Berkait / Senarai
Stack
69
03
<< TO P
18
Tu mpu kan deng an tig a data
( 18, 03, dan 69 yang mer upakan
po sisi terakhir / TO P )
Queue
Tree
A
B C D
E F
Pohon dengan akar A
Operasi Pada Struktur Data
•Traversal (Traversing) : mengunjungi setiap elemen SD
•Pencarian (Searching) : menemukan elemen/lokasi
pada SD
•Penyisipan (Inserting) : menambah elemen baru
pada SD
•Penghapusan (Deleting) : menghapus elemen dari SD
Mengapa perlu SD
Mengenal bentuk organisasi penyimpanan data dan
pengoperasiannya.
Menentukan kualitas informasi : akurat, tepat pada
waktunya dan relevan. Informasi dapat dikatakan bernilai
bila manfaatnya lebih efektif dibandingkan dengan biaya
mendapatkannya.
Mengurangi duplikasi data (data redudancy)
Hubungan data dapat ditingkatkan (data relatability)
Mengurangi pemborosan tempat simpanan luar
Your best quote that reflects your
approach… “It’s one small step for
man, one giant leap for mankind.”
PUTRAMA ALKHAIRI

Modul pertemuan 1Struktur Data pertemuan 1.pptx

  • 1.
  • 2.
    Materi Kuliah : ◦Pengantar Struktur Data ◦ Review Struct/Record dan Array ◦ List ◦ Stack ◦ Queue ◦ Tree Penilaian : Tgs : 15 %, Kuis = 20%, UTS = 30%, UAS = 35%
  • 3.
    Bagaimana cara mengatasimasalah implementasi program dengan komputer? ◦ Pemahaman masalah secara menyeluruh dan persiapan data ◦ Keputusan operasi-operasi yang dilakukan terhadap data ◦ Penyimpanan data-data pada memori sehingga tersimpan dan terstruktur secara logis, operasinya efisien ◦ Pengambilan keputusan terhadap bahasa pemrograman mana yang paling cocok untuk jenis data yang ada
  • 4.
  • 5.
    Algoritma ….. deskripsi langkah-langkahpenyelesaian masalah yang tersusun secara logis Ciri algoritma yang baik menurut Donald E.Knuth: 1. Input: ada minimal 0 input atau lebih 2. Ouput: ada minimal 1 output atau lebih 3. Definite: ada kejelasan apa yang dilakukan 4. Efective: langkah yang dikerjakan harus efektif 5. erminate: langkah harus dapat berhenti (stop) secara jelas
  • 6.
    Contoh Algoritma ….. •Mencarinilai maksimum •Mengurutkan data •Mencetak bilangan ganjil dari 1 – 19 •Menyimpan data mahasiswa baru •Mencetak data absensi •…
  • 7.
    Contoh Algoritma mencetak bilanganganjil dari 1-19 1.Dimulai dari nilai 1 2.Seleksi apakah nilai tersebut ganjil (syarat : jika habis di bagi 2) 3.Jika ganjil maka lakukan pencetakan, jika tidak maka ke tahap berikutnya 4.Nilai di tambah satu 5.Seleksi apakah nilai sudah sampai dengan 20, jika belum ulangi langkah 2, jika sudah maka stop
  • 8.
    Struktur Data ….. modellogika/matematik yang secara khusus mengorganisasi data
  • 9.
    Contoh Struktur Data….. •Struktur Data Statis – array/larik , rekord, himpunan. •Struktur Data Dinamis - list, queue, stack, tree, graph.
  • 10.
    Contoh Struktur Data….. 1 7 18 03 69 24 08 70 1 2 3 4 5 6 7 8 Array A satu dimensi : 8 indeks (1 s/d 8) dan data 1, 7, 18 dst.
  • 11.
    Contoh Struktur Data….. 1 8 0 3 6 9 2 4 0 8 7 0 1 Ar ra y B dua di me ns i (ma tr ik s ) : - j uml a h ba ri s 2 , k ol om 3 - d a ta 1 8 , 0 3 , 6 9 , 2 4 , 08 , 7 0 . 2 1 2 3
  • 12.
  • 13.
    Stack 69 03 << TO P 18 Tumpu kan deng an tig a data ( 18, 03, dan 69 yang mer upakan po sisi terakhir / TO P )
  • 14.
  • 15.
    Tree A B C D EF Pohon dengan akar A
  • 16.
    Operasi Pada StrukturData •Traversal (Traversing) : mengunjungi setiap elemen SD •Pencarian (Searching) : menemukan elemen/lokasi pada SD •Penyisipan (Inserting) : menambah elemen baru pada SD •Penghapusan (Deleting) : menghapus elemen dari SD
  • 17.
    Mengapa perlu SD Mengenalbentuk organisasi penyimpanan data dan pengoperasiannya. Menentukan kualitas informasi : akurat, tepat pada waktunya dan relevan. Informasi dapat dikatakan bernilai bila manfaatnya lebih efektif dibandingkan dengan biaya mendapatkannya. Mengurangi duplikasi data (data redudancy) Hubungan data dapat ditingkatkan (data relatability) Mengurangi pemborosan tempat simpanan luar
  • 18.
    Your best quotethat reflects your approach… “It’s one small step for man, one giant leap for mankind.” PUTRAMA ALKHAIRI

Editor's Notes

  • #5 Algoritma: sederetan langkah-langkah logis yang disusun secara sistematis untuk memecahkan suatu masalah. Disebut Logis karena setiap langkah bisa diketahui dengan pasti. Algoritma lebih merupakan alur pemikiran untuk menyelesaikan suatu pekerjaan atau suatu masalah. Ciri Ciri Algoritma 1. Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas. 2. Setiap langkah harus didefinisikan dengan tepat dan tidak berarti-dua (Ambiguitas). 4. Algoritma memiliki nol atau lebih masukkan. 5. Algoritma memiliki satu atau lebih keluaran. Algoritma harus efektif (setiap langkah harus sederhana sehingga dapat dikerjakan dalam waktu yang masuk akal).
  • #8 Struktur data adalah cara menyimpan atau merepresentasikan data di dalam komputer agar bisa dipakai secara efisien Sedangkan data adalah representasi dari fakta dunia nyata. Fakta atau keterangan tentang kenyataan yang disimpan, direkam atau direpresentasikan dalam bentuk tulisan, suara, gambar, sinyal atau simbol
  • #9 Array adalah kumpulan data-data beripe sama dan menggunakan nama yang sama. Dengan menggunakan array, sejumlah variabel dapat memakai nama yang sama. Antara satu variable dengan variabel yang lain di dalam array dibedakan berdasarkan subscript. Sebuah subscript berupa bilangan didalam tanda kurung siku. Melalui subscript inilah masing-masing elemen array dapat diakses. Nilai subscribe pertama secara default adalah 0. Array dapat berupa array 1 dimensi, 2 dimensi bahkan n-dimensi. Suatu array dikatakan sebagai array1 dimensi, 2 dimensi, n-dimensi berdasarkan banyaknya petuntuk/posisi.
  • #10 Array adalah kumpulan data-data beripe sama dan menggunakan nama yang sama. Dengan menggunakan array, sejumlah variabel dapat memakai nama yang sama. Antara satu variable dengan variabel yang lain di dalam array dibedakan berdasarkan subscript. Sebuah subscript berupa bilangan didalam tanda kurung siku. Melalui subscript inilah masing-masing elemen array dapat diakses. Nilai subscribe pertama secara default adalah 0. Array dapat berupa array 1 dimensi, 2 dimensi bahkan n-dimensi. Suatu array dikatakan sebagai array1 dimensi, 2 dimensi, n-dimensi berdasarkan banyaknya petuntuk/posisi.
  • #11 Array adalah kumpulan data-data beripe sama dan menggunakan nama yang sama. Dengan menggunakan array, sejumlah variabel dapat memakai nama yang sama. Antara satu variable dengan variabel yang lain di dalam array dibedakan berdasarkan subscript. Sebuah subscript berupa bilangan didalam tanda kurung siku. Melalui subscript inilah masing-masing elemen array dapat diakses. Nilai subscribe pertama secara default adalah 0. Array dapat berupa array 1 dimensi, 2 dimensi bahkan n-dimensi. Suatu array dikatakan sebagai array1 dimensi, 2 dimensi, n-dimensi berdasarkan banyaknya petuntuk/posisi.
  • #12 Salah satu bentuk struktur data yang berisi kumpulan data yang tersusun secara sekuensial, saling bersambungan, dinamis dan terbatas adalah senarai berkait (linked list). Suatu senarai berkait (linked list) adalah suatu simpul (node) yang dikaitkan dengan simpul yang lain dalam suatu urutan tertentu. Suatu simpul dapat berbentuk suatu struktur atau class. Simpul harus mempunyai satu atau lebih elemen struktur atau class yang berisi data. Secara teori, linked list adalah sejumlah node yang dihubungkan secara linier dengan bantuan pointer. Dikatakan single (singly) linked apabila hanya ada satu pointer yang menghubungkan setiap node. single artinya field pointer-nya hanya satu buah saja dan satu arah. Senarai berkait adalah struktur data yang paling dasar. Senarai berkait terdiri atas sejumlah unsur-unsur dikelompokkan, atau terhubung, bersama-sama di suatu deret yang spesifik. Senarai berkait bermanfaat di dalam memelihara koleksi-koleksi data, yang serupa dengan array/larik yang sering digunakan.
  • #13 Stack adalah sebuah kumpulan data dimana data yang diletakkan di atas data yang lain. Dengan demikian stack adalah struktur data yang menggunakan konsep LIFO. Dengan demikian, elemen terakhir yang disimpan dalam stack menjadi elemen pertama yang diambil. Dalam proses komputasi, untuk meletakkan sebuah elemen pada bagian atas dari stack, maka kita melakukan push. Dan untuk memindahkan dari tempat yang atas tersebut, kita melakukan pop. Ada beberapa cara untuk menyajikan sebuah stack tergantung pada permasalahan yang akan kita selesaikan. Dalam bab ini kita akan menggunakan cara yang paling sederhana, tipe data yang sudah kita kenal, yaitu array.
  • #14 Queue atau Antrian merupakan kumpulan elemen dengan dengan penyisipan dan penghapusan elemen yang dilakukan dari sisi / gerbang yang berbeda. Penyisipan dilakukan dari gerbang belakang dan penghapusan dilakukan dari gerbang depan. Hal ini menunjukkan bahwa untuk Queue mempunyai 2 gerbang yaitu gerbang depan dan gerbang belakang. Dengan demikian dapat dilihat bahwa Queue mempunyai sifat FIFO (First In First Out), yaitu elemen yang pertama masuk akan keluar pertama juga.
  • #15 Pohon (tree) adalah salah satu bentuk graph terhubung yang tidak mengandung sirkuit. Karena merupakan graph terhubung, maka pada pohon selalu terdapat path atau jalur yang menghubungkan setiap dua simpul dalam pohon. Struktur pohon adalah suatu cara merepresentasikan suatu struktur hirarki (one-to-many) secara grafis yang mirip sebuah pohon, walaupun pohon tersebut hanya tampak sebagai kumpulan node-node dari atas ke bawah. Suatu struktur data yang tidak linier yang menggambarkan hubungan yang hirarkis (one-to-many) dan tidak linier antara elemen-elemennya.
  • #16 Pohon (tree) adalah salah satu bentuk graph terhubung yang tidak mengandung sirkuit. Karena merupakan graph terhubung, maka pada pohon selalu terdapat path atau jalur yang menghubungkan setiap dua simpul dalam pohon. Struktur pohon adalah suatu cara merepresentasikan suatu struktur hirarki (one-to-many) secara grafis yang mirip sebuah pohon, walaupun pohon tersebut hanya tampak sebagai kumpulan node-node dari atas ke bawah. Suatu struktur data yang tidak linier yang menggambarkan hubungan yang hirarkis (one-to-many) dan tidak linier antara elemen-elemennya.
  • #17 SD (Secure Digital) adalah format kartu memori yang digunakan untuk menyimpan data digital. Format ini dikembangkan oleh SD Association dan banyak digunakan pada perangkat seperti: Kamera digital Smartphone Tablet Laptop (melalui slot SD card) Konsol game Drone dan perangkat IoT lainnya Jenis-jenis SD Card: SD (Standard Capacity) – hingga 2 GB SDHC (High Capacity) – lebih dari 2 GB hingga 32 GB SDXC (Extended Capacity) – lebih dari 32 GB hingga 2 TB SDUC (Ultra Capacity) – lebih dari 2 TB hingga 128 TB (masih jarang digunakan)