Buble sorting

20
Tugas presentasi kelompok ganjil PTI-E Abi Makruf P (130533608097) Asnita Meydelia C.K (130533608143) Nuralifya U.M (130533608093) Reni Dwi Astutik (130533608139) Rizky Dwi Hidayat (130533608123)

Transcript of Buble sorting

Page 1: Buble sorting

Tugas presentasikelompok ganjil

PTI-E

Abi Makruf P (130533608097)

Asnita Meydelia C.K (130533608143)

Nuralifya U.M (130533608093)

Reni Dwi Astutik (130533608139)

Rizky Dwi Hidayat (130533608123)

Page 2: Buble sorting

Pengantar singkat

Bubble Sort adalah salah satu algoritma untuk sorting data, atau kata lainnya mengurutkan data dari yang terbesar ke yang terkecil atau sebaliknya (Ascending atau Descending).

Pengurutan secara descending adalah pengurutan sejumlah data dimana data yang lebih kecil nilainya akan ditukar dengan nilai lainnya yang lebih besar, lebih mudahnya pengurutan data dari nilai terbesar ke nilai yang terkecil

Page 3: Buble sorting

Urutkan A [23 1 19 87 12 3 20 13] secara Descending dan bertahap menggunakan Bubble Sort

langkah 1

a b c d e f g h Posisi data

23 1 19 87 12 3 80 13 Data awal

23 1 19 87 12 80 3 13 Tukar data “f”dengan “g”

23 1 87 19 12 80 3 13 Tukar data “d”dengan “c”

23 87 1 19 12 80 3 13 Tukar data “c”dengan “b”

23 87 1 19 80 12 3 13 Tukar data “f” dengan “e”

23 87 1 19 80 12 3 13 Tukar data “b” dengan “a”

87 23 1 19 80 12 3 13 FINAL 1

Soal 1

Page 4: Buble sorting

langkah 2

a b c d e f g h Posisi data

87 23 1 19 80 12 3 13 Data langkah 1 akhir

87 23 1 80 19 12 3 13 Tukar data “e”dengan “d”

87 23 80 1 19 12 3 13 Tukar data “d”dengan “c”

87 80 23 1 19 12 3 13 Tukar data “c”dengan “b”

87 80 23 19 1 12 3 13 Tukar data “e” dengan “d”

87 80 23 19 1 12 13 3 Tukar data “h” dengan “g”

87 80 23 19 1 12 13 3 FINAL 2

Page 5: Buble sorting

langkah 3

a b c d e f g h Posisi data

87 80 23 19 1 12 13 3 Data langkah 2 akhir

87 80 23 19 1 13 12 3 Tukar data “f”dengan “g”

87 80 23 19 13 1 12 3 Tukar data “e”dengan “f”

87 80 23 19 13 12 1 3 Tukar data “f”dengan “g”

87 80 23 19 13 12 3 1 Tukar data “g” dengan “h”

87 80 23 19 13 12 3 1 Data terurut

Page 6: Buble sorting

ALGORITMA Deklarasi header

#include<iostream>

#include<conio.h>

using namespace std;

Deskripsi array

main()

{

int NumList[8]={23, 1, 19, 87, 12, 3, 80, 13};

int temp;

Page 7: Buble sorting

Deskripsi fungsi bubble sort

for(int i1=0; i1<7; i1++)

for(int ii1=0; ii1<7; ii1++)

if(NumList[ii1] <= NumList[ii1+1]){

temp = NumList[ii1];

NumList[ii1]=NumList[ii1+1];

NumList[ii1+1] = temp;

}

Deskripsi output

cout<<"\n\nData setelah diurutkan (Descending) : \n";

for(int iii1=0; iii1<8; iii1++)

cout<<setw(3)<<NumList[iii1]<<" ";

cout<<endl;

}

Page 8: Buble sorting

Hasil program

Page 9: Buble sorting

Pengurutan secara ascending kebalikan dari descending dimana data yang lebih besar nilainya akan ditukar dengan nilai lainnya yang lebih kecil, lebih mudahnya pengurutan data dari nilai terkecil ke nilai yang terbesar.

Pengantar singkat 2

Page 10: Buble sorting

Urutkan juga 4 kata berikut: No Mercy For Piracy

Soal 2

Langkah 1

A B C D Posisi data

No Mercy For Piracy Data awal

N F M P Tukar data “C” dengan “B”

N F M P FINAL 1

Page 11: Buble sorting

Langkah 2

A B C D Posisi data

N F M P FINAL 1

F N M P Tukar data “B” dengan “A”

F N M P FINAL 2

Page 12: Buble sorting

Langkah 3

A B C D Posisi data

F N M P FINAL 2

F M N P Tukar data “B” dengan “A”

F M N P DATA TERURUT

Page 13: Buble sorting

ALGORITMA Deklarasi header

#include <string.h>

#include <iostream>

using namespace std;

Deklarasi variabel

int main()

{

int i;

char *list[] = {"No", "Mercy", "For", "Piracy", " "};

Page 14: Buble sorting

Deskripsi fungsi bubble

void bubble(char *string[], const int size)

{

int pass, i;

char *temp;

for (pass=0; pass < size - 1; pass++) {

for (i=0; i<size - 1; i++) {

if (strcmp(string[i], string[i+1]) > 0) { //strcmp digunakan utk mengcopy string

temp = string[i]; //temp digunakan utk penyimpanan sementara string[i]

string[i] = string[i+1];

string[i+1] = temp;

}

}

}

}

Page 15: Buble sorting

Deskripsi pemanggil fungsi bubble

bubble(list, sizeof(*list)); //fungsi bubble

cout << "Sorted List:\n";

for (i = 0; i < sizeof(*list)+1; i++) {

cout << i << " " << list[i] << endl;

}

Page 16: Buble sorting

Hasil Program

Page 17: Buble sorting

Pengantar singkat 3

Merge Sort adalah metode pengurutan data dengan cara menggabungkan 2 kumpulan data yang akan dijadikan satu dalam kumpulan data.

Page 18: Buble sorting

Mengurutkan A [23 1 19 87 12 3 20 13] dengan metode merge sort

Deklarasi header

#include <stdlib.h>

#include <iostream>

using namespace std;

Deklarasi variable

void mergeSort(int arr1[], int arr2[], int arr3[], int size1, int size2,

int& size3);

void swap(int& x, int& y);

int main()

{

int nums1[4] = { 23, 1, 19, 87};

int nums2[4] = { 12,3, 20, 13};

int nums3[8];

int size1 = 4;

int size2 = 4;

int size3;

int k;

Soal 3

Page 19: Buble sorting

Deskripsi merge sort

void mergeSort(int arr1[4], int arr2[4], int arr3[8], int size1, int size2, int& size3)

{

int pos1 = 0, pos2 = 0, pos3 = 0;

while (pos1 < size1 && pos2 < size2)

if (arr1[pos1] < arr2[pos2])

arr3[pos3++] = arr1[pos1++];

else

arr3[pos3++] = arr2[pos2++];

if (pos1 < size1)

while (pos1 < size1)

arr3[pos3++] = arr1[pos1++];

else

while (pos2 < size2)

arr3[pos3++] = arr2[pos2++];

size3 = size1 + size2;

}

Page 20: Buble sorting

Hasil program