Transcript 2 StrukData

Adalah :Suatu koleksi kumpulan item data yang terorganisasi dan
dianggap sebagai suatu unit yang dapat dicirikan oleh organisasi serta
operasi yang didefinisikan terhadapnya.
Kategori Data
A. Data Type (tipe Data) :
• Data Sederhana : Integer, real, Boolean dan Karakter
• Data Campuran / Majemuk : String.
B. Struktur Data
• Struktur data sederhana : Array (larik) & record.
• Struktur data campuran / majemuk :
• Linier : stack, queue, linier link list
• Non linier : Binary tree, Binary Search Tree, Graph, dll.
Integer
• merupakan anggota himpunan {…,-(n+1), -n, …,-2,-1,0,1,2,…,n,n+1,…}
• Operasi-operasi dasar : +, - , X ,  , pangkat, dsb.
• Masing-masing operator bekerja pada sepasang integer (operand)
disebut Binary operator. Kalau pada 1 operand disebut Unary operator
(contoh : Negasi)
Real
• Data numerik yang tidak termasuk integer
• menggunakan titk desimal (koma desimal)
• dalam sistem komputer memakai floating point
Boolean
• disebut data Logical
• elemennya mempunyai nilai salah satu dari TRUE atau FALSE
• Operator :
• Logika : not, or, and
• Relasional : >,<,>=,<=, <>, dan =
KARAKTER & STRING
• Terdiri dari himpunan bilangan, abjad, dan simbol-simbol khusus
sehingga berjenis data campuran
• karakter yang digunakan untuk membentuk string : Alphabet
• dalam penulisannya berada dalam tanda Aposthrope (“..”)
• contoh : himpunan alphabet A = {C,D,1}, string yang dapat dibentuk
adalah “CD1”, “CDD”, “DDC”, CDC1”,…..dsb, termasuk null string
Adalah : suatu himpunan hingga elemen yang terurut dan homogen
Array dapat dikelompokkan menjadi :
• dimensi Satu (contoh : Nilai_test=(56 42 89 65 48)
• multi dimensi contoh
array Gunadarma
Gunadarma(1:2,1:2,1:5)={Gunadarma(I,j,k)}
ARRAY BERDIMENSI SATU
• Berbentuk paling sederhana
• mempunyai elemen yang disebut Item data individual
• mempunyai index yang menyatakan posisinya dalam urutan. Biasanya
ditunjukkan oleh angka dalam kurung disebut Subscript
• Bila ada array A(L:U) berarti array A mempunyai batas bawah L dan Batas atas U
sehingga rangenya menjadi U-L+1
• contoh pendeklarasian array dengan program pascal serta memasukkan
datanya :
Program input_nilai
Var
nilai_mahasiswa : array[1..100] of integer;
i,jumlah
: integer;
Begin
write(‘Jumlah Mahasiswa : ‘);readln(jumlah);
for i := 1 to jumlah do
begin
write(‘Nilai Mahasiswa ke,’,i,’=‘); readln(nilai_mahasiswa[i]);
writeln(‘Nilai Mahasiswa ke,’,i,’=‘, nilai_mahasiswa[i]);
end;
end.
• Merupakan array yang elemen-elemennya merupakan array pula.
• Array dua dimensi merupakan contoh array multi dimensi.
• Matriks dapat mewakili array 2 dimensi
• suatu array B(1:M, 1:N)={B(I,J)} mempunyai elemen I =1, 2, ….,M dan J = 1,2,…,N
atau mempunyai range MXN.
Menyortir Array
• menyusun array ke dalam suatu urutan tertentu.
• Biasanya didasarkan pada urutan numerik / alphabetis dari datanya.
• Contoh Nilai_test = (56 42 89 65 48) disortir menjadi : Nilai_test = (42 48 56 65 89)
• metode yang biasa digunakan adalah straight Insertion sort
Mencari / Meneliti suatu larik
• metodenya dikenal dengan Linier search
• meneliti setiap elemen array satu demi satu hingga ditemukan
• pencarian akan lebih cepat jika array telah di sortir.
Adalah : barisan hingga simbol yang diambil dari himpunan hingga karakter yang
ditangani sebagai suatu unit data tunggal.
Contoh
“ABC”, “THE CAT SAT ON THE MAT” adalah string literal
jika dibentuk dari himpunan {0,1} disebut bit string
• dalam bahasa BASIC semua identifier string memiliki tanda $
• 3 operasi utama dalam string:
1. LENGTH : operasi untuk mencari panjang suatu string.
Contoh : jika terdapat string S = “a1a2a3…….an” maka LENGTH (S) =N
2. SUBSTRING : operasi untuk membuat string baru dengan cara mengambil
beberapa karakter berurutan dari suatu string yang diketahui.
Contoh : SUBSTR(S,i,j) dimana S = string yang diketahui
i = posisi awal substring, 0<=i<=LENGTH(S)
j = banyak karakter yang diambil, 0<=i<=LENGTH(S)
i dan j adalah integer
3. CONCATENATION : penggabungan 2 buah string yang menghasilkan sebuah
string baru.
Notasi : CONCAT(S1,S2)
misal : S1 =“a1a2a3…an” dan S2 =“b1b2b3…bm”
CONCAT(S1,S2) = “a1a2a3…anb1b2b3…bm”
Penanganan String
• Notasi penanganan String
1. Posisi karakter dalam string diberi nomor sesuai urutannya seperti pada array
2. Substring ditunjukkan dengan menyatakan posisi karakter pertama dan terakhir
dengan pemisah ‘ : ’
• Fixed Length string, string yang panjangnya tetap contoh : NPM mahasiswa
• Variable length string, string yang panjangnya berubah-ubah. Contoh : alamat
Himpunan / koleksi satuan data yang mempunyai tipe data
heterogen
Contoh : terdapat struktur data tunggal
Nomor_calon : integer
•2 cara untuk menandai record
Nama_calon : string
Nilai_rata
1. Dengan notasi DOT (.)
: real
calon.nomor_calon :=1209
didefinisikan dalam bentuk Record
sebagai berikut :
calon := record
Nomor_calon : integer
Nama_calon : string
Nilai_rata
endrecord
•Elemen dari record disebut FIELD
: real
2. Dengan notasi WITH
With Calon do
Nomor_calon :=1209
endwith
LARIK RECORD (TABEL)
nama_record : array[tipe indeks] of
tipe data
Suatu struktur data yang merupakan himpunan terurut
Contoh :
ALEX DOES NOT LIKE CAKE, ditulis sebagai suatu LIST, sbb :
ALEX
Start
pointer
DOES
pointer
NOT
Elemen
(node)
LIKE
DATUM
CAKE
Terminator
DEKLARASI DATA DARI LIST YANG DISIMPAN PADA ARRAY RECORD
Row Number
Start Pointer
1
1
2
3
4
5
Free storage
pointer
6
6
Datum
Pointer to
Next Datum
Comment
“ALEX”
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”
6
last datum : -1
is a terminator
7
Empty
Merupakan Struktur data hirarkis yang dikonstruksi dengan aturan preseden untuk
item datanya. Misal : dengan menggunakan rangkaian alphabetis atau numerik.
• Elemen dari suatu tree disebut node
• sebuah elemen memiliki sebuah datum dan 2 pointer
• contoh : bilangan-bilangan (56, 42, 89, 65,48) ditempatkan dalam tree sebagai
berikut :
Start
Parent node/root node

-1
42

-1
48
-1
56

-1

89
65
-1
-1