![Page 1: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/1.jpg)
Algoritma & Struktur Data 2P-1
Fery Updi, M.Kom
1
![Page 2: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/2.jpg)
Komponen Penilaian
1. Absen : 10%2. KAT* : 25 %3. UTS : 25 %4. UAS : 40 %
*)Kegiatan Akademik Terstruktur
2
![Page 3: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/3.jpg)
Apa yang Anda harapkan dari kuliah ini?
• Mencari nilai?• Memahami konsep algoritma & struktur data ?• Bisa menerapkan konsep algoritma & struktur data dalam
pemrograman ?
3
![Page 4: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/4.jpg)
Praktikum
• Praktikum mengikuti pokok bahasan
• Tool: Dev-C++
4
![Page 5: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/5.jpg)
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
![Page 6: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/6.jpg)
Pokok Bahasan
•Pointer dan Linked List
6
![Page 7: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/7.jpg)
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.
![Page 8: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/8.jpg)
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.
![Page 9: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/9.jpg)
9
Struktur data diperlukan dalam rangka membuat programkomputer. Untuk menyusun sebuah program komputerdiperlukan tiga macam komponen dasar, yaitu:
1. Algoritma2. Bahasa Pemrograman3. Struktur Data
![Page 10: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/10.jpg)
10
Aspek yang berkaitan dengan algoritma adalah efisiensialgoritma yang sering disebut ukuran algoritma. Ukuranalgoritma ditentukan oleh dua hal, yaitu:
1. Efisiensi waktu2. Efisiensi memori
![Page 11: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/11.jpg)
11
Aspek yang berkaitan dengan bahasa pemrograman adalahmeliputi:
1. Sintaks2. Reserved word3. Function4. Procedure
![Page 12: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/12.jpg)
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
![Page 13: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/13.jpg)
13
Operasi pada data dapat dibedakan menjadi dua macam, yaitu:
1. Operasi menambahkan (insert) data2. Operasi menghapus (delete) data
![Page 14: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/14.jpg)
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
![Page 15: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/15.jpg)
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.
![Page 16: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/16.jpg)
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
![Page 17: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/17.jpg)
17
Deklarasi Var pointer
Contoh lain:
![Page 18: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/18.jpg)
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
![Page 19: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/19.jpg)
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.
![Page 20: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/20.jpg)
20
Mengakses data via pointer
Untuk melihat cara pengaksesan data melalui pointer, cobalahkode novel.cpp berikut :
![Page 21: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/21.jpg)
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).
![Page 22: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/22.jpg)
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 <<
#include<iostream.h>int main(){
cout <<"Selamat menggunakan C++";return 0;
}
![Page 23: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/23.jpg)
23
Next
Topik :
Pointer dan Array Dinamis, Linked List
![Page 24: Algoritma & Struktur Data 2 - feryup.files.wordpress.com file• Bisa menerapkan konsep algoritma & struktur data dalam pemrograman ? 3. Praktikum •Praktikum mengikuti pokok bahasan](https://reader030.vdocuments.site/reader030/viewer/2022013114/5c9475d909d3f2c7468c352b/html5/thumbnails/24.jpg)
24