download

Matakuliah
Tahun
Versi
: T0026/Struktur Data
: 2005
: 1/1
Pertemuan 5
Abstract Data Type (ADT)
1
Learning Outcomes
Pada akhir pertemuan ini, diharapkan mahasiswa
akan mampu :
• Mahasiswa dapat merumuskan Abstrak
data type sederhana
2
Outline Materi
•
•
•
•
•
Built-in data type
Pengertian ADT
Key-word pembentuk ADT
Manfaat ADT
Contoh program ADT
3
Tipe Data Abstrak (TDA)
• Spesifikasi obyek dan operasi terpisah
dari representasi obyek dan implementasi
operasi
• Bahasa C : tipe data native (int, float dll)
• Bahasa C : TDA direpresentasikan dgn
tipe data native (array, struct, LL dll)
• C++ : class
4
Contoh TDA
Natural_Number
• Spesifikasi obyek : integer dari 0 –
INT_MAX
• Spesifikasi operasi : Zero(), Is_Zero(x),
Equal(x,y), Add(x,y), Substract (x,y),
successor(x)
• Implementasi ?
5
Macam fungsi
• Creator / constructor, mis. Zero()
• Transformer, mis. add(x,y), substract(x,y),
successor(x)
• Reporter, mis.Is_Zero(x), Equal(x,y)
6
TDA Polinomial
• Contoh polinomial : A(x) = 3x2 + 2x + 4
• Bentuk umum polinomial :
A(x) = a0 x0 + a1 x1 + a2 x2 + …
=
• Operasi :
i
a
x
i
i
add, subtract, multiply dll.
7
TDA Ordered List
• Menggunakan array untuk implementasi
• Contoh ordered list :
– Nama hari = {minggu, senin, selasa, rabu, …}
– Nilai kartu = {As, 2, 3, …, 9, 10, J, Q, K}
– Operasi :
•
•
•
•
Panjang list
Baca elemen list
Ambil nilai elemen list
Ubah nilai elemen list
Insert nilai di indeks i &
geser elemen
Hapus elemen i &
geser elemen
8
Representasi :
struct {
int degree;
float coef[MAX_DEGREE];
} polynomial;
9