1 / 38

STRUKTUR DATA

STRUKTUR DATA. PENGANTAR. Bagaimana cara mengatasi masalah implementasi program dengan komputer? Pemahaman masalah secara menyeluruh dan persiapan data Keputusan operasi-operasi yang dilakukan terhadap data

cael
Download Presentation

STRUKTUR DATA

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. STRUKTUR DATA

  2. PENGANTAR • 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

  3. Tipe Data • Tipe data adalahjenis data yang mampuditanganiolehsuatubahasapemrogramanpadakomputer. • Tiap-tiapbahasapemrogramanmemilikitipe data yang memungkinkan: • Deklarasiterhadapvariabeltipe data tersebut • Menyediakankumpulanoperasi yang mungkinterhadapvariabelbertipe data tersebut • Jenisobyek data yang mungkin • Contohtipe data di C? Pascal? • Tipe data sederhanatunggal interger, real, booleandan character • Tipe data sederhanamajemuk  string

  4. Obyek Data • Obyek Data adalahkumpulanelemen yang mungkinuntuksuatutipe data tertentu. • Mis: integer mengacupadaobyek data -32768 s/d 32767, byte 0 s/d 255, string adalahkumpulankaraktermaks 255 huruf

  5. Struktur Data • StrukturData adalahcarapenyimpanandanpengorganisasian data-data padamemorikomputermaupun file secaraefektifsehinggadapatdigunakansecaraefisien, termasukoperasi-operasididalamnya.

  6. Aktivitas Struktur Data • Di dalam struktur data kita berhubungan dengan 2 aktivitas: • Mendeskripsikan kumpulan obyek data yang sah sesuai dengan tipe data yang ada • Menunjukkan mekanisme kerja operasi-operasinya • Contoh: integer (-32768 s/d 32767) dan jenis operasi yang diperbolehkan adalah +, -, *, /, mod, ceil, floor, <, >, != dsb. • Struktur data = obyek data + [operasi manipulasi data]

  7. BentukStruktur Data • Struktur data sederhana • Array (larik) • Record • Struktur data majemuk • Linier • Stack, Queue, dan Linked List • Non Linier • Pohon (Tree) • Pohon Binary (Binary Tree) • Binary Search Tree • General Tree • Graph

  8. TIPE DATA SEDERHANA

  9. TIPE DATA SEDERHANA (SIMPLE - DATA TYPE) • Adalah tipe data yang sudah ada dan dijadikan standar dalam bahasa pemrograman tertentu. • Isi dari tipe data sederhana ini adalah data-data tunggal.

  10. TIPE DATA SEDERHANA (SIMPLE - DATA TYPE) • STANDARD DATA TYPE • INTEGER • REAL • CHAR • STRING • BOOLEAN • USER-DEFINED DATA TYPE • ENUMERATED OR SCALAR TYPE • SUBRANGE TYPE

  11. INTEGERTIPE BILANGAN BULAT

  12. R E A LTIPE BILANGAN PECAHAN

  13. TIPE BILANGAN REAL • Data yang termasuk bilangan real adalah data angka yang mengandung pecahan. • Data yang seperti ini akan memiliki keterangan jangkauan, jumlah digit penting (berarti) dan ukuran. • Digit berarti ini penting diperhatikan karena ini berhubungan dengan tingkat ketelitian data yang disajikan.

  14. TIPE DATA KARAKTER

  15. TIPE DATA BOOLEAN • Adalahtipe data yang hanyabernilaibenar (true) atausalah (false). • Jangkauan (nilai yang mungkin) hanya 2 yaitu true atau false.

  16. String • Rangkaiankarakter yang ditanganisebagai unit data tunggal • Contoh (string literal) : • “ABC, 32fl2. 3h” • “Kucingdalamkarung” • Contoh (variabel string) : • A = “Universitas” • B = “Gunadarma” • Beradadalambentuk array karakter1 dimensi

  17. Jenis String • Fixed-length string (String yang panjangnyatetap) • Mempunyaijumlahtempatkarakter yang tetap yang tersedia (bisadigunakan) untukpenyimpanan data • Variable-length string (String yang panjangnyaberubah-ubah) • Memberi data sejumlahspasi (ruang) sesuai yang iaperlukan

  18. Fixed-length string • Variable-length string

  19. Operasi pada String • Concatenation • Penggabungan dua atau lebih string • Contoh : A = “Universitas” B = “Gunadarma” C = A + B maka C = “UniversitasGunadarma”

  20. OperasipadaString • Substring • Mengambil bagian dari suatu string • Contoh A = “Universitas” B = “Gunadarma” C = Left(A, 3) D = Right(B, 5) E = Substr(A, 4, 5) maka C = “Uni” D = “darma” E = “versi”

  21. USER - DEFINED DATA TYPESUB JANGKAUAN • Tipe sub jangkauanmerupakantipe data yang jangkauannyamerupakansebagiandaritipe data yang lain. • Misalnyauntuktipe byte memilikijangkauandari 0..255, sementarakitahanyamemerlukanangka 1..12 untukmenampung data bulan. Makabisadiciptakansatutipebaru yang merupakan sub jangkauantersebut. • Contoh Type Bulan : 1 .. 12 ;

  22. Array (Larik) • Set item data yang disusunsecarabaikmenjadirangkaiandandiacuatauditunjukolehsatuidentifier • Contoh : Nilai = (56 42 89 65 48) • Item data individual dalam array bisaditunjuksecaraterpisahdenganmenyatakanposisinyadalam array itu • Nilai(1) menunjuk 56 • Nilai(2) menunjuk 42 • Bilangan yang ditulisdalamtandakurungmenandakanposisi item individual dalam array (disebutjugasubscript / indeks)

  23. Array (Larik) • Variabelbisadigunakansebagai subscript, misalnyaNilai(i). • Jikai = 2 makamenunjukkeNilai(2) yaitu 42 • Jikai = 4 makamenunjukkeNilai(4) yaitu 65 • Item data individual dalamsuatu array seringdisebutelemen • Matriks • Array yang hanyaberisibilangandantidakada data alfabetisnya • Klasifikasi Array • Array 1 dimensi • Array multi dimensi

  24. Array Multi Dimensi • Mempunyai elemen-elemen yang disusun ke dalam baris dan kolom dan digunakan sebagai tabel data • Contoh : Nilai ujian dari mahasiswa satu kelas untuk beberapa mata kuliah bisa ditempatkan dalam array 2 dimensi • 44 • 73 • 36 • 86 • 48 51 A =

  25. Penanganan Array • Metodedasarpenanganan array : • Mencarinilaiterbesar • Mencarinilaiterkecil • Menghitungnilai rata-rata • Menghitungnilai total • Menghitungjumlahnilaidibawah rata-rata • Menyortir Array (Sort) • Buble sort • Straight selection sort • Mencari/Meneliti Array (Search) • Linear search

  26. PenangananArray • Contoh : Nilaiujianmahasiswaakandibacadalam array. Kemudianakanditampilkannilaiterbesar, nilaiterkecil, nilai rata-rata, nilai total, danjumlahnilaidibawah rata-rata. • Tahapanpenanganan array • Input nilai data kedalam array • Mengkalkulasinilaiterbesar, terkecil, total, dan rata-rata • Mengkalkulasijumlahnilaidibawah rata-rata • Menampilkanhasilnya (output)

  27. Record • Seperti array 1 dimensi • Terdiridariserangkaian item data yang terkait • Item data berurutan yang adadalam record bisamempunyaijenis yang berbeda • Contoh : Mengorganisasikan 3 item data yang berbedakedalamstruktur data tunggal • NIP : string(8) • Nilai : real • Lulus : boolean

  28. Deklarasi Record mahasiswa : record NIM : string(8) Nilai : real Lulus : boolean end record • Setiapelemenmemilikiidentifier sendiri • Elemendarisuatu record disebutfield

  29. Penunjukankesetiap field darisuatu record bisadilakukandengan : • Notasi “dot” (titik) • Notasi “with” Begin mahasiswa.NIM := ‘51292215’ mahasiswa.Nilai := 90.5 mahasiswa.Lulus := True End Begin with mahasiswa do NIM := ‘51292215’ Nilai := 90.5 Lulus := True end with End

  30. Array Record (Tabel) • Kumpulan duaataulebih record • Deklarasi Array Record Variable Mahasiswa : Array [1..5] of record NIM : string(8) Nilai : real Lulus : boolean End record

  31. Linked List Ahmad does not like cake • Memberikancara yang fleksibeluntukpenanganan item data secaraurut • Perubahanterhadapurutantersebutdapatdicapai (dilakukan) denganperpindahan data yang minimal dankehilanganruangpenyimpanan yang sedikit • Contoh : Kalimat "Ahmad does not like cake" dituliskansebagaisuatu list, sepertiberikut :

  32. Beberapaistilah • Datum : item data dalam list • Pointer : penunjuk yang menyambungkan item data satudengan yang lain • Node / elemen : elemendarisuatu list yang terbentukdari datum dan pointer • Terminator : pointer terakhirdari list • Start pointer : menyatakantempat datum pertama • Free storage pointer : menyatakandimana datum berikutnyabisamengarahataumenuju

  33. Start Pointer Free storage Pointer

  34. Operasi pada List • Deletion : penghapusanelemensuatu list • Ketikaelemensuatu list dihapus, tempatpenyimpanan yang telahdikosongkandapatdigunakanlagi • Insertion : penyisipanelemenkedalamsuatu list • Search : pencarianelemendalamsuatu list

  35. Tree • Struktur data hirarki • Dikonstruksimenggunakanaturanpresedenuntuk item data, • misal: menggunakanrangkaianalfabetataunumerik • BeberapaIstilah : • Node : elemendarisuatu tree • Setiapnodememiliki (sedikitnya) dua pointer yaituleft pointer danright pointer • Root node : datum pertama yang ditempatkandalam tree • Parent node : node yang memilikinode dibawahnya (sub-node) • Child node : node yang beradadibawahparent • Leaf node : node yang tidakmempunyaichild

  36. Contoh : bilangan-bilanganini (56 42 89 65 48) ditempatkankedalam tree • Catatan : • Node paling kiriberisibilanganterkecil • Node paling kananberisibilanganterbesar

  37. 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

More Related