STRUKTUR DATA Materi 1
PENGENALAN
PERMASALAHAN 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.
CONT… Pengambilan keputusan terhadap bahasa pemrograman mana yang paling cocok untuk jenis data yang ada
CONT… Karena itu kita perlu mempelajari: STRUKTUR DATA
PROGRAM ALGO RITMA STRUKTUR DATA
Struktur data adalah pengaturan data di dalam memori komputer. PENGERTIAN Struktur data adalah pengaturan data di dalam memori komputer.
MANFAAT Agar diperoleh sebuah pemprograman lebih efisien, mudah, dan elegan. Supaya data yang disimpan dapat lebih mudah/efisien dalam pengaksesan/pemrosesan data tersebut.
CONTOH MASALAH Perhatikan program untuk menghitung jumlah kemunculan angka 1 sampai 500 dalam sebuah file: if (a == 1) c001++; if (a == 2) c002++; ... if (a == 500) c300++; Program di atas >300 baris. Program di atas benar walaupun tidak efisien, sangat besar (300 lines of code), dan sulit dipelihara.
SOLUSI Solusi sederhana: gunakanlah array integer yang terdiri dari 300 elemen: int c[300]; c[a]++;
MACAM-MACAM OPERASI Record Array Set List Stack Queue Deque Tree Graph String
ALGORITMA
PENGERTIAN Deskripsi langkah-langkah penyelesaian masalah yang tersusun secara logis.
MANFAAT Data perlu distrukturkan agar dapat diperoleh algoritma yang sederhana dan/atau berkinerja unggul. Algoritma tidak dapat dipisahkan dengan struktur data yang dipilih dalam mempresentasikan data persoalan.
CONT… Algoritma dirancang untuk menyelesaikan suatu persoalan spesifik dengan usaha paling minimal.
CIRI-CIRI ALGORITMA Input: masukan, terdapat nol masukan atau lebih yang diberikan. Output: keluaran, sedikitnya terdapat satu keluaran yang dihasilkan. Definite: jelas, harus secara sempurna menyatakan apa yang dilakukan.
CONT… Effective: setiap instruksi harus dapat dilakukan secara manual selama sejumlah waktu yang berhingga. Terminate: berakhir, harus berhenti setelah sejumlah operasi.
EKSPRESI ALGORITMA Tiga alternatif yang paling sering digunakan, yaitu: Bahasa alami (seperti bahasa Indonesia, bahasa Inggris). Pseudocode, atau Bahasa pemrograman.
DATA
PENGERTIAN Data adalah informasi yang sering kita jumpai, yang menggambarkan entitas baik fisik atau tidak dari sesuatu objek.
Contoh Data pribadi seorang mahasiswa: NIM Nama Alamat Tanggal lahir dll
PEMROGRAMAN
DASAR PEMROGRAMAN YANG BAIK Analisis dan spesifikasi masalah. Perancangan sistem. Pengkodean atau pemrograman, serta integrasi. Verifikasi dan validasi. Pemeliharaan sistem
ANALISIS DAN SPESIFIKASI MASALAH Pertama program harus dianalisis dan dirumuskan dengan spesifikasi yang lengkap, presisis, jelas dan tidak ambigu.
PERANCANGAN SISTEM Kriteria perancangan yang baik yang harus dicapai misalnya kejelasan (clarity), guna ulang (reusability), keterbacaan (readibility), dan sebagainya. Kriteria-kriteria yang bertentangan harus dikompromikan sehingga memperoleh kinerja/ kualitas sistem yang optimal berdasarkan waktu, biaya, dan usaha yang dilakukan.
PENGKODEAN DAN PEMROGRAMAN Proses mempersiapkan program tidak hanya menguntungkan secara ekonomi dan ilmiah tapi juga merupakan pengalaman estetika yang mengasyikkan.
VERIFIKASI DAN VALIDASI Program yang telah dihasilkan harus diperiksa terhadap pemenuhan spesifikasi. Pengujian sebanyak mungkin ditujukan untuk menemukan cacat di program.
PEMELIHARAAN SISTEM Program harus selalu dikelola agar dapat berevolusi mengikuti perubahan lingkungan dimana program bekerja.
REFERENSI Bambang Hariyanto, IR, MT. Struktur Data: Pondasi Membuat Program yang Elegan dan Efisien. Informatika: Bandung. 2008 Fathurrochman, M.Kom. Pemrograman Berorientasi Objek dengan Bahasa Java. UIN-Malang Press. 2008 Siswanto. Algoritma & Struktur Data Liner dengan Java. Graha Ilmu. 2010