Anlisis Algoritm: Anny Levitin, Introduction to Design nd Anlysis o Algorithm, 3 rd Edition, Person Eduction, Inc., Addison-Wesley Agend. B 4: Decrese-nd-Conquer Deinition Insertion Sort Topologicl Sort Fkults Teknologi dn Desin Progrm Studi Teknik 1-1 Inormtik Anlisis Algoritm 2 Deinition Decrese-nd-conquer, seuh teknik yng erdsr pd relsi ntr solusi untuk sutu ksus dn solusi untuk gin yng leih kecil dri ksus terseut. Pendektn yng digunkn: top-down-pproch tu ottom-uppproch (incrementl pproch) 3 entuk vrisi dri teknik decrese-nd-conquer: 1. decrese y constnt; 2. decrese y constnt ctor; 3. vrile size decrese Decrese y Constnt Vrition. Ukurn ksus diperkecil (reduce) dengn nili konstnt yng sm pd setip itersi seuh lgoritm. Pd umumny nili konstntny dlh 1. Contoh ksus: Decrese y constnt. 89 12 57 8 16 25 11 Prolem: Urutkn deret ilngn ck di ts menggunkn metode selection sort yng mengkomodir decrese-y-constnt! Anlisis Algoritm 3 Anlisis Algoritm 4 1
Ltihn 1. Ksus: Decrese y constnt. U N I V E R S I T A S Prolem 1: Tunjukkn penerpn decrese-y-constnt untuk mengurutkn lphet ck di ts menggunkn metode selection sort! Insertion Sort. Insertion sort menggunkn metode decrese-y-constnt untuk melkukn proses pengurutn sutu deret. Contoh ksus: Insertion sort. Prolem: Tentukn prosedur pengurutn deret secr scending menggunkn metode sorting insertion sort! Anlisis Algoritm 5 Anlisis Algoritm 6 Insertion Sort Ltihn 2. Ksus: Insertion Sort Prolem: Urutkn deret ilngn di wh ini menggunkn metode sorting insertion sort! 89 12 57 16 25 11 75 Decrese y Constnt Fctor Vrition. Ukurn ksus diperkecil (reduce) dengn nili ktor konstnt yng sm pd setip itersi seuh lgoritm. Pd umumny nili ktor konstntny dlh 2. Beerp lgoritm vrisi decrese-nd-conquer ini dlh: inry serch; dn russin pesnt multiiction. Anlisis Algoritm 7 Anlisis Algoritm 8 2
Decrese y Constnt Fctor Vrition. Binry Serch. Binry serch dlh seuh lgoritm yng digunkn untuk mencri nili tertentu, ik pd sutu deret ilngn yng ck tu telh terurut. Contoh ksus: Prosedur pencrin ilngn semrng tertentu. Prolem: Tentukn prosedur untuk melkukn pencrin sutu ilngn pd sutu deret terurut tertentu. Anlisis Algoritm: Anny Levitin, Introduction to Design nd Anlysis o Algorithm, 3 rd Edition, Person Eduction, Inc., Addison-Wesley Anlisis Algoritm 9 Fkults Teknologi dn Desin Progrm Studi Teknik 1-10 Inormtik Ltihn 3. Ksus: Pencrin ilngn tertentu semrng. 12 20 34 41 80 89 100 Prolem 1: Tentukn pseudocode untuk melkukn pencrin ilngn 80 pd deret terurut dits. Russin Pesnt Multipliction. Russin pesnt multipliction dlh lgoritm yng digunkn untuk mencri hsil perklin 2 uh ilngn ult positi, ik ilngn positi genp mupun gnjil. Terdpt 2 ormul yng digunkn dlm lgoritm ini erdsrkn jenis ilngn n: Jik n merupkn ilngn genp Anlisis Algoritm 11 Anlisis Algoritm 12 3
Jik n merupkn ilngn gnjil Contoh ksus: Russin pesnt multipliction. 50 * 65 Prolem: Selesikn opersi perklin dits menggunkn lgoritm russin pesnt multipliction. Anlisis Algoritm 13 Anlisis Algoritm 14 Vrile Size Decrese Vrition. Ukurn ksus erkurng (size-reduction) dri opersi lgoritm seelumny. Algoritm yng menggunkn vrin decrese-nd-conquer ini dlh Euclid s lgorithm. gcd(m, n) = gcd(n, m mod n) Topologicl sorting (toposort): merupkn sutu urutn liner setip simpul dimn setip uv yng sling terhuung secr lngsung (direct), simpul u muncul seelum simpul v dlm sutu urutn. Topologicl sorting menerpkn lgoritm trversl yng diterpkn pd metode serching DFS (depth irst serch) dn disjikn dlm entuk digrph/direct grph. Untuk merepresntiskn digrph, mk digunkn djcency mtrix dn djcency list. Anlisis Algoritm 15 Anlisis Algoritm 16 4
Adjcency mtrix, menggmrkn huungn ntr simpul dlm entuk mtriks. Adjcency list, menggmrkn huungn ntr simpul yng diwkili oleh edge. Adjcency mtrix dn djcency list merupkn dsr dri lgoritm DFS untuk digrph. Penerpn lgoritm DFS untuk grph pd umumny dlm entuk stck penelusurn dn pohon DFS. Contoh digrph. Gmr digrph dismping dpt diurikn menjdi: tree edges (, c, de) ck edges () orwrd edges (c) cross edges (dc) Anlisis Algoritm 17 Anlisis Algoritm 18 Contoh ksus: DFS lgorithm d c Ltihn 4. Prolem: Tentukn pohon DFS, djcency mtrix dn djcency list 2 uh grph di wh ini! c g e c d e Prolem 1: Tentukn djcency mtrix, djcency list dn stck penelusurn grph di ts! d () e () g Anlisis Algoritm 19 Anlisis Algoritm 20 5
Prolem 2: Terpkn lgoritm DFS pd grph di wh ini untuk menentukn stck penelusurn dn pohon DFS! d c d e Pd digrph, lgoritm DFS digunkn untuk menentukn stck penelusurn (trversl stck) untuk menentukn popping-order. Popping-order digunkn untuk menentukn topologicl sorting yng dihsilkn. Contoh ksus: Topology sorting & source-removel lgorithm Prolem: Tentukn topology sorted list digrph di smping! Anlisis Algoritm 21 Anlisis Algoritm 22 Contoh ksus: Topology sorting & source-removel lgorithm Prolem 1: Tentukn topology sorted list digrph di smping! 1). DFS 2). popping-o order Ltihn 4. Prolem 1: Tentukn topology sorted list digrph dn urutkn simpulsimpul erikut erdsrkn source-removel lgorithm! Prolem 2: Dengn menerpkn lgoritm source-removel lgorithm, urutkn simpul-simpul terseut! Anlisis Algoritm 23 Anlisis Algoritm 24 6
Anlisis Algoritm: Anny Levitin, Introduction to Design nd Anlysis o Algorithm, 3 rd Edition, Person Eduction, Inc., Addison-Wesley 1-25 7