algoritma & struktur data 2 - feryup.files.wordpress.com file• bisa menerapkan konsep algoritma &...

Click here to load reader

Post on 22-Mar-2019

229 views

Category:

Documents

1 download

Embed Size (px)

TRANSCRIPT

Algoritma & Struktur Data 2P-1

Fery Updi, M.Kom

1

Komponen Penilaian

1. Absen : 10%2. KAT* : 25 %3. UTS : 25 %4. UAS : 40 %

*)Kegiatan Akademik Terstruktur

2

Apa yang Anda harapkan dari kuliah ini?

Mencari nilai? Memahami konsep algoritma & struktur data ? Bisa menerapkan konsep algoritma & struktur data dalam

pemrograman ?

3

Praktikum

Praktikum mengikuti pokok bahasan

Tool: Dev-C++

4

Capaian Kompetensi Mahasiswa mampu:

1. Menggunakan pointer untuk mengalokasikan memori secara dinamis,

2. Menjelaskan konsep linked-list,

3. Mengimplementasikan linked-list dalam sebuah program sampai dengan menambahkan node-node baru dan list traversal,

5

Pokok Bahasan

Pointer dan Linked List

6

7

Pendahuluan

Ketika kita mempelajari suatu bahasa pemrograman, kita akanmenjumpai elemen-elemen yang pada dasarnya serupa antara satubahasa dengan bahasa yang lain.

Hal itu dikarenakan elemen-elemen tersebut merupakan bagian dari tatabahasa pemrograman yang bersangkutan

Definisi data adalah fakta atau kenyataan yang tercatat mengenai suatu

obyek. Pengertian data ini menyiratkan suatu nilai yang bisa dinyatakan

dalam bentuk konstanta atau variabel.

8

Struktur data adalah abstraksi model penyimpanan/pengaturan/susunandata di dalam memori/RAM komputer atau koleksi dari suatu variabelyang dapat dinyatakan dengan sebuah nama, dengan sifat setiap variabeldapat memiliki tipe yang berlainan.

Struktur data biasa dipakai untuk mengelompokkan beberapa informasiyang berkaitan menjadi sebuah kesatuan.

9

Struktur data diperlukan dalam rangka membuat programkomputer. Untuk menyusun sebuah program komputerdiperlukan tiga macam komponen dasar, yaitu:

1. Algoritma2. Bahasa Pemrograman3. Struktur Data

10

Aspek yang berkaitan dengan algoritma adalah efisiensialgoritma yang sering disebut ukuran algoritma. Ukuranalgoritma ditentukan oleh dua hal, yaitu:

1. Efisiensi waktu2. Efisiensi memori

11

Aspek yang berkaitan dengan bahasa pemrograman adalahmeliputi:

1. Sintaks2. Reserved word3. Function4. Procedure

12

Aspek yang berkaitan dengan struktur data adalah meliputi:

1. Nilai data (data value), yaitu numerik atau non numerik2. Relasi antar data3. Prosedur/fungsi atau operasi pada data

13

Operasi pada data dapat dibedakan menjadi dua macam, yaitu:

1. Operasi menambahkan (insert) data2. Operasi menghapus (delete) data

14

Pointer

Pointer adalah tipe data yang digunakan untuk menunjuk ke suatu data.Suatu variable yang bertipe pointer (variabel pointer) tidak berisi data,melainkan berisi alamat suatu data.

Di dalam komputer setiap lokasi data mempunyai alamat yang khas.Gambar berikut contoh suatu pointer yang menunjuk ke suatu data.

Berisi alamat variable x Data

15

Pointer

Pointer biasa digunakan sehubungan dengan pembentukanvariabel dinamis.

Variabel Dinamis adalah variabel yang bisa dialokasikan didalam memori atau dihapus dari memori ketika programdieksekusi.

Hal seperti ini banyak dipakai pada struktur data seperti linkedlist dan pohon biner.

16

Mendeklarasikan Variabel Pointer

Bentuk deklarasi variabel pointer :Contoh :

p adalah variabel pointer yang menunjuk ke data bertipedouble. Menyatakan pointer

Ke data bertipe double

Tipe data yang ditunjuk olehVariabel pointer p

17

Deklarasi Var pointer

Contoh lain:

18

Deklarasi Var pointer

Pada contoh ini, novel adalah variabel pointer yang menunjuk ke tipestruktur RekamanBuku. Gambarannya seperti berikut :

Yang ditunjuk oleh novel bertipe RekamanBuku

19

Deklarasi Var pointer

Supaya suatu variabel pointer menunjuk ke suatu variabel data,penugasan seperti berikut diperlukan :

Simbol & berarti alamat. Pernyataan di atas berarti bahwa : variabel_pointer diisi

dengan alamat variabel_data.

20

Mengakses data via pointer

Untuk melihat cara pengaksesan data melalui pointer, cobalahkode novel.cpp berikut :

21

Mengenal C++

C++ merupakan perluasan bahasa C dengan tambahan fasilitas kelas(Class).

Program C++ berupa sekumpulan fungsi. Bahkan program utama jugaberbentuk fungsi, yaitu fungsi main().

Kode C++ bersifat case sensitive, artinya membedakan antara hurufkapital dengan huruf kecil.

Bahasa C dan C++ merupakan bahasa yang sangat populer dalamdunia pengembangan perangkat lunak. Kedua bahasa ini digolongkanke dalam bahasa tingkat menengah (middle level language).

Keistimewaan dari bahasa C++ adalah karena bahasa ini mendukungpemrograman berarah objek / Object Oriented Programming (OOP).

22

Mengenal C++

Merupakan pengembangan bahasa C dan diberi kemampuan OOP. C++ merupakan subset dari bahasa C, maka pustaka yang ditulis

dalam bahasa C dapat dipergunakan dalam bahasa C++. Perbedaan antara C dan C++ adalah pada fungsi output untuk

menampilkan dilayar monitor dengan menggunakan cout

23

Next

Topik :

Pointer dan Array Dinamis, Linked List

24