?
ALGORITMA STRUKTUR DATA
Hubungan SD dan Algoritma
Dengan pemilihan struktur data yang baik, maka
problem yang kompleks dapat diselesaikan
sehingga algoritma dapat digunakan secara efisien,
operasi-operasi penting dapat dieksekusi dengan
sumber daya yang lebih kecil, memori lebih kecil,
dan waktu eksekusi yang lebih cepat.
Tidak semua struktur data baik dan sesuai. Contoh
untuk problem pemrosesan image, record
informasi mahasiswa.
Ciri Algoritma
Ciri algoritma yang baik menurut Donald E.Knuth:
◦ Input: ada minimal 0 input atau lebih
◦ Ouput: ada minimal 1 output atau lebih
◦ Definite: ada kejelasan apa yang dilakukan
◦ Efective: langkah yang dikerjakan harus efektif
◦ Terminate: langkah harus dapat berhenti (stop) secara jelas
Contoh Algoritma …..
•Mencari nilai maksimum
•Mengurutkan data
•Mencetak bilangan ganjil dari 1 – 19
•Menyimpan data mahasiswa baru
•Mencetak data absensi
•…
Contoh Algoritma mencetak bilangan ganjil dari 1-
19
1. Dimulai dari nilai 1
2. Seleksi apakah nilai tersebut ganjil (syarat : jika
habis di bagi 2)
3. Jika ganjil maka lakukan pencetakan, jika tidak
maka ke tahap berikutnya
4. Nilai di tambah satu
5. Seleksi apakah nilai sudah sampai dengan 20, jika
belum ulangi langkah 2, jika sudah maka stop
Struktur Data …..
model logika/matematik
yang secara khusus
mengorganisasi data
Contoh Struktur Data …..
• Struktur Data Statis – array/larik ,
rekord, himpunan.
• Struktur Data Dinamis -
list/senarai, queue /antrian /giliran,
tumpukan /stack /timbunan, pohon,
graf.
Operasi Pada Struktur Data
• Traversal (Traversing) : mengunjungi setiap elemen
SD
• Pencarian (Searching) : menemukan elemen/lokasi
pada SD
• Penyisipan (Inserting) : menambah elemen baru
pada SD
• Penghapusan (Deleting) : menghapus elemen dari
SD
Contoh Operasi terhadap data
A r r a y A s a tu d im e n s i :
8 in d e k s (1 s /d 8 ) d a n d a ta 1 , 7 , 1 8 d s t.
1 7 18 03 69 24 08 70
1 2 3 4 5 6 7 8
Adalah tipe data yang sudah ada dan dijadikan standar dalam bahasa
pemrograman tertentu.
Isi dari tipe data sederhana ini adalah data-data tunggal.
TIPE DATA SEDERHANA
(SIMPLE - DATA TYPE)
1. STANDARD DATA TYPE
◦ INTEGER
◦ FLOAT
◦ CHAR
◦ STRING
◦ BOOLEAN
2. RECORD (REKAMAN)
3. FILE
4. SET (HIMPUNAN)
ARRAY (LARIK)
Larik adalah tipe data yang berisi beberapa data
yang ditampung dalam satu variabel yang memiliki
tipe data yang sama.
Masing masing data yang tertampung dalam
sebuah larik akan ditandai sebagai elemen pertama
sampai ke - n.
larik dapat dibuat beberapa dimensi, misalnya
untuk menggambarkan matrix kita perlu
menggunakan larik 2 dimensi.
RECORD (REKAMAN)
Tipe data rekaman di gunakan untuk menampung data yang terdiri
dari beberapa tipe yang berbeda.
Record dapat diakses (diisi) dan dibaca per elemen record dengan
menyebut nama elemennya.
SET (HIMPUNAN)
Tipe data himpunan merupakan sebuah tipe data yang didalamnya
memuat sejumlah elemen (anggota) dimana anggotanya memiliki
tipe data dasar yang sama.
C. TIPE POINTER
Pointer secara harfiah dapat diartikan sebagai penunjuk.
Tipe data pointer ini merupakan tipe data yang berisikan alamat
memori dimana data disimpan
OPERATOR MATEMATIKA
OPERATOR ARTI PRIORITAS CONTOH
* Kali 1 2*36
/ Bagi (Real) 1 7 / 2 3.5
DIV Bagi (Bulat) 1 7 DIV 2 3
MOD Sisa Bagi 1 7 MOD 2 1
+ Tambah 2 2+35
- Kurang 2 2 – 3 -1