Anda di halaman 1dari 5

9/28/2020

Capaian Pembelajaran Materi Perkuliahan


STRUKTUR DATA
DATA DAN STRUKTUR DATA
Mahasiswa mampu menjelaskan
konsep dasar struktur data

Topik Bahasan Pengertian


Struktur data adalah representasi struktural hubungan
logis antar elemen data.
Pengertian Struktur Data Struktur data adalah cara pengorganisasian elemen
data dengan mempertimbangkan hubungannya
Perbedaan Data dan Struktur Data satu sama lain.
Pendekatan Top-Down dan Bottom-Up Struktur data terutama menentukan struktur organisasi
data dengan menyediakan metode akses dengan
derajat keterhubungan yang benar. Struktur data
3
mempengaruhi desain program baik dari sisi4
struktural maupun fungsional.

Data dan Struktur Data

Data Sistem Informasi Informasi


(Proses)

Data adalah himpunan dari suatu nilai. Algoritma + Struktur Data =


Struktur data adalah pengorganisasian data Program
yang dikarakteristikan dengan tipe dan
operasi yang didefinisikan kepadanya baik
secara logikal maupun matematikal 5
6
5

1
9/28/2020

Mengapa Struktur Data ? Kompleksitas Program

Struktur data adalah blok bangunan dari sebuah Programer harus bekerja keras untuk memecahkan
program masalah yang terjadi, jika masalah dianalisis dan
dibagi menjadi sub masalah maka tugas programmer
akan jauh lebih mudah.
Pemilihan struktur data yang tepat akan membantu
programmer untuk merancang program yang lebih Masalah yang kompleks biasanya akan dibagi dan
efisien baik dari sisi kompleksitas ataupun volume diprogram oleh programmer yang berbeda atau
masalah yang diselesaikan dengan komputer kelompok programmer. Tapi semua programmer
harus mengikuti standar struktural yang ada sehingga
membuat integrasi yang mudah dan efisien dari
7 8
modul ini.

Kompleksitas Program Alokasi Memori


Tahukah Anda ??
Penempatan Struktur Data di memori utama
 Dipekerjakan sebanyak 120 programmer untuk komputer (RAM) disebut struktur penyimpanan.
mendevelop dan maintenance aplikasi GOJEK.
http://www.cnnindonesia.com/teknologi/20151022143648-185-86640/banyak-
dipesan-gojek-rekrut-programmer-india/
Inilah yang menyebabkan struktur data harus diatur
sedemikian rupa untuk memaksimumkan efisiensi
 Facebook memperkerjakan 700 programmer
penggunaan ruang memori.
https://www.facebook.com/notes/facebook-engineering/ship-early-and-ship-
twice-as-often/10150985860363920
Pengelolaan Data bisa ditempatkan baik pada
 Samsung mempekerjakan 40.506 programmer dan Google memori utama maupun memori pendukung.
18.593 programmer
http://www.businessinsider.co.id/samsung-has-twice-the-number-of-engineers-that-
Pengelolaan data pada memori pendukung disebut
google-has-2014-9/?r=US&IR=T#.VsWeQrSLTIU 9 Struktur File/Sistem Berkas. 10

Algoritma Algoritma

Algoritma merupakan urutan langkah terhingga dari Terdapat langkah-langkah dalam mengkonversi
instruksi untuk memecahkan masalah komputasi. masalah menjadi program, metode ini disebut
Untuk memecahkan setiap permasalahan yang ada Metode Perbaikan Bertahap (stepwise refinement
pertama kita harus mendefinisikan masalahnya, method).
kemudian merancang algoritma untuk memecahkan
masalah tersebut. Ada 2 pendekatan dalam merancangan algoritma
Pada program yang besar, setiap bagian dari yaitu Pendekatan Atas-Bawah (Top-Down) dan
program harus diorganisasi dengan baik sebelum Pendekatan Bawah-Atas (Bottom-Up)
menulis program. 11 12

2
9/28/2020

Stepwise Refinement Method


Stepwise Refinement Method 1. Tahap pertama, pemodelan, mencoba untuk mewakili
masalah menggunakan model matematika seperti grafik,
diagram, dll. Pada tahap ini, solusi untuk masalah adalah
sebuah algoritma informal.
2. Tahap berikutnya, algoritma ditulis dalam pseudo-bahasa
(atau flowchart) yaitu, campuran setiap konstruksi bahasa
pemrograman dan bahasa Inggris. Operasi yang akan
dilakukan pada berbagai jenis Data menjadi tetap.
3. Pada tahap akhir kita memilih sebuah implementasi untuk
setiap jenis data abstrak dan menulis prosedur untuk
berbagai operasi pada jenis itu. Sisanya pernyataan dalam
algoritma pseudo-bahasa yang digantikan oleh (atau)
13
bahasa pemrograman. 14

Modular Programming Perancangan Top-Down

Modular Programming adalah tindakan merancang dan Desain algoritma top-down adalah suatu teknik untuk
menulis program sebagai fungsi, yang masing-masing mengorganisasi dan coding program dengan hirarki modul
melakukan satu fungsi yang didefinisikan dengan baik, dan yang digunakan, masing-masing memiliki satu entri dan titik
yang sedikit berinteraksi antara mereka keluar tunggal, dan di mana kontrol dilewatkan ke bawah
Dua metode dapat digunakan untuk pemrograman modular melalui struktur tanpa cabang tanpa syarat untuk struktur
yaitu top-down dan bottom-up. Modular programming ini tingkat yang lebih tinggi.
penting, karena tidak semua kesalahan dapat dideteksi
pada saat pengujian awal. Ada kemungkinan bahwa masih Pemrograman top-down cenderung untuk menghasilkan
ada bug dalam program. Jika kesalahan yang ditemukan modul yang berdasarkan fungsi, biasanya dalam bentuk
setelah program sepenuhnya diuji, maka modul yang fungsi atau prosedur atau metode.
bersangkutan dapat diisolasi dan diuji ulang. 15 16

Perancangan Top-Down Perancangan Bottom-Up

Kebalikan dari desain top-down. Aplikasi dibangun dimulai


dengan primitif dan membangun fitur secara bertahap lebih
dan lebih rumit, sampai semua aplikasi telah ditulis. Artinya,
mulai desain dengan spesifik modul dan membangun mereka
menjadi lebih struktur yang kompleks, berakhir di bagian atas.
Metode bottom-up secara luas digunakan untuk pengujian,
karena masing-masing fungsi ditulis dan diuji pertama dari
tingkat terendah. Setelah fungsi tingkat terendah telah diuji dan
diverifikasi, tingkat berikutnya dari fungsi dapat diuji. Proses
17
berlanjut, bergerak naik tingkat, sampai akhirnya fungsi utama 18
diuji.

3
9/28/2020

Struktur Program Analisis Algoritma


Merupakan teknik yang menggunakan struktur kode pemrograman untuk
menulis program. Algoritma yang dibuat harus diperiksa dan dan
Struktur yang digunakan yaitu : diprediksi kebenarannya. Dilakukan dengan
1. Struktur Urutan, mengeksekusi kode-kode pemrograman secara menganalisis algoritma dengan melacak semua
berurutan dari atas ke bawah
petunjuk langkah-demi-langkah, menguji kebenaran
2. Struktur Seleksi, mengeksekusi kode program berdasarkan kondisi yang
diberikan logis, dan menguji kebenaran menggunakan beberapa
3. Struktur Pengulangan, mengeksekusi kode program secara berulang data.
sesuai kondisi yang diberikan
Pemilihan pada algoritma tertentu tergantung pada
Beberapa statmen yang TIDAK BOLEH digunakan dalam pemrograman
yaitu : statmen GO TO, statmen BREAK atau CONTINUE dalam proses analisis kinerja dan pengukuran berikut:
pengulangan. 1. Kompleksitas Ruang
Selain itu juga harus mematuhi konsep ONE ENTRY POINT dan ONE EXIT
POINT untuk function/procedure/subroutine/method yang digunakan 19 2. Kompleksitas Waktu 20

Klasifikasi Data dan Struktur Data Sistem Berkas (File Management)


Data terbagi menjadi 2, yaitu :
 Data sederhana, yaitu : Selain struktur data yang terdapat di memory, ada juga
struktur data yang terdapat di storage tambahan
 Data tunggal, mis : integer, real, boolean (media penyimpanan) yang disebut FILE MANAGEMENT.
 Data majemuk, mis : string
 Struktur data, yaitu :
Adapun type dari file management, yaitu :
 Sederhana, mis : array & record
 Majemuk, yang terdiri dari : Sequential
 Linear, mis : stack, queue & linked list Relative
 Non linear, mis : tree & graph Index sequential
21 22
Kesemua data ini terdapat di storage utama Multi key

Data Sederhana Data Sederhana

Ada 3 yaitu : Integer, Real dan Boolean BOOLEAN


INTEGER Merupakan tipe data yang hanya berisi nilai true atau false
Adalah bilangan bulat baik positif maupun negatif ataupun nilai 1 atau nilai 0 saja.
Dihasilkan melalui operator logikal dan operator relasional.
Di dalam memory komputer menggunakan fixed point
Operator logika dari Boolean terdiri dari not, and dan or.
REAL
Operator relasional dari Boolean terdiri dari :=, <, >, <=, >=, <>
Merupakan bilangan pecahan
Sebagai contoh :
Di dalam memory komputer menggunakan floating - 6 < 12 akan menghasilkan nilai boolean true
point. Operasi yang berlaku adalah operasi aritmatika.23 24
- a <> a akan menghasilkan nilai boolean false

4
9/28/2020

Data Majemuk STRING

Data sederhana yang bertipe majemuk adalah string. Misalkan string S1 = ‘TEKNIK’ dan string S2 =
String adalah kumpulan hingga dari karakter. ‘INFORMATIKA’, maka :
LEN(S1) = 6 DAN LEN(S2) = 11
Yang dimaksud dengan karakter yaitu :
CONCAT(S1,S2) = ‘TEKNIKINFORMATIKA’
Abjad (a .. z dan A .. Z)
Angka (0 .. 9) SUBSTR(S2,1,3) = ‘INF’
Karakter khusus ( + - / = * , . ) INSERT(S2,S1,5) = ‘INFOTEKNIKRMATIKA’
Spasi / blank 25 DELETE(S2,1,5) = ‘MATIKA’
26

LATIHAN SOAL - 1 LATIHAN SOAL - 2

Jika S = ‘WE THE PEOPLE’ AND T = ‘UNITED STATES’


Cari LEN(S) dan LEN(T) Jika S = ‘Struktur’ AND T = ‘Data’
SUBSTR(S,4,10) AND SUBSTR(T,5,5) Susun operasi string untuk
CONCAT(S,T) menghasilkan
INSERT(S,T,7)
ST = ‘StDruakttura’
DELETE(T,4,7)
27 28

29

Anda mungkin juga menyukai