Struktur Data

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. Stuktur data bias juga didefinisikan Kelompok item data yang terorganisasi yang dianggap sebagai suatu unit. Disebut juga sebagai jenis data kompleks (complex data type) atau data aggregates

Struktur data dibagi menjadi 2, yaitu:
1. Sederhana : Array, Record
2. Majemuk :
- Linier : Linier Linked List, Stack, Queue
- Non Linier : Binary Tree, Binary Search Tree, General Tree, Tree, Graf
Pemakaian struktur data yang tepat di dalam proses pemrograman akan menghasilkan algoritma yang lebih jelas dan tepat, sehingga menjadikan program secara keseluruhan lebih efisien dan sederhana.

Array (Larik)
Ø  Set item data yang disusun secara baik menjadi rangkaian dan diacu atau ditunjuk oleh satu identifier
Contoh : Nilai = (56 42 89 65 48)
Ø  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)
Ø  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
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











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

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
Ø  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












Operasi pada String
Ø  Concatenation
Penggabungan dua atau lebih string
Contoh :
A = “Universitas”
B = “Gunadarma”
C = A + B
maka
C = “UniversitasGunadarma”
Ø  Substring
Mengambil bagian dari suatu stringContoh A = “Universitas”
B = “Gunadarma”
C = Left(A, 3)
D = Right(B, 5)
E = Substr(A, 4, 5)
Maka
C = “Uni”
D = “darma”
E = “versi”

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
Ø  Setiap elemen memiliki identifier sendiri
Ø  Elemen dari suatu record disebut field
Ø  Array Record (Tabel)
·         Kumpulan dua atau lebih record
·         Deklarasi Array Record
Variable
Mahasiswa : Array [1..5] of record
NIP : string(8)
Nilai : real
Lulus : boolean
End record

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 :




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

Deklarasi List
List dapat dideklarasikan sebagai sebuah array record
Variable
kalimat : Array [1..7] of record
Datum : string
Next : integer
End record












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

Tree
Struktur data hirarki
Dikonstruksi menggunakan aturan preseden untuk item data, misal : menggunakan rangkaian alphabet 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
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











Sumber :
http://maranugraha.staff.gunadarma.ac.id/Downloads/files/30783/Struktur+Data+1.pdf

Tidak ada komentar:

Posting Komentar

Standard Internasional ISO 27001 dan Manfaat Keamanan Informasi Informasi sebagai Aset Penting Informasi adalah salah satu aset pen...