Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

STRUKTUR DATA.

Presentasi serupa


Presentasi berjudul: "STRUKTUR DATA."— Transcript presentasi:

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 adalah jenis data yang mampu ditangani oleh suatu bahasa pemrograman pada komputer. Tiap-tiap bahasa pemrograman memiliki tipe data yang memungkinkan: Deklarasi terhadap variabel tipe data tersebut Menyediakan kumpulan operasi yang mungkin terhadap variabel bertipe data tersebut Jenis obyek data yang mungkin Contoh tipe data di C? Pascal? Tipe data sederhana tunggal  interger, real, boolean dan character Tipe data sederhana majemuk  string

4 Obyek Data Obyek Data adalah kumpulan elemen yang mungkin untuk suatu tipe data tertentu. Mis: integer mengacu pada obyek data s/d , byte 0 s/d 255, string adalah kumpulan karakter maks 255 huruf

5 Struktur Data Struktur Data adalah cara penyimpanan dan pengorganisasian data-data pada memori komputer maupun file secara efektif sehingga dapat digunakan secara efisien, termasuk operasi-operasi di dalamnya.

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 ( s/d 32767) dan jenis operasi yang diperbolehkan adalah +, -, *, /, mod, ceil, floor, <, >, != dsb. Struktur data = obyek data + [operasi manipulasi data]

7 Bentuk Struktur Data Struktur data sederhana Struktur data majemuk
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 INTEGER TIPE BILANGAN BULAT
Nama Tipe Jangkauan Ukuran Memori Shortint -128 … 127 1 byte Byte 0 … 255 Integer … 32767 2 byte Word 0 … 65535 Longint 4 byte

12 R E A L TIPE BILANGAN PECAHAN
Jangkauan Digit Ukuran Single 1,5E ,4E+38 7-8 4 byte Real 2,9E ,7E+38 11-12 6 byte Double 5,0E ,7E+308 15-16 8 byte Extended 1,9E ,1E+4932 19-20 10 byte Comp 9,2E ,2E+18

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 Tipe Keterangan Char
Berisi hanya 1 karakter diapit tanda petik (‘ ‘) String Terdiri dari beberapa karakter (maksimal 255) diapit tanda petik (‘ ‘) String[x] Terdiri dari maksimal x karakter diapit tanda petik (‘ ‘)

15 TIPE DATA BOOLEAN Adalah tipe data yang hanya bernilai benar (true) atau salah (false). Jangkauan (nilai yang mungkin) hanya 2 yaitu true atau false. Tipe Ukuran Boolean 1 byte Bool Wordbool 2 byte LongBool 4 byte

16 String Rangkaian karakter yang ditangani sebagai unit data tunggal
Contoh (string literal) : “ABC, 32fl2. 3h” “Kucing dalam karung” Contoh (variabel string) : A = “Universitas” B = “Gunadarma” Berada dalam bentuk array karakter 1 dimensi

17 Jenis String Fixed-length string (String yang panjangnya tetap)
Mempunyai jumlah tempat karakter yang tetap yang tersedia (bisa digunakan) untuk penyimpanan data Variable-length string (String yang panjangnya berubah-ubah) Memberi data sejumlah spasi (ruang) sesuai yang ia perlukan

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 Operasi pada String 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 TYPE SUB JANGKAUAN
Tipe sub jangkauan merupakan tipe data yang jangkauannya merupakan sebagian dari tipe data yang lain. Misalnya untuk tipe byte memiliki jangkauan dari , sementara kita hanya memerlukan angka untuk menampung data bulan. Maka bisa diciptakan satu tipe baru yang merupakan sub jangkauan tersebut. Contoh Type Bulan : ;

22 Array (Larik) Set item data yang disusun secara baik menjadi rangkaian dan diacu atau ditunjuk oleh satu identifier Contoh : Nilai = ( ) Item data individual dalam array bisa ditunjuk secara terpisah dengan menyatakan posisinya dalam array itu Nilai(1) menunjuk 56 Nilai(2) menunjuk 42 Bilangan yang ditulis dalam tanda kurung menandakan posisi item individual dalam array (disebut juga subscript / indeks)

23 Array (Larik) Variabel bisa digunakan sebagai subscript, misalnya Nilai(i). Jika i = 2 maka menunjuk ke Nilai(2) yaitu 42 Jika i = 4 maka menunjuk ke Nilai(4) yaitu 65 Item data individual dalam suatu array sering disebut elemen Matriks Array yang hanya berisi bilangan dan tidak ada 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 Siswa ke (no. baris) B. Inggris (kolom 1) Matematika (kolom 2) 1 2 3 4 5 A(1,1) = 56 A(2,1) = 89 A(3,1) = 42 A(4,1) = 65 A(5,1) = 48 A(1,2) = 44 A(2,2) = 73 A(3,2) = 36 A(4,2) = 86 A(5,2) = 51 44 73 36 86 48 51 A =

25 Penanganan Array Metode dasar penanganan array :
Mencari nilai terbesar Mencari nilai terkecil Menghitung nilai rata-rata Menghitung nilai total Menghitung jumlah nilai di bawah rata-rata Menyortir Array (Sort) Buble sort Straight selection sort Mencari/Meneliti Array (Search) Linear search

26 Penanganan Array Contoh : Nilai ujian mahasiswa akan dibaca dalam array. Kemudian akan ditampilkan nilai terbesar, nilai terkecil, nilai rata-rata, nilai total, dan jumlah nilai di bawah rata-rata. Tahapan penanganan array Input nilai data ke dalam array Mengkalkulasi nilai terbesar, terkecil, total, dan rata- rata Mengkalkulasi jumlah nilai di bawah rata-rata Menampilkan hasilnya (output)

27 Record Seperti array 1 dimensi
Terdiri dari serangkaian item data yang terkait Item data berurutan yang ada dalam record bisa mempunyai jenis yang berbeda Contoh : Mengorganisasikan 3 item data yang berbeda ke dalam struktur data tunggal NIP : string(8) Nilai : real Lulus : boolean

28 Deklarasi Record Setiap elemen memiliki identifier sendiri
mahasiswa : record NIM : string(8) Nilai : real Lulus : boolean end record Setiap elemen memiliki identifier sendiri Elemen dari suatu record disebut field

29 Penunjukan ke setiap field dari suatu record bisa dilakukan dengan :
Notasi “dot” (titik) Notasi “with” Begin mahasiswa.NIM := ‘ ’ mahasiswa.Nilai := 90.5 mahasiswa.Lulus := True End Begin with mahasiswa do NIM := ‘ ’ Nilai := 90.5 Lulus := True end with End

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

31 Linked List Memberikan cara yang fleksibel untuk penanganan item data secara urut Perubahan terhadap urutan tersebut dapat dicapai (dilakukan) dengan perpindahan data yang minimal dan kehilangan ruang penyimpanan yang sedikit Contoh : Kalimat "Ahmad does not like cake" dituliskan sebagai suatu list, seperti berikut : Ahmad does not like cake

32 Beberapa istilah Datum : item data dalam list
Pointer : penunjuk yang menyambungkan item data satu dengan yang lain Node / elemen : elemen dari suatu list yang terbentuk dari datum dan pointer Terminator : pointer terakhir dari list Start pointer : menyatakan tempat datum pertama Free storage pointer : menyatakan di mana datum berikutnya bisa mengarah atau menuju

33 Row Number Datum Pointer to Next Datum Comment 1 “Ahmad” 2 Next datum is in row 2 “does” 3 Next datum is in row 3 “not” 4 Next datum is in row 4 “like” 5 Next datum is in row 5 “cake” -1 Last datum; -1 is a terminator 6 7 8 Start Pointer Free storage Pointer

34 Operasi pada List Deletion : penghapusan elemen suatu list
Ketika elemen suatu list dihapus, tempat penyimpanan yang telah dikosongkan dapat digunakan lagi Insertion : penyisipan elemen ke dalam suatu list Search : pencarian elemen dalam suatu list

35 Tree Struktur data hirarki
Dikonstruksi menggunakan aturan preseden untuk item data, misal : menggunakan rangkaian alfabet atau numerik Beberapa Istilah : Node : elemen dari suatu tree Setiap node memiliki (sedikitnya) dua pointer yaitu left pointer dan right pointer Root node : datum pertama yang ditempatkan dalam tree Parent node : node yang memiliki node di bawahnya (sub- node) Child node : node yang berada di bawah parent Leaf node : node yang tidak mempunyai child

36 Contoh : bilangan-bilangan ini (56 42 89 65 48) ditempatkan ke dalam tree
Catatan : Node paling kiri berisi bilangan terkecil Node paling kanan berisi bilangan terbesar

37

38 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


Download ppt "STRUKTUR DATA."

Presentasi serupa


Iklan oleh Google