struktur data

36
STRUKTUR DATA MUSTAKIM, S.T PERTEMUAN 2 Jurusan Sistem Informasi Fakultas Sains dan Teknologi UIN Suska Riau 2012

Upload: yair

Post on 07-Jan-2016

74 views

Category:

Documents


0 download

DESCRIPTION

STRUKTUR DATA. MUSTAKIM, S.T PERTEMUAN 2 Jurusan Sistem Informasi Fakultas Sains dan Teknologi UIN Suska Riau 2012. PENGANTAR STRUKTUR DATA. PENGERTIAN STRUKTUR DATA. Struktur  susunan , bentuk , pola atau bangunan - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: STRUKTUR DATA

STRUKTUR DATA

MUSTAKIM, S.TPERTEMUAN 2

Jurusan Sistem InformasiFakultas Sains dan Teknologi UIN Suska Riau

2012

Page 2: STRUKTUR DATA

PENGANTAR STRUKTUR DATA

Page 3: STRUKTUR DATA

Halaman 3

PENGERTIAN STRUKTUR DATA

Struktur susunan, bentuk, pola atau bangunan

Struktur data adalah cara menyimpan atau merepresentasikan data di dalam komputer agar bisa dipakai secara efisien

Sedangkan data adalah representasi dari fakta dunia nyata.

Fakta atau keterangan tentang kenyataan yang disimpan, direkam atau direpresentasikan dalam bentuk tulisan, suara, gambar, sinyal atau simbol

Page 4: STRUKTUR DATA

Halaman 4

Alat pemrosesan dikomputer terdiri atas rangkaian-rangkaian elektronik yang jika rangkaian tersebut dialiri oleh listrik maka akan bekerja.

1 rangkaian yang dialiri listrik0 rangkaian yang tidak dialiri listrik

Atau yang disebut Sistem Digital

DATA PADA KOMPUTER

Page 5: STRUKTUR DATA

Halaman 5

Program yang baik akan memiliki kriteria:1. Menghasilkan keluaran yang benar dan sesuai2. Memiliki kompleksitas algoritma yang minimal3. Kecocokan bahasa pemrograman4. Memiliki batas akhir penyelesaian

PROGRAM KOMPUTER

Page 6: STRUKTUR DATA

Halaman 6

Ilustrasi :Jika saya menuliskan angka 42, apakan ini dinamakan informasi ???Jawaban:????

INFORMASI

Page 7: STRUKTUR DATA

Halaman 7

Jadi, jika suatu fakta yang saya peroleh harus saya proses lebih lanjut, maka disebut dengan data. Hasil proses yang saya hasilkan untuk mengetahui sesuatu, itu adalah informasi.

Suatu perbedaan yang tipis yang bersipat subjective

Page 8: STRUKTUR DATA

Halaman 8

HIERARKI KOMPUTER

INPUT PROSES OUTPUT

Page 9: STRUKTUR DATA

Halaman 9

STRUKTUR DATA DAN PROGRAM

INPUT PROSES OUTPUT

MASALAH

ALGORITMA PENYELESAIAN STRUKTUR DATA

Page 10: STRUKTUR DATA

Halaman 10

Secara garis besar type data dapat dikategorikan menjadi :1. Type data sederhana

a. Type data sederhana tunggal, misalnya Integer, real, boolean dan karakter

b. Type data sederhana majemuk, misalnya String

TYPE DATA

Page 11: STRUKTUR DATA

Halaman 11

2. Struktur Data, meliputia. Struktur data sederhana, misalnya

array dan recordb. Struktur data majemuk, yang terdiri

dari Linier : Stack, Queue, serta List dan MultilistNon Linier : Pohon Biner dan Graph

TYPE DATA (Cont…)

Page 12: STRUKTUR DATA

Halaman 12

Pemakaian struktur data yang tepat di dalam proses pemrograman akan menghasilkan algoritma yang lebih jelas dan tepat, sehingga menjadikan program secara keseluruhan lebih efisien dan sederhana.

Page 13: STRUKTUR DATA

Halaman 13

Struktur data yang ″standar″ yang biasanya digunakan dibidang informatika adalah :• List linier (Linked List) dan variasinya• Multilist• Stack (Tumpukan)• Queue (Antrian) • Tree ( Pohon ) • Graph ( Graf )

Struktur data yang sudah dipelajari sebelumnya adalah struktur data statis, yaitu array. Dalam kuliah ini akan dipelajari struktur data dinamis.

Page 14: STRUKTUR DATA

ALGORITMA

Page 15: STRUKTUR DATA

Halaman 15

• Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis. • Kata logis disini berarti benar sesuai dengan

logika manusia. • Untuk menjadi sebuah algoritma, urutan

langkah yang ditempuh untuk menyelesaikan masalah harus memberikan hasil yang benar

PENGERTIAN

Page 16: STRUKTUR DATA

Halaman 16

Misalkan saja “algoritma aktifitas pagi hari sebelum berangkat kerja” yang dikerjakan oleh seorang eksekutif junior untuk turun dari tempat tidur dan bekerja:

CONTOH

Page 17: STRUKTUR DATA

Mana algoritma yang benar??

(1) Turun dari tempat tidur;

(2) Melepas piyama; (3) Berpakaian;(4) Mandi; (5) Makan pagi; (6) Baca koran; (7) Pergi kerja

(1) Turun dari tempat tidur;

(2) Melepas piyama; (3) Mandi; (4) Berpakaian; (5) Makan pagi; (6) Baca koran; (7) Pergi kerja

A B

Page 18: STRUKTUR DATA

OUTPUT…

Pergi kerja dengan keadaan basah kuyup

Algoritma yang benar

A B

Page 19: STRUKTUR DATA

Halaman 19

FlowchartTurun dari tempat

tidur

Melepas Piyama

Mandi

Berpakaian

Makan pagi

Baca koran

Pergi kerja

Kondisi

Asumsi: Jika sempat baca koran tapi jika tidak langsung pergi kerja

Sempat

Tidak Sempat

Page 20: STRUKTUR DATA

Halaman 20

Representasikan dan buatlah Algoritma dengan menggunakan Flowchart:1. Algoritma memilih menu pada sebuah

restoran2. Menentukan bilangan Genap atau ganjil3. Menentukan nilai huruf mahasiswa dengan

asumsi, 80-100=A, 70-79=B, 60-69=C, 50-59=D, Lebih kecil dari 50=E

Silahkan dicoba…

Page 21: STRUKTUR DATA

Halaman 21

Ciri-ciri algoritma sebagai berikut:1. Input, trdapat nol masukan atau lebih yang

diberikan2. Output, sedikitnya satu keluaran yang dihasilkan3. Definite, jelas – harus secara sempurna

menyatakan apa yang dilakukan4. Efektif, setiap intruksi harus bisa dilaukan secara

manual5. Terminate – berakhir, harus berhenti setelah

sejumlah operasi

CIRI DAN PROPERTI ALGORITMA

Page 22: STRUKTUR DATA

Halaman 22

Strategi perancangan algoritma yang popular adalah:1. Strategi Greedy2. Strategi devide and conquer3. Strategi dinamic programming4. Strategi backtracking5. Strategi branch and bound6. Strategi search and tranversal7. Strategi linier programming8. Strategi integer programming9. Strategi genetic algorithm10. Strategi neural network

PERANCANGAN ALGORITMA

Page 23: STRUKTUR DATA

Halaman 23

1. Analisis Kualitatif menelusuri algoritma• Penelusuran logis untuk membuktikan algoritma• Kualitas algoritma mengeluarkan hasil boolean

(benar atau salah)• Tidak ada kondisi ditengah-tengah

PENGUKURAN KEBAIKAN ALGORITMA

Page 24: STRUKTUR DATA

Halaman 24

2. Analisis Kuantitatif Kompleksitas Komputasi (waktu) dan Ruang• Seberapa cepat algoritma bekerja• Seberapa ruang yang diperlukan algoritma

bekerja

3. Pencarian Algoritma yang paling efisien

PENGUKURAN KEBAIKAN ALGORITMA

Page 25: STRUKTUR DATA

Halaman 25

Tiga alternatif yang sering digunakan:1. Bahasa Alami seperti bahasa indonesia atau

inggris 2. Pseudocode3. Bahasa pemrograman

EKSPRESI ALGORITMA

Page 26: STRUKTUR DATA

Halaman 26

Buatlah satu ekspresi algoritma sederhana (yang pernah diajarkan pada alpro) atau pilihan sebagai berikut:1. Integer dan String (operasi aritmatika)2. Perulangan (For atau While) mencetak

angka 1-20 terurut3. Logika (If) mencari kelulusan nilai mata

kuliah

Review Alpro

Page 27: STRUKTUR DATA

Abstrak Data Type (ADT)

Page 28: STRUKTUR DATA

Halaman 28

Abstraksi data memungkinkan memperluas bahasa pemrograman dengan type data baru

Disetiap bahasa pemrograman disediakan berbagai type data dan kita dipersilahkan memilihnya.

Type data : huruf, angka dan tanda baca

ADT kumpulan nilai dan kumpulan operasi yang diizinkan

PENGANTAR

Page 29: STRUKTUR DATA

Halaman 29

ADT integer, real, float dsb (type data primitif)

ADT Integer menyatakan suatu himpunan nilai yang mempunyai operasi pengurangan, penambahan, perkalian, pembagian dan sebagainya

Page 30: STRUKTUR DATA

Halaman 30

Tujuan ADT adalah menyembunyikan informasi atau pengapsulan, yaitu1. Perubahan implementasi ADT tidak mengubah

teks program lain bila berbeda interface2. Pemakaian dan pembuatan ADT dapat

terpisah atau sesuai kesepakatan3. ADT merupakan program modular dan tim

pemrograman4. Merupakan Modul dan konsep yang dijumpai

di domain persoalan

TUJUAN ADT

Page 31: STRUKTUR DATA

Halaman 31

Tahap pembuatan ADT:1. Tahap 1 : Spesifikasi2. Tahap 2 : Implementasi3. Tahap 3 : Pemrograman

PEMBUATAN ADT

Page 32: STRUKTUR DATA

Halaman 32

Operator:^ : perpangkatan*/ : perkalian dan pembagian+- : penjumlahan dan penguranganMOD : sisa hasil pembagianDIV : pembagian dgn hasil bil bulatABS : mempositifkan bil negatifINT : membulatkan bil realVAL : menumerikkan bil yang disimpan dalam

stringSQR : menghitung akar dariTRUNC: membulatkan keatas bil real

OPERASI TIPE DATA NUMERIK

Page 33: STRUKTUR DATA

Halaman 33

ANDadalah operasi yang melakukan pengecekan atas 2 kondisi. Jika kedua kondisi benar maka hasil operasi AND benar dan selain itu salah

ORpengecekan 2 kondisi, jika salah satu kondisi bernilai benar, maka hasil operasi OR benar, dan yang lain salah

NOTpengecekan atas 1 kondisi, jika kondisi benar, maka hasil NOT adalah salah.

OPERATOR LOGIKA & TIPE DATA LOGIKAL

Page 34: STRUKTUR DATA

Halaman 34

A = 100B = 70C = 40Jika nilai A >= 90 maka A Lulus …. Dst

IF-THENIF-AND-THENIF-OR-THEN

KOMBINASI OPERASI

Page 35: STRUKTUR DATA

Halaman 35

Tentukan nilai kebenaran suatu logika berikut:

Review Matematika Diskrit

A B AND

True True

True False

False True

False False

A B OR

True True

True False

False True

False False

A NOT

True

True

False

False

Page 36: STRUKTUR DATA

Halaman 36

Review Matematika II/ DiskritBerikan contoh operasi berikut:^ : perpangkatan*/ : perkalian dan pembagian+- : penjumlahan dan penguranganMOD : sisa hasil pembagianDIV : pembagian dgn hasil bil bulatABS : mempositifkan bil negatifINT : membulatkan bil realVAL : menumerikkan bil yang disimpan dalam

stringSQR : menghitung akar dariTRUNC: membulatkan keatas bil real