Anda di halaman 1dari 30

STRUKTUR DATA

Bagaimana cara mengatasi masalah implementasi


program dengan komputer?
◦ Pemahaman masalah secara menyeluruh dan persiapan data
◦ Keputusan operasi-operasi yang dilakukan terhadap data
◦ Penyimpanan data-data pada memori sehingga tersimpan dan terstruktur
secara logis, operasinya efisien
◦ Pengambilan keputusan terhadap bahasa pemrograman mana yang paling
cocok untuk jenis data yang ada
Perbedaan Tipe Data, Obyek Data & Struktur
Data (1)
Tipe data adalah jenis data yang mampu ditangani
oleh suatu bahasa pemrograman pada komputer.
Tiap-tiap bahasa pemrograman memiliki tipe data
yang memungkinkan:
◦ Deklarasi terhadap variabel tipe data tersebut
◦ Menyediakan kumpulan operasi yang mungkin terhadap
variabel bertipe data tersebut
◦ Jenis obyek data yang mungkin
◦ Contoh tipe data di C? Java? Pascal? .NET?
Perbedaan Tipe Data, Obyek Data & Struktur
Data (2)
Obyek Data adalah kumpulan elemen yang
mungkin untuk suatu tipe data tertentu.
◦ Mis: integer mengacu pada obyek data -32768 s/d 32767,
byte 0 s/d 255, string adalah kumpulan karakter maks
255 huruf
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.
PROGRAM

?
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

1. Insert data pada array ke-1


2. Cari data 18 ada dimana ?
3. Telusuri semua data
4. Hapus data ke-6
Mengapa perlu SD
Mengenal bentuk organisasi penyimpanan data
dan pengoperasiannya.
Menentukan kualitas informasi : akurat, tepat
pada waktunya dan relevan. Informasi dapat
dikatakan bernilai bila manfaatnya lebih efektif
dibandingkan dengan biaya mendapatkannya.
Mengurangi duplikasi data (data redudancy)
Hubungan data dapat ditingkatkan (data
relatability)
Mengurangi pemborosan tempat simpanan luar
PENGGUNAAN
TIPE DATA
YANG EFEKTIF
MACAM TIPE DATA
A. TIPE DATA SEDERHANA (SIMPLE - DATA TYPE)
B. TIPE DATA TERSTRUKTUR (STRUCTURED - DATA TYPE)
C. TIPE DATA PENUNJUK (POINTER - DATA TYPE)
A. TIPE DATA
SEDERHANA
(SIMPLE - DATA TYPE)

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. USER-DEFINED DATA TYPE


◦ ENUMERATED OR SCALAR TYPE
◦ SUBRANGE TYPE
INTEGER
TIPE BILANGAN BULAT

Nama Tipe Jangkauan Ukuran Memori


Shortint -128 … 127 1 byte
Byte 0 … 255 1 byte
Integer -32768 … 32767 2 byte
Word 0 … 65535 2 byte
Longint -2147483648 … 4 byte
2147483647
FLOAT
TIPE BILANGAN PECAHAN

Tipe Jangkauan Digit Ukuran


Single 1,5E-45 .. 3,4E+38 7-8 4 byte
Float 2,9E-39 .. 1,7E+38 11-12 6 byte
Double 5,0E-324..1,7E+308 15-16 8 byte
Extended 1,9E-4951..1,1E+4932 19-20 10 byte
Comp 9,2E-18 .. 9,2E+18 19-20 8 byte
TIPE BILANGAN FLOAT
Data yang termasuk bilangan float adalah data angka yang
mengandung pecahan.
Data yang seperti ini akan memiliki keterangan jangkauan, jumlah
digit penting (berarti) dan ukuran.
Digit berarti ini penting diperhatikan karena ini berhubungan
dengan tingkat ketelitian data yang disajikan.
TIPE DATA KARAKTER
Tipe Keterangan
Char Berisi hanya 1 karakter diapit tanda
petik (‘ ‘)

String Terdiri dari beberapa karakter


(maksimal 255) diapit tanda petik (‘ ‘)

String[x] Terdiri dari maksimal x karakter diapit


tanda petik (‘ ‘)
TIPE DATA BOOLEAN

Adalah tipe data yang Tipe Ukuran


hanya bernilai benar
(true) atau salah (false). Boolean 1 byte
Jangkauan (nilai yang Bool 1 byte
mungkin) hanya 2 yaitu
true atau false. Wordbool 2 byte
LongBool 4 byte
USER - DEFINED DATA
TYPE
SUB JANGKAUAN
Tipe sub jangkauan merupakan tipe data yang
jangkauannya merupakan sebagian dari tipe data
yang lain.
Misalnya untuk tipe byte memiliki jangkauan dari
0..255, sementara kita hanya memerlukan angka
1..12 untuk menampung data bulan. Maka bisa
diciptakan satu tipe baru yang merupakan sub
jangkauan tersebut.
Contoh
Type
Bulan : 1 .. 12 ;
B. TIPE DATA
TERSTRUKTUR (STRUCTURED -
DATA TYPE)
1. ARRAY (LARIK)

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*36
/ 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+35
- Kurang 2 2 – 3  -1

Anda mungkin juga menyukai