STRUKTUR DATA - 3 SKS - 2011

Report
PERTEMUAN KE-1
Mata Kuliah
STRUKTUR DATA
• SKS : 3
• Penilaian: Tugas-Tugas, UTS, UAS
• Kehadiran, dll: Peraturan Akademik
REFERENSI
1. PENGANTAR STRUKTUR DATA, D. Suryadi
H.S., Penerbit Gunadarma, 1991
2. PENGANTAR STRUKTUR DATA, Sumantri
Slamet I.S., dkk, Penerbit Elex Media
Komputindo
3. …
SUMBER-SUMBER ON LINE
• http://elearning.gunadarma.ac.id/docmodul/pengan
tar_struktur_data/
• http://kur2003.if.itb.ac.id/file/Cover_SD_Konsep.htm
• http://kur2003.if.itb.ac.id/file/Cover_SD_StudiKasus.
htm
What is …. ?
• STRUKTUR
Bagaimana bagian-bagian dari sesuatu berhubungan satu
dengan lain atau bagaimana sesuatu tersebut disatukan.
(id.wikipedia.org)
• DATA
Catatan atas kumpulan fakta. Data merupakan bentuk jamak dari
datum, berasal dari bahasa Latin yang berarti "sesuatu yang
diberikan". Dalam penggunaan sehari-hari data berarti suatu
pernyataan yang diterima secara apa adanya. Pernyataan ini adalah
hasil pengukuran atau pengamatan suatu variabel yang bentuknya
dapat berupa angka, kata-kata, atau citra. (id.wikipedia.org)
DEFINISI
Struktur Data adalah koleksi atau kelompok data yang
dapat dikarakterisasikan oleh organisasi serta operasi
yang didefinisikan terhadapnya.
A data structure is a particular way of storing and
organizing data in a computer so that it can be used
efficiently.
Wikipedia.org
Struktur Data adalah cara merepresentasikan data agar
efisien dalam penyimpanan dan pengolahannya.
What for ?
Apa tujuan data diatur dalam struktur tertentu?
• Efisiensi waktu proses
• Efisiensi resources (RAM, storage)
• Kemudahan pemrograman (karena lebih jelas)
Niklaus Wirth
Efisiensi Waktu Proses
• Non Index
Index
A
A
B
B
C
C
D
D
E
E
Efisiensi Storage
• Matriks Ukuran Besar Yang Selnya Banyak Kosong
(Sparse Matrix)
1
2
3
4
5
6
7
...
500
1
0
0
0
0
0
0
0
…
0
2
0
5
0
0
0
0
0
…
0
3
0
0
0
0
4
0
0
…
0
4
0
0
0
0
0
0
0
…
9
5
0
0
0
0
0
0
0
…
0
6
8
0
0
0
0
1
0
…
0
7
0
0
0
0
0
0
0
…
0
…
…
…
…
…
…
…
…
…
…
500
0
0
0
0
3
0
0
…
0
Efisiensi Storage
• Matriks Ukuran Besar Yang Selnya Banyak Kosong
(Sparse Matrix)
1
2
3
4
5
6
7
...
500
1
0
0
0
0
0
0
0
…
0
2
0
5
0
0
0
0
0
…
0
3
0
0
0
0
4
0
0
…
0
4
0
0
0
0
0
0
0
…
9
5
0
0
0
0
0
0
0
…
0
6
8
0
0
0
0
1
0
…
0
7
0
0
0
0
0
0
0
…
0
…
…
…
…
…
…
…
…
…
…
500
0
0
0
0
3
0
0
…
0
Efisiensi Storage
• Hanya data yang tidak 0 yang disimpan
1
2
5
6
5
2
4
3
9
4
6
500
500
8
1
3
JENIS-JENIS DATA
• Tipe Data Sederhana
- Data Sederhana Tunggal : integer, real,
boolean, karakter
- Data Sederhana Majemuk : string
• Tipe Data Berstruktur
- Struktur sederhana : array, record
- Struktur majemuk
- Linier : stack (tumpukan), queue (antrian),
linear linked list
- Non Linier : tree (pohon), graph
Contoh-contoh
•
•
•
•
•
•
•
Integer
Real
Boolean
Karakter
String
Array
Record
1, 10, -197205062000031007
0.009, -12.88938
true, false
A, q, #, =
“STMIK”, “Facebook”
[“z”,”f”,”r”,”k”], [1,3,12,43,56]
Mhs : {Nama=”Rudi”, Usia=23}
Contoh-contoh
• Tree (pohon)
RANGGA
• Graph
AMIR
BUDI
CATUR
DESI
BOB
Selain tipe data tersebut di atas, user dapat
membuat tipe data baru (user defined type) sesuai
kebutuhan.
Namun demikian, tipe data baru tersebut tetap
diturunkan dari tipe yang sudah tersedia dalam
bahasa pemrograman.
Misal:
Type
Kelas = 1..12;
Nama = string[100];
Bahasa pemrograman pada umumnya sudah
menyediakan tipe data sederhana dan tipe data
berstruktur sederhana, dan sudah pula
terdefinisi operasi-operasi yang dapat dilakukan
terhadap tipe data tersebut.
Contoh operator:
Integer: +, -, x, ^, DIV, MOD
Boolean: not, and, or
Sedangkan, untuk tipe data berstruktur
majemuk tidak semua bahasa pemrograman
menyediakan secara langsung, melainkan harus
dibuat prosedur penanganannya.
“Struktur” yang terbentuk, misalnya tree
(pohon), queue (antrian), graph hanya terbentuk
dalam logika (programmer), sedangkan
representasi fisiknya tetap memanfaatkan
sistem memori sekuensial.
SILABI
1. Pengenalan Mata Kuliah Strukur Data
2. Konsep ADT (Abstract Data Type)
3. Alokasi memori dinamis
4. Stack
5. Queue
6. Linked list
7. Tree
8. Searching
9. Sorting
10. Hashing

similar documents