17
Perancangan dan Analisis Algoritma IF184401 Rully Soelaiman [email protected] Departemen Informatika Fakultas Teknologi Informasi dan Komunikasi Institut Teknologi Sepuluh Nopember

Perancangan dan Analisis Algoritma - subakti.com · rancangan algoritma yang optimal terhadap suatu model persoalan komputasi tertentu. 3. Peserta mata kuliah mampu menganalisis rancangan

  • Upload
    doquynh

  • View
    230

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Perancangan dan Analisis Algoritma - subakti.com · rancangan algoritma yang optimal terhadap suatu model persoalan komputasi tertentu. 3. Peserta mata kuliah mampu menganalisis rancangan

Perancangan dan

Analisis AlgoritmaIF184401

Rully Soelaiman

[email protected]

Departemen Informatika

Fakultas Teknologi Informasi dan Komunikasi

Institut Teknologi Sepuluh Nopember

Page 2: Perancangan dan Analisis Algoritma - subakti.com · rancangan algoritma yang optimal terhadap suatu model persoalan komputasi tertentu. 3. Peserta mata kuliah mampu menganalisis rancangan

1. Peserta mata kuliah dapat memodelkan persoalan komputasi secara algoritmik.

2. Peserta mata kuliah dapat menerapkan rancangan algoritma yang optimal terhadap suatu model persoalan komputasi tertentu.

3. Peserta mata kuliah mampu menganalisis rancangan algoritma yang meliputi aspek kebenaran dan kompleksitas.

4. Peserta mata kuliah mampu mengimplemen-tasikan rancangan algoritma dengan melibatkan struktur data yang efisien dengan menggunakan bahasa pemrograman berorientasi obyek (C++).

Page 3: Perancangan dan Analisis Algoritma - subakti.com · rancangan algoritma yang optimal terhadap suatu model persoalan komputasi tertentu. 3. Peserta mata kuliah mampu menganalisis rancangan

1. Chapter 02. Getting Started

2. Chapter 03. Growth of Functions

3. Chapter 04. Divide-and-Conquer

4. Chapter 15. Dynamic Programming

5. Chapter 16. Greedy Algorithms

6. Chapter 22. Elementary Graph Algorithms

7. Chapter 24. Single-Source Shortest Paths

8. Chapter 25. All-Pairs Shortest Paths

9. Chapter 33. Computational Geometry

Page 4: Perancangan dan Analisis Algoritma - subakti.com · rancangan algoritma yang optimal terhadap suatu model persoalan komputasi tertentu. 3. Peserta mata kuliah mampu menganalisis rancangan

Penelitian

Desain dan Analisis Algoritma

Page 5: Perancangan dan Analisis Algoritma - subakti.com · rancangan algoritma yang optimal terhadap suatu model persoalan komputasi tertentu. 3. Peserta mata kuliah mampu menganalisis rancangan

Penelitian

Desain dan Analisis Algoritma

Page 6: Perancangan dan Analisis Algoritma - subakti.com · rancangan algoritma yang optimal terhadap suatu model persoalan komputasi tertentu. 3. Peserta mata kuliah mampu menganalisis rancangan

Penelitian

Desain dan Analisis Algoritma

Page 7: Perancangan dan Analisis Algoritma - subakti.com · rancangan algoritma yang optimal terhadap suatu model persoalan komputasi tertentu. 3. Peserta mata kuliah mampu menganalisis rancangan

Publikasi Ilmiah

Page 8: Perancangan dan Analisis Algoritma - subakti.com · rancangan algoritma yang optimal terhadap suatu model persoalan komputasi tertentu. 3. Peserta mata kuliah mampu menganalisis rancangan

Referensi Utama

Page 9: Perancangan dan Analisis Algoritma - subakti.com · rancangan algoritma yang optimal terhadap suatu model persoalan komputasi tertentu. 3. Peserta mata kuliah mampu menganalisis rancangan

• Tugas (Analisis dan Coding) 50%

❑ Kelas atau Take Home

• Evaluasi Tengah Semester 20%

• Evaluasi Akhir Semester 20%

• Absensi 10%

Page 10: Perancangan dan Analisis Algoritma - subakti.com · rancangan algoritma yang optimal terhadap suatu model persoalan komputasi tertentu. 3. Peserta mata kuliah mampu menganalisis rancangan

• Algorithm

• Outline, the essence of a computational

procedure, step-by-step instructions

• Program – an implementation of an

algorithm in some programming language

• Data structure

• Organization of data needed to solve the

problem

Data Structures and Algorithms

Page 11: Perancangan dan Analisis Algoritma - subakti.com · rancangan algoritma yang optimal terhadap suatu model persoalan komputasi tertentu. 3. Peserta mata kuliah mampu menganalisis rancangan

Overall Picture

Data Structure and

Algorithm Design Goals

Implementation

Goals

Correctness

Efficiency

Robustness

Adaptability

Reusability

Page 12: Perancangan dan Analisis Algoritma - subakti.com · rancangan algoritma yang optimal terhadap suatu model persoalan komputasi tertentu. 3. Peserta mata kuliah mampu menganalisis rancangan

Sort

Example: Sorting

INPUTsequence of numbers

a1, a2, a3,….,anb1,b2,b3,….,bn

OUTPUTa permutation of the

sequence of numbers

2 5 4 10 7 2 4 5 7 10

Correctness

For any given input the algorithm

halts with the output:

• b1 < b2 < b3 < …. < bn

• b1, b2, b3, …., bn is a

permutation of a1, a2, a3,….,an

Running time

Depends on

• number of elements (n)

• how (partially) sorted

they are

• algorithm

Page 13: Perancangan dan Analisis Algoritma - subakti.com · rancangan algoritma yang optimal terhadap suatu model persoalan komputasi tertentu. 3. Peserta mata kuliah mampu menganalisis rancangan

Designing Algorithms

• Several techniques/patterns for designing

algorithms exist

• Incremental approach: builds the solution one

component at a time

• Divide-and-conquer approach: breaks original

problem into several smaller instances of the

same problem

Page 14: Perancangan dan Analisis Algoritma - subakti.com · rancangan algoritma yang optimal terhadap suatu model persoalan komputasi tertentu. 3. Peserta mata kuliah mampu menganalisis rancangan

SPOJ Problem Set (classical)

5196. Monotonous numbers

Page 15: Perancangan dan Analisis Algoritma - subakti.com · rancangan algoritma yang optimal terhadap suatu model persoalan komputasi tertentu. 3. Peserta mata kuliah mampu menganalisis rancangan

Kombinasi dengan Repetisi

Page 16: Perancangan dan Analisis Algoritma - subakti.com · rancangan algoritma yang optimal terhadap suatu model persoalan komputasi tertentu. 3. Peserta mata kuliah mampu menganalisis rancangan

SPOJ Problem Set (classical)

5196. Monotonous numbers• Solusi Kombinatorik

+

+=

−+

=

+−

+−

=8

1

!8

9

9

91

1101

N

Ni

i

N

N

N

N

N

Rasio

Page 17: Perancangan dan Analisis Algoritma - subakti.com · rancangan algoritma yang optimal terhadap suatu model persoalan komputasi tertentu. 3. Peserta mata kuliah mampu menganalisis rancangan

SPOJ Problem Set (classical)

5196. Monotonous numbers