Analisa Kompleksitas Algoritma. Sunu Wibirama

Ukuran: px
Mulai penontonan dengan halaman:

Download "Analisa Kompleksitas Algoritma. Sunu Wibirama"

Transkripsi

1 Analisa Kompleksitas Algoritma Sunu Wibirama

2 Referensi Cormen, T.H., Leiserson, C.E., Rivest, R.L., Stein, C., Introduction to Algorithms 2nd Edition, Massachusetts: MIT Press, 2002 Sedgewick, R., Algorithms in C++ Part 1-4, Massachusetts: Addison-Wesley Publisher, 1998 Video lecture MIT Opencourseware ke-1: Introduction Video lecture IIT Kharagpur, India ke-18: Complexity of Algorithm

3 Video lecture MIT Opencourseware ke-1: Introduction Video lecture IIT Kharagpur, India ke-18: Complexity of Algorithm

4 Agenda Hari Ini Pentingnya Analisa Algoritma Prinsip Perbandingan Algoritma Dasar-dasar Matematika dan Teori Big-O Contoh Implementasi Kesimpulan

5 Apa yang pertama kali Anda menjadi pertimbangan Anda saat membeli komputer, selain PERFORMA? Kehandalan dalam menyelesaikan masalah (robustness) Fungsionalitas (functionality) Tampilan grafis (user interface) Daya tahan (reliability) Keamanan (security) Kesederhanaan (simplicity) Kemudahan dalam penggunaan (user friendly) Kemudahan dalam pemeliharaan (maintainability)

6 Algoritma dan Performa Hal-hal yang menjadi pertimbangan utama Anda tidak muncul dengan gratis Performa sistem menjadi alat tukar seperti uang. Algoritma program memegang peran kunci Algoritma adalah teknologi, engineered, sebagaimana perangkat keras komputer

7 Pentingnya Analisa Algoritma Algoritma membantu kita memahami skalabilitas program kita Performa terkadang menjadi pembeda antara yang mungkin dilakukan dan yang tidak mungkin dilakukan Analisa algoritma memberi gambaran informasi tentang perilaku program kita Mempelajari bagaimana menerapkan algoritma yang baik untuk kasus tertentu membedakan profesi system analyst dan programmer

8 Prinsip Perbandingan Algoritma Apa yang membuat sebuah algoritma dikatakan LEBIH BAIK dari algoritma yang lain? Kompleksitas waktu (Time Complexity) Kecenderungan saat ini: ruang (hard disk) semakin murah Kompleksitas ruang (Space Complexity) kapasitas data yang diproses semakin besar waktu pemrosesan harus semakin cepat Kompleksitas waktu menjadi variabel yang sangat penting

9 Penyebab variasi pada hasil analisa algoritma Program aras tinggi diterjemahkan ke bahasa mesin. Setiap tipe prosesor memiliki prosedur bahasa mesin yang berbeda Aplikasi dijalankan di shared environment, sehingga terpengaruh oleh penggunaan memori Program sangat sensitif terhadap masukan dan akan menunjukkan performa yang jauh berbeda untuk rentang masukan yang tidak terlalu berbeda Program tidak dipahami dengan baik, sehingga analisa matematika kurang merepresentasikan kondisi yang sesungguhnya Program tersebut memang tidak bisa dibandingkan dengan program yang lain karena hanya optimal untuk input-input tertentu

10 Hal-hal yang perlu diperhatikan pada analisa algoritma Memisahkan operasi pada tingkat abstraksi dan implementasi. Contoh: menghitung jumlah instruksi scanf pada program lebih diprioritaskan daripada memahami berapa nanoseconds instruksi scanf dieksekusi Mengidentifikasi data masukan: - Strategi average dan worst case - Strategi random dan biggest data

11 Dasar Matematika & Teori Big-O Sebagian besar algoritma memiliki parameter primer N yang sangat mempengaruhi waktu eksekusi Parameter N bisa berupa: - derajat polinomial - ukuran berkas (file) yang diproses - jumlah karakter pada text string - ukuran data yang diproses Pengukuran kompleksitas: Big-O

12 cg(n) Teori Big-O f (n) Teorema Matematika: n 0 n f (n) = O(g(n)) (b) O(g(N)) = { f (N) : jika terdapat konstanta positif c dan N 0, sehingga 0 f (N) cg(n) untuk semua N N 0 } Engineering: Hilangkan orde yang lebih rendah dan konstanta. Gunakan hanya orde tertinggi pada polinomial Contoh: 3n n 2 5n = O(N 3 )

13 Macam-macam Parameter N 1 log N Sebagian besar instruksi dieksekusi satu kali atau dalam jumlah yang tidak terlalu banyak (waktu eksekusi konstan) Pertumbuhan waktu eksekusi program tidak terlalu cepat. Waktu eksekusi ini terdapat pada program yang memecahkan masalah dengan kapasitas yang cukup besar, dipecah-pecah menjadi beberapa bagian N Waktu eksekusi program linier. Sebagian besar masukan diproses dalam jumlah yang tidak terlalu banyak N log N Waktu eksekusi ini terdapat pada program yang memecahkan masalah menjadi beberapa bagian, menyelesaikannya secara terpisah, kemudian menggabungkannya kembali

14 Macam-macam Parameter N (cont d) N 2 Biasanya digunakan untuk memecahkan masalah dalam jumlah kecil. Biasanya terdapat pada program yang memproses pasangan data (quadratic) atau array dua dimensi secara bersamaan (double-nested loop) N 3 Biasanya digunakan untuk memecahkan masalah dalam jumlah kecil. Biasanya terdapat pada program yang memproses tiga buah data (cubic) atau array tiga dimensi secara bersamaan (triple-nested loop) 2 N Waktu eksekusi program linier. Sebagian besar masukan diproses dalam jumlah yang tidak terlalu banyak

15 Beberapa perbandingan kompleksitas algoritma O(N 2 ) Running Time (seconds) O(N!) O(N log N) O(N) O(1) O(log N) Figure 1-1: Comparison of different orders of complexity. Input size (N)

16 Formula Kondisi Periodik Sebagian besar algoritma terdiri dari proses penyelesaian masalah dengan memanfaatkan perulangan (rekursif) Bagian yang berulang tersebut secara tidak langsung berkontribusi pada kompleksitas sebuah algoritma Perlu mengetahui formula-formula dasar untuk kondisi periodik

17 Formula Kondisi Periodik Formula 1: kondisi periodik muncul pada program rekursif yang mengeliminasi satu item input Sedgewick, R., Algorithms in C++ Part 1-4, Massachusetts: Addison-Wesley Publisher, 1998

18 Formula Kondisi Periodik Formula 2: kondisi periodik muncul pada program rekursif yang membagi input menjadi dua bagian hanya dengan satu langkah Sedgewick, R., Algorithms in C++ Part 1-4, Massachusetts: Addison-Wesley Publisher, 1998

19 Formula Kondisi Periodik Formula 3: kondisi periodik muncul pada program rekursif yang membagi input menjadi dua bagian, namun perlu memeriksa tiap-tiap input Sedgewick, R., Algorithms in C++ Part 1-4, Massachusetts: Addison-Wesley Publisher, 1998

20 Formula Kondisi Periodik Formula 4: kondisi periodik muncul pada program rekursif yang mengolah input secara linear sebelum, pada saat, dan sesudah membagi input menjadi dua bagian Sedgewick, R., Algorithms in C++ Part 1-4, Massachusetts: Addison-Wesley Publisher, 1998

21 Formula Kondisi Periodik Formula 5: kondisi periodik muncul pada program rekursif yang membagi input menjadi dua bagian, kemudian mengerjakan input lain dengan kapasitas konstan Sedgewick, R., Algorithms in C++ Part 1-4, Massachusetts: Addison-Wesley Publisher, 1998

22 Jenis analisa waktu eksekusi Strategi Worst case (umum digunakan) T(N) = waktu eksekusi maksimum untuk jumlah data N Strategi Average case (jarang digunakan) T(N) = waktu yang diharapkan dari sebuah algoritma untuk mengeksekusi data sejumlah N. Perlu ada asumsi statistik untuk distribusi data masukan

23 Analisa worst case Biasanya mengambil batas maksimal (upper bound), untuk memberi jaminan bahwa program tidak akan terus berjalan saat batas maksimal waktu eksekusi tercapai Waktu eksekusi juga tergantung pada kondisi awal input : data yang sudah terproses akan lebih mudah dieksekusi daripada yang belum Untuk worst-case, diambil kemungkinan yang paling buruk (data tidak terproses sama sekali, pada kondisi yang berlawanan dengan kondisi akhir yang diharapkan)

24 Machine-independent Running Time Berapakah waktu eksekusi terburuk (worst-case) dari sebuah algoritma? Tergantung dari kecepatan mesin kita: - kecepatan relatif: berjalan di komputer yang sama - kecepatan absolut: berjalan di komputer yang berbeda Kita ingin mengukur kecepatan algoritma tanpa mempertimbangkan kecepatan komputer Analisa Asymptotic : Pertumbuhan waktu eksekusi T(N) saat N

25 Performa Asymptotic Pada jumlah data tertentu (> N0), algoritma dengan kompleksitas rendah O(n 2 ) bisa saja lebih efisien dibandingkan algoritma dengan kompleksitas tinggi Kita tidak boleh meremehkan sebuah algoritma yang secara asymptotic lebih lambat A2"3 O(n 2 ) O(n 3 ) Dalam disain riil, kita perlu menyeimbangkan proses engineering dengan melihat algoritma yang sesuai untuk masalah yang dihadapi " ", Analisa Asymptotic membantu kita untuk berlaku lebih adil terhadap algoritma yang kita gunakan

26 Teori Big-O Untuk membandingkan dua buah algoritma, bandingkan tingkat kompleksitasnya lim N f (N) g(n) Untuk N besar g(n) lebih efisien dari f(n) lim N f (N) g(n) 0 Untuk N besar f(n) lebih efisien dari g(n)

27 Implementasi: Insertion Sort!"#$%& 1"23"45"((? / *(? + *(6*(? " 78(43%&"'10 '$%#$%& #"'%3$9$:74((?A / B*?A + B*6B*?A " 135; $;9$((?A /?A + 6?A " 0 123*%)#4!"#$%& <((+((=((>((?((@ '$%#$%& +((?((=((@((<((> Cormen, T.H., Leiserson, C.E., Rivest, R.L., Stein, C., Introduction to Algorithms 2nd Edition, Massachusetts: MIT Press, 2002

28 Implementasi: Insertion Sort &%"> Cormen, T.H., Leiserson, C.E., Rivest, R.L., Stein, C., Introduction to Algorithms 2nd Edition, Massachusetts: MIT Press, 2002

29 Implementasi: Insertion Sort A#B"C>DED>"F 12! !645(8+*("9 +:/(0(0("; *(% A* + &( " +( ;>3* +:(A; )* A*B /,-'.$ )*C*, <=>(+:);(?(;>3 +( +:)D/;( +:); )* )*B / +:)D/;(@(;>3 +G / ) A " BD'$"> ;>3 Cormen, T.H., Leiserson, C.E., Rivest, R.L., Stein, C., Introduction to Algorithms 2nd Edition, Massachusetts: MIT Press, 2002

30 INSERTION-SORT(A) cost times 1 for j 2 to length[a] c 1 n 2 do key A[ j] c 2 n 1 3 Insert A[ j] intothesorted sequence A[1.. j 1]. 0 n 1 4 i j 1 c 4 n 1 5 while i > 0andA[i] > key c n 5 j=2 t j 6 do A[i + 1] A[i] c n 6 j=2 (t j 1) 7 i i 1 c n 7 j=2 (t j 1) 8 A[i + 1] key c 8 n 1 n T (n) = c 1 n + c 2 (n 1) + c 4 (n 1) + c 5 t j + c 6 n + c 7 (t j 1) + c 8 (n 1). j=2 j=2 n (t j 1) j=2 n j=2 j = n(n + 1) 2 and n ( j 1) = j=2 1 n(n 1) 2 ( ) n(n + 1) T (n) = c 1 n + c 2 (n 1) + c 4 (n 1) + c ( ) ( ) n(n 1) n(n 1) + c 6 + c 7 + c 8 (n 1) 2 2 ( c5 = 2 + c c ) ( 7 n 2 + c 1 + c 2 + c 4 + c c 6 2 c ) c 8 n (c 2 + c 4 + c 5 + c 8 ). + + O(n 2 )

31 Implementasi: Insertion Sort Worst-case (seluruh input diurutkan terbalik): N j =2 T (N) = O( j) = O(n 2 ) Deret aritmatika Apakah Insertion Sort algoritma yang cepat? - Ya, jika N kecil - Tidak, jika N besar Lihat perbandingannya dengan Merge Sort di slide berikutnya Cormen, T.H., Leiserson, C.E., Rivest, R.L., Stein, C., Introduction to Algorithms 2nd Edition, Massachusetts: MIT Press, 2002

32 Contoh komparasi Komputer A: Insertion Sort, lebih cepat untuk N kecil, memproses N data dengan waktu eksekusi Kecepatan eksekusi prosesor 10 9 instruksi/detik Komputer B: Merge Sort, lebih lambat untuk N kecil, memproses N data dengan waktu eksekusi c 1 N 2 Kecepatan eksekusi prosesor 10 7 instruksi/detik c 2 N log N Diketahui: c 1 c 2 Jika c1=2, c2=50, N = 10 6, mana algoritma yang lebih efisien?

33 Kesimpulan Analisa algoritma diperlukan untuk perbandingan algoritma tanpa tergantung spesifikasi mesin Analisa algoritma membantu kita memecahkan masalah sesuai kondisi dan data yang kita hadapi Analisa algoritma bukan alat mutlak untuk memilih algoritma terbaik, tapi membantu memahami perilaku algoritma saat diterapkan di dunia nyata

34 Terima Kasih

Algoritma dan Struktur Data

Algoritma dan Struktur Data Algoritma dan Struktur Data Click to edit Master subtitle style Pertemuan 3 Pengantar Analisis Efisiensi Algoritma Analisa efisiensi algoritma bertujuan mengestimasi waktu dan memori yang dibutuhkan untuk

Lebih terperinci

METODE PENELITIAN HASIL DAN PEMBAHASAN

METODE PENELITIAN HASIL DAN PEMBAHASAN 1 Dalam segi keamanan penyandian data algoritme IDEA mempunyai standar yang lebih sederhana namun cukup ampuh untuk mencegah serangan cryptanalysis terhadap kunci enkripsi dan dekripsi. Pembangkit kunci

Lebih terperinci

BAB III ANALISIS KOMPLEKSITAS ALGORITMA

BAB III ANALISIS KOMPLEKSITAS ALGORITMA BAB III ANALISIS KOMPLEKSITAS ALGORITMA 3.1 Kompleksitas Algoritma Suatu masalah dapat mempunyai banyak algoritma penyelesaian. Algoritma yang digunakan tidak saja harus benar, namun juga harus efisien.

Lebih terperinci

Pengantar Analisa Algoritma

Pengantar Analisa Algoritma Pengantar Analisa Algoritma Pendahuluan Suatu permasalahan memungkinkan untuk diselesaikan dengan lebih dari satu algoritma (pendekatan) Bagaimana kita memilih satu diantara beberapa algoritma tersebut.

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI 5 BAB 2 LANDASAN TEORI 2.1. Pengertian Algoritma Algoritma adalah prosedur komputasi yang didefinisikan dengan baik yang mengambil beberapa nilai yaitu seperangkat nilai sebagai input dan output yang menghasilkan

Lebih terperinci

Kompleksitas Algoritma

Kompleksitas Algoritma Kompleksitas Algoritma Sebuah algoritma tidak saja harus benar, tetapi juga harus mangkus (efisien). Algoritma yang bagus adalah algoritma yang mangkus. Kemangkusan algoritma diukur dari berapa jumlah

Lebih terperinci

Pendahuluan. Ukuran input (input s size)

Pendahuluan. Ukuran input (input s size) Kompleksitas Algoritma Sesi 14 Pendahuluan Sebuah algoritma tidak saja harus benar, tetapi juga harus mangkus (efisien). Algoritma yang mangkus ialah algoritma yang meminimumkan kebutuhan waktu dan ruang.

Lebih terperinci

Langkah Awal menuju Analisis Kompleksitas Algoritma

Langkah Awal menuju Analisis Kompleksitas Algoritma Langkah Awal menuju Analisis Kompleksitas Algoritma Isi Proses Desain dan Analisis Algoritma Tipe-tipe Problem yang penting Kebutuhan akan algoritma yang efisien Analisis framework 2 Proses Desain dan

Lebih terperinci

Logika dan Algoritma Yuni Dwi Astuti, ST 2

Logika dan Algoritma Yuni Dwi Astuti, ST 2 ALGORITMA Istilah algoritma pertama kali diperkenalkan oleh seorang ahli matematika yaitu Abu Ja far Muhammad Ibnu Musa Al Khawarizmi. Yang dimaksud dengan algoritma adalah : Urutan dari barisan instruksi

Lebih terperinci

Design and Analysis Algorithm

Design and Analysis Algorithm Design and Analysis Algorithm Pertemuan 02 Drs. Achmad Ridok M.Kom Fitra A. Bachtiar, S.T., M. Eng Imam Cholissodin, S.Si., M.Kom Aryo Pinandito, MT Contents 31 2 Analisis Algoritma Analisis Efisiensi

Lebih terperinci

Analisa dan Perancangan Algoritma. Ahmad Sabri, Dr Sesi 1: 9 Mei 2016

Analisa dan Perancangan Algoritma. Ahmad Sabri, Dr Sesi 1: 9 Mei 2016 Analisa dan Perancangan Algoritma Ahmad Sabri, Dr Sesi 1: 9 Mei 2016 Apakah algoritma itu? Asal istilah: Al Khwarizmi (± 800 M), matematikawan dan astronomer Persia. Pengertian umum: "suatu urutan langkah-langkah

Lebih terperinci

Algoritma Sorting (Selection Insertion)

Algoritma Sorting (Selection Insertion) Algoritma Sorting (Selection Insertion) Algoritma Insertion Sort Dengan Algoritma Insertion bagian kiri array terurut sampai seluruh array Misal pada data array ke-k, data tersebut akan disisipkan pada

Lebih terperinci

Penerapan Algoritma Bucket Sort Untuk melakukan Pengurutan n buah Bilangan Mata Kuliah Pemrosesan Paralel

Penerapan Algoritma Bucket Sort Untuk melakukan Pengurutan n buah Bilangan Mata Kuliah Pemrosesan Paralel Penerapan Algoritma Bucket Sort Untuk melakukan Pengurutan n buah Bilangan Mata Kuliah Pemrosesan Paralel OLEH : SUPRIYANTO (G651090191) OKE HENDRADHY (G651090101) KAMALUDDIN MAHFUDZ (G651090231) DEPARTEMEN

Lebih terperinci

Analisis Kecepatan Sorting Dengan Notasi Big O

Analisis Kecepatan Sorting Dengan Notasi Big O Analisis Kecepatan Sorting Dengan Notasi Big O Rama Aulia NIM : 13506023 Program Studi Teknik Informatika, Institut Teknologi Bandung Jl. Ganesha 10, Bandung E-mail : ramaaulia@yahoo.co.id Abstrak Sorting

Lebih terperinci

Studi Mengenai Perbandingan Sorting Algorithmics Dalam Pemrograman dan Kompleksitasnya

Studi Mengenai Perbandingan Sorting Algorithmics Dalam Pemrograman dan Kompleksitasnya Studi Mengenai Perbandingan Sorting Algorithmics Dalam Pemrograman dan Kompleksitasnya Ronny - 13506092 Jurusan Teknik Informatika Institut Teknologi Bandung Email : if16092@students.if.itb.ac.id 1. Abstract

Lebih terperinci

Algoritma dan Struktur Data. Performansi Algoritma

Algoritma dan Struktur Data. Performansi Algoritma Algoritma dan Struktur Data Performansi Algoritma Teknik Informatika Universitas Muhammadiyah Malang 2016 Mana yang lebih baik? pilihan 1 : Algoritma biasa dengan komputer yang cepat. pilihan 2 : Menggunakan

Lebih terperinci

Penyelesaian Barisan Rekursif dengan Kompleksitas Logaritmik Menggunakan Pemangkatan Matriks

Penyelesaian Barisan Rekursif dengan Kompleksitas Logaritmik Menggunakan Pemangkatan Matriks Penyelesaian Barisan Rekursif dengan Kompleksitas Logaritmik Menggunakan Pemangkatan Matriks Luqman Arifin Siswanto - 13513024 Program Sarjana Informatika Sekolah Teknik Elektro dan Informatika Institut

Lebih terperinci

Matematika Diskrit Kompleksitas Algoritma. Instruktur : Ferry Wahyu Wibowo, S.Si., M.Cs.

Matematika Diskrit Kompleksitas Algoritma. Instruktur : Ferry Wahyu Wibowo, S.Si., M.Cs. Matematika Diskrit Kompleksitas Algoritma Instruktur : Ferry Wahyu Wibowo, S.Si., M.Cs. Pendahuluan Sebuah masalah dapat mempunyai banyak algoritma penyelesaian. Contoh: masalah pengurutan (sort), ada

Lebih terperinci

Analisis dan Strategi Algoritma

Analisis dan Strategi Algoritma Analisis dan Strategi Algoritma Deskripsi Mata Kuliah Konsep dasar analisis algoritma Beberapa jenis algoritma 28/02/2011 2 Standar Kompetensi Mahasiswa mampu membandingkan beberapa algoritma dan menentukan

Lebih terperinci

Kompleksitas Algoritma Rank Sort dan Implementasi pada Parallel Programming Dengan Menggunakan OpenMP

Kompleksitas Algoritma Rank Sort dan Implementasi pada Parallel Programming Dengan Menggunakan OpenMP Kompleksitas Algoritma Rank Sort dan Implementasi pada Parallel Programming Dengan Menggunakan OpenMP Muhammad Indra NS - 23515019 1 Program Magister Informatika Sekolah Teknik Elektro dan Informatika

Lebih terperinci

Design and Analysis of Algorithm

Design and Analysis of Algorithm Design and Analysis of Algorithm Week 3: Notasi Asymptotic dan Kelas Dasar Efisiensi Dr. Putu Harry Gunawan 1 1 Department of Computational Science School of Computing Telkom University Dr. Putu Harry

Lebih terperinci

Kompleksitas Algoritma Dalam Algoritma Pengurutan

Kompleksitas Algoritma Dalam Algoritma Pengurutan Kompleksitas Algoritma Dalam Algoritma Pengurutan Rio Cahya Dwiyanto Jurusan Teknik Informatika ITB, Bandung, email: kasrut_desu@yahoo.co.id Abstract Makalah ini membahas tetang beberapa algoritma, terutama

Lebih terperinci

Komputasi Paralel Sebagai Alternatif Solusi Peningkatan Kinerja Komputasi

Komputasi Paralel Sebagai Alternatif Solusi Peningkatan Kinerja Komputasi Thomas Anung Basuki Komputasi Paralel Sebagai Alternatif Solusi Peningkatan Kinerja Komputasi Intisari Makalah ini membahas komputasi paralel pada jaringan komputer menggunakan PVM. Untuk memperjelas,

Lebih terperinci

Kompleksitas Algoritma

Kompleksitas Algoritma Kompleksitas Algoritma Bahan Kuliah IF2120 Matematika Disktit Rinaldi M/IF2120 Matdis 1 Rinaldi M/IF2120 Matdis 2 Pendahuluan Sebuah masalah dapat mempunyai banyak algoritma penyelesaian. Contoh: masalah

Lebih terperinci

Hubungan Kompleksitas Algoritma dengan Cara Belajar

Hubungan Kompleksitas Algoritma dengan Cara Belajar Hubungan Kompleksitas Algoritma dengan Cara Belajar Ryan Ignatius Hadiwijaya / 13511070 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10

Lebih terperinci

PENGGUNAAN BIG O NOTATION UNTUK MENGANALISA EFISIENSI ALGORITMA

PENGGUNAAN BIG O NOTATION UNTUK MENGANALISA EFISIENSI ALGORITMA PENGGUNAAN BIG O NOTATION UNTUK MENGANALISA EFISIENSI ALGORITMA Ikhsan Fanani NIM : 13505123 Program Studi Teknik Informatika, Institut Teknologi Bandung Jl. Ganesha 10, Bandung E-mail : ikhsan_fanani@yahoo.com

Lebih terperinci

Langkah Awal menuju Analisis Kompleksitas Algoritma

Langkah Awal menuju Analisis Kompleksitas Algoritma Langkah Awal menuju Analisis Kompleksitas Algoritma Analisis dan Strategi Algoritma CS3024-FAZ 1 Isi Proses Desain dan Analisis Algoritma Tipe-tipe Problem yang penting Kebutuhan akan algoritma yang efisien

Lebih terperinci

BAB 3 ANALISA SISTEM

BAB 3 ANALISA SISTEM BAB 3 ANALISA SISTEM Untuk merancang sebuah sistem dengan baik maka dibutuhkan analisa yang tepat agar proses desain sistem lebih terarah dan memudahkan untuk mengimplementasikan sistem. 3.1 Analisa Analisis

Lebih terperinci

Analisis Algoritma. Jimmy Tirtawangsa. Universitas Telkom 2014

Analisis Algoritma. Jimmy Tirtawangsa. Universitas Telkom 2014 Analisis Algoritma Jimmy Tirtawangsa Universitas Telkom 2014 Daftar Isi (1) Motivasi (2) Kompleksitas dan Optimalitas (3) Struktur data (4) Teknik 2 analisis algoritma (5) Struktur graf (6) Problem Sulit/Intraktabel

Lebih terperinci

Analisis Algoritma Bubble Sort

Analisis Algoritma Bubble Sort Analisis Algoritma Bubble Sort Ryan Rheinadi NIM : 13508005 Program Studi Teknik Informatika, Sekolah Teknik Elektro dan Informatika, Institut Teknologi Bandung Jalan Ganesha 10, Bandung e-mail: if18005@students.if.itb.ac.id

Lebih terperinci

Kompleksitas Algoritma dalam Strategi Algoritma Sorting

Kompleksitas Algoritma dalam Strategi Algoritma Sorting Kompleksitas Algoritma dalam Strategi Algoritma Sorting Emilia Andari Razak/13515056 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung

Lebih terperinci

PROGRAM STUDI S1 SISTEM KOMPUTER UNIVERSITAS DIPONEGORO. Oky Dwi Nurhayati, ST, MT email: okydn@undip.ac.id

PROGRAM STUDI S1 SISTEM KOMPUTER UNIVERSITAS DIPONEGORO. Oky Dwi Nurhayati, ST, MT email: okydn@undip.ac.id PROGRAM STUDI S1 SISTEM KOMPUTER UNIVERSITAS DIPONEGORO Oky Dwi Nurhayati, ST, MT email: okydn@undip.ac.id Kinerja yang perlu ditelaah pada algoritma: beban komputasi efisiensi penggunaan memori Yang perlu

Lebih terperinci

Algoritma Heap Sort. Sekolah Teknik Elektro & Informatika Departemen Teknik Informatika, Institut Teknologi Bandung Jl. Ganesha 10, Bandung

Algoritma Heap Sort. Sekolah Teknik Elektro & Informatika Departemen Teknik Informatika, Institut Teknologi Bandung Jl. Ganesha 10, Bandung Algoritma Heap Sort Paul Gunawan Hariyanto 1, Dendy Duta Narendra 2, Ade Gunawan 3 Sekolah Teknik Elektro & Informatika Departemen Teknik Informatika, Institut Teknologi Bandung Jl. Ganesha 10, Bandung

Lebih terperinci

RENCANA PEMBELAJARAN SEMESTER (RPS)

RENCANA PEMBELAJARAN SEMESTER (RPS) RENCANA PEMBELAJARAN SEMESTER (RPS) IKG2F4 ANALISIS DAN PERANCANGAN ALGORITMA Disusun oleh: Z K Abdurahman Baizal PROGRAM STUDI S1 ILMU KOMPUTASI FAKULTAS INFORMATIKA TELKOM UNIVERSITY LEMBAR PENGESAHAN

Lebih terperinci

Metode Numerik & Lab. Muhtadin, ST. MT. Metode Numerik & Komputasi. By : Muhtadin

Metode Numerik & Lab. Muhtadin, ST. MT. Metode Numerik & Komputasi. By : Muhtadin Metode Numerik & Lab Muhtadin, ST. MT. Agenda Intro Rencana Pembelajaran Ketentuan Penilaian Deret Taylor & McLaurin Analisis Galat Metode Numerik & Lab - Intro 3 Tujuan Pembelajaran Mahasiswa memiliki

Lebih terperinci

ANALISIS PERBANDINGAN ALGORITMA BUBBLE SORT, MERGE SORT, DAN QUICK SORT DALAM PROSES PENGURUTAN KOMBINASI ANGKA DAN HURUF

ANALISIS PERBANDINGAN ALGORITMA BUBBLE SORT, MERGE SORT, DAN QUICK SORT DALAM PROSES PENGURUTAN KOMBINASI ANGKA DAN HURUF ANALISIS PERBANDINGAN ALGORITMA BUBBLE SORT, MERGE SORT, DAN QUICK SORT DALAM PROSES PENGURUTAN KOMBINASI ANGKA DAN HURUF Anisya Sonita 1, Febrian Nurtaneo 2 1,2 Program Studi Informatika, Fakultas Teknik,

Lebih terperinci

Perbandingan Performa Algoritma Greedy dan Dynamic Programming

Perbandingan Performa Algoritma Greedy dan Dynamic Programming Perbandingan Performa Algoritma dan Pratamamia Agung Prihatmaja (NIM 13515142) Program Studi Teknik Informatikan Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha No. 10 Bandung

Lebih terperinci

Quick Sort dan Merge Sort. Arna Fariza Yuliana Setiowati

Quick Sort dan Merge Sort. Arna Fariza Yuliana Setiowati Quick Sort dan Merge Sort Arna Fariza Yuliana Setiowati Ide Quicksort Tentukan pivot. Bagi Data menjadi 2 Bagian yaitu Data kurang dari dan Data lebih besar dari pivot. Urutkan tiap bagian tersebut secara

Lebih terperinci

Kompleksitas Algoritma

Kompleksitas Algoritma Kompleksitas Algoritma Pendahuluan Sebuah algoritma tidak saja harus benar, tetapi juga harus mangkus (efisien). Algoritma yang bagus adalah algoritma yang mangkus. Kemangkusan algoritma diukur dari berapa

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI BAB II LANDASAN TEORI 2.1. Algoritma Istilah algoritma (algorithm) berasal dari kata algoris dan ritmis, yang pertama kali diungkapkan oleh Abu Ja far Mohammed Ibn Musa al Khowarizmi (825 M) dalam buku

Lebih terperinci

BAB VI SORTIR ATAU PENGURUTAN

BAB VI SORTIR ATAU PENGURUTAN BAB VI SORTIR ATAU PENGURUTAN SORTIR TERHADAP RECORD File adalah Himpunan record, misalkan suatu perusahaan mempunyai file yang berisi seluruh data yang diperlukan oleh perusahaan itu tentang para pegawainya.

Lebih terperinci

Komparasi Algoritma Quicksort dan Bucket Sort pada Pengurutan Data Integer

Komparasi Algoritma Quicksort dan Bucket Sort pada Pengurutan Data Integer Komparasi Algoritma Quicksort dan Bucket Sort pada Pengurutan Data Integer Audy Program Studi Teknik Informatika, Universitas Multimedia Nusantara, Tangerang, Indonesia audytanudjaja@gmail.com Diterima

Lebih terperinci

Kompleksitas Algoritma

Kompleksitas Algoritma Kompleksitas Algoritma Pendahuluan Mengapa kita memerlukan algoritma yang mangkus? Waktu komputasi (dalam detik) 10 5 10 4 10 3 10 2 1 0 1 10-1 1 hari 1 jam 1 detik 1 menit 5 1 0 1 5 2 0 10-4 x 2 n 10-6

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1. Algoritma Secara informal, sebuah algoritma adalah prosedur komputasi yang didefinisikan dengan baik yang mengambil beberapa nilai, atau seperangkat nilai sebagai input dan menghasilkan

Lebih terperinci

ANALISIS ALGORITMA. Disusun Oleh: Analisis Masalah dan Running Time. Adam Mukharil Bachtiar Teknik Informatika UNIKOM

ANALISIS ALGORITMA. Disusun Oleh: Analisis Masalah dan Running Time. Adam Mukharil Bachtiar Teknik Informatika UNIKOM ANALISIS ALGORITMA Analisis Masalah dan Running Time Disusun Oleh: Adam Mukharil Bachtiar Teknik Informatika UNIKOM adfbipotter@gmail.com AGENDA PERKULIAHAN DEFINISI MASALAH f x = a 0 + a n cos nπx +

Lebih terperinci

SORTING. Hartanto Tantriawan, S.Kom., M.Kom

SORTING. Hartanto Tantriawan, S.Kom., M.Kom SORTING DASAR PEMROGRAMAN Hartanto Tantriawan, S.Kom., M.Kom TUJUAN PERKULIAHAN Mahasiswa mengetahui konsep mengurutkan sekumpulan elemen Mahasiswa dapat menggunakan teknik sorting dalam kasus yang diberikan

Lebih terperinci

Analisis Kompleksitas Waktu Untuk Beberapa Algoritma Pengurutan

Analisis Kompleksitas Waktu Untuk Beberapa Algoritma Pengurutan Analisis Kompleksitas Waktu Untuk Beberapa Algoritma Pengurutan Dibi Khairurrazi Budiarsyah, 13509013 1 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung,

Lebih terperinci

Pendahuluan. Sebuah algoritma tidak saja harus benar, tetapi juga harus efisien. Algoritma yang bagus adalah algoritma yang efektif dan efisien.

Pendahuluan. Sebuah algoritma tidak saja harus benar, tetapi juga harus efisien. Algoritma yang bagus adalah algoritma yang efektif dan efisien. Pendahuluan Sebuah algoritma tidak saja harus benar, tetapi juga harus efisien. Algoritma yang bagus adalah algoritma yang efektif dan efisien. Algoritma yang efektif diukur dari berapa jumlah waktu dan

Lebih terperinci

JARINGAN UNTUK MERGING

JARINGAN UNTUK MERGING SORTING - Merging Definisi: A = {a 1, a 2,..., a r } B = {b 1, b 2,..., b s } merupakan dua deret angka yang terurut naik; merge A dan B merupakan deret C = {c 1, c 2,..., c r+s } yang juga terurut naik,

Lebih terperinci

ALGORITHM. 2 Analysis Algorithm. Dahlia Widhyaestoeti, S.Kom dahlia74march.wordpress.com

ALGORITHM. 2 Analysis Algorithm. Dahlia Widhyaestoeti, S.Kom dahlia74march.wordpress.com ALGORITHM 2 Analysis Algorithm Dahlia Widhyaestoeti, S.Kom dahlia.widhyaestoeti@gmail.com dahlia74march.wordpress.com Analysis Suatu Algoritma Studi yang menyangkut analis algoritma ada 2 hal : 1. Perbandingan

Lebih terperinci

BAB 2 LANDASAN TEORI. 2.1 Algoritma

BAB 2 LANDASAN TEORI. 2.1 Algoritma 13 BAB 2 LANDASAN TEORI 2.1 Algoritma Dalam matematika dan komputasi, algoritma merupakan kumpulan perintah untuk menyelesaikan suatu masalah. Perintah-perintah ini dapat diterjemahkan secara bertahap

Lebih terperinci

Saintek Vol 5, No 2 Tahun 2010 ANALISIS EDIT DISTANCE MENGGUNAKAN ALGORITMA DYNAMIC PROGRAMMING. Arip Mulyanto

Saintek Vol 5, No 2 Tahun 2010 ANALISIS EDIT DISTANCE MENGGUNAKAN ALGORITMA DYNAMIC PROGRAMMING. Arip Mulyanto Saintek Vol 5, No 2 Tahun 2010 ANALISIS EDIT DISTANCE MENGGUNAKAN ALGORITMA DYNAMIC PROGRAMMING Arip Mulyanto Fakultas Teknik Universita Negeri Gorontalo Abstract Edit distance merupakan jumlah minimum

Lebih terperinci

Pengelompokan Organisme Dengan Menggunakan Algoritma Kruskal

Pengelompokan Organisme Dengan Menggunakan Algoritma Kruskal Pengelompokan Organisme Dengan Menggunakan Algoritma Kruskal Alif Raditya Rochman - 151101 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha

Lebih terperinci

APLIKASI PENERJEMAH KALIMAT BAHASA INDONESIA KE BAHASA SIMALUNGUN DENGAN ALGORITMA BERRY - RAVINDRAN

APLIKASI PENERJEMAH KALIMAT BAHASA INDONESIA KE BAHASA SIMALUNGUN DENGAN ALGORITMA BERRY - RAVINDRAN APLIKASI PENERJEMAH KALIMAT BAHASA INDONESIA KE BAHASA SIMALUNGUN DENGAN ALGORITMA BERRY - RAVINDRAN Saut Dohot Siregar 1*, Mawaddah Harahap 2, Yohana Marbun 3 1,2,3 Program Studi Teknik Informatika, Fakultas

Lebih terperinci

Struktur Data dan Analisa Algoritma

Struktur Data dan Analisa Algoritma Struktur Data dan Analisa Algoritma Mahasiswa mampu menjelaskan teknik dasar abstraksi data, dalam bentuk struktur data Mahasiswa mampu menyelesaikan permasalahan dengan memanfaatkan struktur data Mahasiswa

Lebih terperinci

Kontrak Perkuliahan & Introduction

Kontrak Perkuliahan & Introduction Kontrak Perkuliahan & Introduction Algoritma dan Pemrograman Tahar Agastani Teknik Informatika UIN - 2008 Deskripsi Mata Kuliah Mata Kuliah : Algoritma dan Pemrograman Jumlah SKS : 4 SKS Dosen : Ir. Tahar

Lebih terperinci

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI 17 BAB II LANDASAN TEORI 2.1 Algoritma Dalam matematika dan komputasi, algoritma merupakan kumpulan perintah untuk menyelesaikan suatu masalah. Perintah-perintah ini dapat diterjemahkan secara bertahap

Lebih terperinci

BAB I PENDAHULUAN Latar Belakang

BAB I PENDAHULUAN Latar Belakang 1 BAB I PENDAHULUAN 1.1. Latar Belakang Teknologi informasi sudah berkembang sangat pesat pada masa ini. Pencarian informasi yang berjumlah besar dalam waktu yang singkat sangat dibutuhkan sebagai upaya

Lebih terperinci

RENCANA PEMBELAJARAN SEMESTER (RPS)

RENCANA PEMBELAJARAN SEMESTER (RPS) RENCANA PEMBELAJARAN SEMESTER (RPS) CSG3F3 DESAIN DAN ANALISIS ALGORITMA Disusun oleh: Gia Septiana Wulandari Rimba Widhiana Cipta Sari PROGRAM STUDI S1 TEKNIK INFORMATIKA FAKULTAS INFORMATIKA TELKOM UNIVERSITY

Lebih terperinci

Outline STRUKTUR DATA. VII. Sorting

Outline STRUKTUR DATA. VII. Sorting STRUKTUR DATA VII. Sorting 1 Outline Beberapa algoritma untuk melakukan sorting: Bubble sort Selection sort Insertion sort Shell sort Merge sort Quick sort Untuk masing-masing algoritma: Ide dasar Contoh

Lebih terperinci

SATUAN ACARA PERKULIAHAN (SAP)

SATUAN ACARA PERKULIAHAN (SAP) SATUAN ACARA PERKULIAHAN (SAP) MATA KULIAH KODE / SKS PROGRAM STUDI : REKAYASA KOMPUTASIONAL (d/h Metode Numerik) : TI / 2 SKS : TEKNIK INFORMAA Pertemu Pokok Bahasan an ke dan 1 Pendahuluan-1 Agar mahasiswa

Lebih terperinci

QUICKSORT: METODE PENGURUTAN ARRAY SATU DIMENSI YANG CEPAT DAN EFISIEN. (Quicksort: Quick and Efficient One-Dimension Array Sorting Method)

QUICKSORT: METODE PENGURUTAN ARRAY SATU DIMENSI YANG CEPAT DAN EFISIEN. (Quicksort: Quick and Efficient One-Dimension Array Sorting Method) 1 QUICKSORT: METODE PENGURUTAN ARRAY SATU DIMENSI YANG CEPAT DAN EFISIEN (Quicksort: Quick and Efficient One-Dimension Array Sorting Method) Muhammad Saiful Islam Program Studi D-IV Teknik Informatika

Lebih terperinci

Sebuah algoritma tidak saja harus benar, tetapi juga harus mangkus (efisien). Algoritma yang bagus adalah algoritma yang mangkus.

Sebuah algoritma tidak saja harus benar, tetapi juga harus mangkus (efisien). Algoritma yang bagus adalah algoritma yang mangkus. Waktu komputasi (dalam detik) Kompleksitas Algoritma Sebuah algoritma tidak saja harus benar, tetapi juga harus mangkus (efisien). Algoritma yang bagus adalah algoritma yang mangkus. Kemangkusan algoritma

Lebih terperinci

BAB 2 LANDASAN TEORI

BAB 2 LANDASAN TEORI BAB 2 LANDASAN TEORI 2.1 Algoritma Algoritma berasal dari nama ilmuwan muslim dari Uzbekistan, Abu Ja far Muhammad bin Musa Al-Khuwarizmi (780-846M). Pada awalnya kata algoritma adalah istilah yang merujuk

Lebih terperinci

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA 6 BAB II TINJAUAN PUSTAKA 2.1. Algoritma Algortima adalah jantung ilmu komputer atau informatika. Banyak cabang dari ilmu komputer yang diacu dalam terminologi algoritma, misalnya algoritma perutean (routing)

Lebih terperinci

Bubble Sort dan Shell-Sort. Yuliana Setiowati

Bubble Sort dan Shell-Sort. Yuliana Setiowati Bubble Sort dan Shell-Sort Yuliana Setiowati Bubble Sort Disebut juga exchange sort : metode yang mengurutkan data dengan cara membandingkan masing2 elemen, kemudian melakukan penukaran bila perlu. Algoritma

Lebih terperinci

Perbandingan Performa Kombinasi Algoritma Pengurutan Quick-Insertion Sort dan Merge-Insertion Sort

Perbandingan Performa Kombinasi Algoritma Pengurutan Quick-Insertion Sort dan Merge-Insertion Sort Perbandingan Performa Kombinasi Algoritma Pengurutan Quick-Insertion Sort dan Merge-Insertion Sort Muhammad Ezar Al Rivan Teknik Informatika STMIK GI MDP Palembang, Indonesia meedzhar@mdp.ac.id Abstrak

Lebih terperinci

AnalisisFramework. Mengukur ukuran atau jumlah input Mengukur waktu eksekusi Tingkat pertumbuhan Efiesiensi worst-case, best-case dan average-case

AnalisisFramework. Mengukur ukuran atau jumlah input Mengukur waktu eksekusi Tingkat pertumbuhan Efiesiensi worst-case, best-case dan average-case AnalisisFramework Review Tujuan analisa : mengukur efesiensi algoritma Efisiensi diukur dari diukur dari: waktu (time) dan memori(space). Dua besaran yang digunakan: kompleksitas algoritma 1. Kompleksitas

Lebih terperinci

Pohon Biner Sebagai Struktur Data Heap dan Aplikasinya

Pohon Biner Sebagai Struktur Data Heap dan Aplikasinya Pohon Biner Sebagai Struktur Data Heap dan Aplikasinya Muhammad Adinata/13509022 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung

Lebih terperinci

BAB II TINJAUAN PUSTAKA

BAB II TINJAUAN PUSTAKA BAB II TINJAUAN PUSTAKA 2.1 Deret Taylor Deret Taylor dinamai berdasarkan seorang matematikawan Inggris, Brook Taylor (1685-1731) dan deret Maclaurin dinamai berdasarkan matematikawan Skotlandia, Colin

Lebih terperinci

Perbandingan Algoritma Pencarian Kunci di dalam Himpunan Terurut Melalui Linear Search dan Binary Search

Perbandingan Algoritma Pencarian Kunci di dalam Himpunan Terurut Melalui Linear Search dan Binary Search Perbandingan Algoritma Pencarian Kunci di dalam Himpunan Terurut Melalui Linear Search dan Binary Search Biolardi Yoshogi (13509035) Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika

Lebih terperinci

KOMPUTASI PADA JARINGAN KOMPUTER SEBAGAI ALTERNATIF PENINGKATAN KINERJA KOMPUTASI

KOMPUTASI PADA JARINGAN KOMPUTER SEBAGAI ALTERNATIF PENINGKATAN KINERJA KOMPUTASI KOMPUTASI PADA JARINGAN KOMPUTER SEBAGAI ALTERNATIF PENINGKATAN KINERJA KOMPUTASI Saat ini peningkatan kecepatan prosesor sangat luar biasa. Meskipun kecepatan processor dapat ditingkatkan terus, namun

Lebih terperinci

Aplikasi OBE Untuk Mengurangi Kompleksitas Algoritma Program Penghitung Determinan Matriks Persegi

Aplikasi OBE Untuk Mengurangi Kompleksitas Algoritma Program Penghitung Determinan Matriks Persegi Aplikasi OBE Untuk Mengurangi Kompleksitas Algoritma Program Penghitung Determinan Matriks Persegi Alif Bhaskoro / 13514016 Program Studi Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi

Lebih terperinci

ANALISIS PERBANDINGAN ALGORITMA SELECTION SORT DENGAN MERGE SORT

ANALISIS PERBANDINGAN ALGORITMA SELECTION SORT DENGAN MERGE SORT ANALISIS PERBANDINGAN ALGORITMA SELECTION SORT DENGAN MERGE SORT Disusun untuk memenuhi tugas UTS mata kuliah : Analisis Algoritma Oleh : Eka Risky Firmansyah 1110091000043 Program Studi Teknik Informatika

Lebih terperinci

Menghitung Inversion Pada Barisan Dengan Menggunakan Modifikasi Bubble Sort, Insertion Sort, dan Merge Sort

Menghitung Inversion Pada Barisan Dengan Menggunakan Modifikasi Bubble Sort, Insertion Sort, dan Merge Sort Menghitung Inversion Pada Barisan Dengan Menggunakan Modifikasi Bubble Sort, Insertion Sort, dan Merge Sort M Iqbal Tawakal - 0706271954 Abstract Paper ini akan menjelaskan mengenai cara menghitung inversion

Lebih terperinci

Jurnal Mahajana Informasi, Vol.1 No 2, 2016 e-issn: SIMULASI PENGURUTAN DATA DENGAN ALGORITMA HEAP SORT

Jurnal Mahajana Informasi, Vol.1 No 2, 2016 e-issn: SIMULASI PENGURUTAN DATA DENGAN ALGORITMA HEAP SORT SIMULASI PENGURUTAN DATA DENGAN ALGORITMA HEAP SORT Harold Situmorang Program Studi Sistem Informasi Universitas Sari Mutiara Indonesia Haroldsitumorang@gmail.com ABSTRAK Struktur data dari algoritma Heap

Lebih terperinci

Algoritma dan Struktur Data. Algoritma Pengurutan (Sorting)

Algoritma dan Struktur Data. Algoritma Pengurutan (Sorting) Algoritma dan Struktur Data Algoritma Pengurutan (Sorting) Tujuan Instruksional Memahami algoritma pengurutan Mengerti algoritma bubble, selection, insertion, merge sort Topik Algoritma pengurutan Bubble

Lebih terperinci

Algoritma dan Kompleksitas Algoritma

Algoritma dan Kompleksitas Algoritma Algoritma dan Kompleksitas Algoritma Algoritma Algoritma adalah urutan logis langkah-langkah penyelesaian masalah yang ditinjau secara sistematis. Asal Usul Algoritma Kata ini tidak muncul dalam kamus

Lebih terperinci

Design and Analysis Algorithm. Ahmad Afif Supianto, S.Si., M.Kom. Pertemuan 04

Design and Analysis Algorithm. Ahmad Afif Supianto, S.Si., M.Kom. Pertemuan 04 Design and Analysis Algorithm Ahmad Afif Supianto, S.Si., M.Kom Pertemuan 04 Contents 31 2 Asymptotic Analysis Brute Force Algorithm 1 2 Asymptotic Analysis Asymptotic Notation Think of n as the number

Lebih terperinci

Kompleksitas Algoritma

Kompleksitas Algoritma Kompleksitas Algoritma 1 Pendahuluan Sebuah masalah dapat mempunyai banyak algoritma penyelesaian. Contoh: masalah pengurutan (sort), ada puluhan algoritma pengurutan Sebuah algoritma tidak saja harus

Lebih terperinci

ANALISIS ALGORITMA BINARY SEARCH

ANALISIS ALGORITMA BINARY SEARCH ANALISIS ALGORITMA BINARY SEARCH Metode Binary search Binary search merupakan salah satu algoritma untuk melalukan pencarian pada array yang sudah terurut. Jika kita tidak mengetahui informasi bagaimana

Lebih terperinci

BAB II TINJAUAN PUSTAKA. Kriptografi (cryptography) berasal dari Bahasa Yunani: cryptós artinya

BAB II TINJAUAN PUSTAKA. Kriptografi (cryptography) berasal dari Bahasa Yunani: cryptós artinya BAB II TINJAUAN PUSTAKA 2.1 Kriptografi Kriptografi (cryptography) berasal dari Bahasa Yunani: cryptós artinya secret (rahasia), sedangkan gráphein artinya writing (tulisan), jadi kriptografi berarti secret

Lebih terperinci

STRATEGI DIVIDE AND CONQUER

STRATEGI DIVIDE AND CONQUER Pemrogram bertanggung jawab atas implementasi solusi. Pembuatan program akan menjadi lebih sederhana jika masalah dapat dipecah menjadi sub masalah - sub masalah yang dapat dikelola. Penyelesaian masalah

Lebih terperinci

Design and Analysis of Algorithms CNH2G3- Week 5 Kompleksitas waktu algoritma rekursif part 2: Metode Karakteristik

Design and Analysis of Algorithms CNH2G3- Week 5 Kompleksitas waktu algoritma rekursif part 2: Metode Karakteristik Design and Analysis of Algorithms CNH2G3- Week 5 Kompleksitas waktu algoritma rekursif part 2: Metode Karakteristik Dr. Putu Harry Gunawan (PHN Review 1. Tentukan kompleksitas waktu Big-Oh untuk relasi

Lebih terperinci

Setelah mempelajari topik Analisis Algoritma di kuliah SDA, ada beberapa kompetensi yang perlu Anda kuasai:

Setelah mempelajari topik Analisis Algoritma di kuliah SDA, ada beberapa kompetensi yang perlu Anda kuasai: Setelah mempelajari topik Analisis Algoritma di kuliah SDA, ada beberapa kompetensi yang perlu Anda kuasai: Menentukan kompleksitas waktu (Big-Oh) dari beberapa algoritma (logaritmik, linier, kuadratik,

Lebih terperinci

Variasi Pohon Pencarian Biner Seimbang

Variasi Pohon Pencarian Biner Seimbang Variasi Pohon Pencarian Biner Seimbang Tony 13516010 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha 10 Bandung 40132, Indonesia buddy90_lost@yahoo.co.id

Lebih terperinci

EXERCISE WORKBOOK MI /2012#07

EXERCISE WORKBOOK MI /2012#07 XRCIS WORKBOOK 1 IDNTITAS Kajian Perulangan Topik Dasar Logika Perulangan Referensi [1] Sedgewick, Robert. Algorithms. Marly-le-Roi: Addison-Wesley Publishing Company, 1983 [2] Cormen, Thomas H., Charles.

Lebih terperinci

Perbandingan Algoritma Brute Force, Divide and conquer, dan Dynamic Programming untuk Solusi Maximum Subarray Problem

Perbandingan Algoritma Brute Force, Divide and conquer, dan Dynamic Programming untuk Solusi Maximum Subarray Problem Perbandingan Algoritma Brute Force, Divide and conquer, dan Dynamic Programming untuk Solusi Maximum Subarray Problem Reinhard Denis Najogie - 13509097 Program Studi Teknik Informatika Sekolah Teknik Elektro

Lebih terperinci

BAB II TINJAUAN PUSTAKA. Kriptografi adalah ilmu sekaligus seni untuk menjaga keamanan pesan (message).

BAB II TINJAUAN PUSTAKA. Kriptografi adalah ilmu sekaligus seni untuk menjaga keamanan pesan (message). BAB II TINJAUAN PUSTAKA 2.1 Kriptografi Kriptografi adalah ilmu sekaligus seni untuk menjaga keamanan pesan (message). Kata cryptography berasal dari kata Yunani yaitu kryptos yang artinya tersembunyi

Lebih terperinci

EFISIENSI ALGORITMA DAN NOTASI O-BESAR

EFISIENSI ALGORITMA DAN NOTASI O-BESAR EFISIENSI ALGORITMA DAN NOTASI O-BESAR Subandijo Computer Science Department, School of Computer Science Binus University Jl. K.H. Syahdan No. 9, Palmerah, Jakarta Barat 11480 subandijo1030@gmail.com ABSTRACT

Lebih terperinci

Pendahuluan Metode Numerik

Pendahuluan Metode Numerik Pendahuluan Metode Numerik Obyektif : 1. Mengerti Penggunaan metode numerik dalam penyelesaian masalah. 2. Mengerti dan memahami penyelesaian masalah menggunakan grafik maupun metode numeric. Pendahuluan

Lebih terperinci

c. Membeli komputer d. Proses 2. Sebuah prosedur langkah demi langkah yang pasti untuk menyelesaikan sebuah masalah disebut : a. Proses b.

c. Membeli komputer d. Proses 2. Sebuah prosedur langkah demi langkah yang pasti untuk menyelesaikan sebuah masalah disebut : a. Proses b. 1. Dalam menyusun suatu program, langkah pertama yang harus dilakukan adalah : a. Membuat program b. Membuat Algoritma c. Membeli komputer d. Proses e. Mempelajari program 2. Sebuah prosedur langkah demi

Lebih terperinci

Sorting. Struktur Data dan Algoritma. Suryana Setiawan, Ruli Manurung & Ade Azurat (acknowledgments: Denny) Fasilkom UI

Sorting. Struktur Data dan Algoritma. Suryana Setiawan, Ruli Manurung & Ade Azurat (acknowledgments: Denny) Fasilkom UI Struktur Data dan Algoritma Sorting Suryana Setiawan, Ruli Manurung & Ade Azurat (acknowledgments: Denny) Fasilkom UI SUR HMM AA Fasilkom UI - IKI20100/ IKI80110P 2009/2010 Ganjil Minggu 5 Outline Beberapa

Lebih terperinci

OPTIMASI ALGORITMA POHON MERENTANG MINIMUM KRUSKAL

OPTIMASI ALGORITMA POHON MERENTANG MINIMUM KRUSKAL OPTIMASI ALGORITMA POHON MERENTANG MINIMUM KRUSKAL Karol Danutama / 13508040 Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung Jalan Selat Bangka IV no 6 Duren Sawit Jakarta Timur e-mail:

Lebih terperinci

Sorting Algorithms. Algoritma dan Struktur Data. Sorting algorithms

Sorting Algorithms. Algoritma dan Struktur Data. Sorting algorithms 1. Insertion 2. Selection 3. Bubble 4. Shell 5. Quick 6. Merge Sorting Algorithms Sorting algorithms Metode Insertion, selection dan bubble sort memiliki worst-case performance yang bernilai quadratik

Lebih terperinci

UNIVERSITAS GUNADARMA

UNIVERSITAS GUNADARMA UNIVERSITAS GUNADARMA SK No. 92 / Dikti / Kep /1996 Fakultas Ilmu Komputer, Teknologi Industri, Ekonomi,Teknik Sipil & Perencanaan, Psikologi, Sastra Program Diploma (D3) Manajemen Informatika, Teknik

Lebih terperinci

BAB III ANALISIS DAN PERANCANGAN SISTEM

BAB III ANALISIS DAN PERANCANGAN SISTEM BAB III ANALISIS DAN PERANCANGAN SISTEM 3.1. Analisis Sistem Analisis sistem adalah suatu bentuk penguraian suatu sistem informasi yang yang lengkap ke dalam bagian-bagian komponennya dengan tujuan mengindentifikasi

Lebih terperinci

Pengkajian Algoritma Pengurutan-Tanpa-Pembandingan Counting Sort dan Radix Sort

Pengkajian Algoritma Pengurutan-Tanpa-Pembandingan Counting Sort dan Radix Sort Pengkajian lgoritma Pengurutan-Tanpa-Pembandingan ounting Sort dan Radix Sort Dominikus Damas Putranto, NIM 13506060 Program Studi Teknik Informatika IT, andung 40132 email: if16060@studentsifitbacid bstract

Lebih terperinci

Sieve of Eratosthenes dan Aplikasinya Dalam Problem Solving

Sieve of Eratosthenes dan Aplikasinya Dalam Problem Solving Sieve of Eratosthenes dan Aplikasinya Dalam Problem Solving Christianto - NIM : 1350003 1 Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung, Jl. Ganesha

Lebih terperinci

Black-Box Testing. Julian Supardi, M.T. Sumber Slide: Oerip S. Diterjemahkan Oleh: Rosa Ariani Sukamto.

Black-Box Testing. Julian Supardi, M.T. Sumber Slide: Oerip S. Diterjemahkan Oleh: Rosa Ariani Sukamto. Black-Box Testing Julian Supardi, M.T Sumber Slide: Oerip S Diterjemahkan Oleh: Rosa Ariani Sukamto. www.gangsir.com 1 Pendahuluan Black-Box Testing terfokus pada spesifikasi fungsional dari perangkat

Lebih terperinci