SlideShare a Scribd company logo
1 of 11
Download to read offline
1 Disusun oleh tim Asisten | Laboratorium Teknologi Informasi dan Komunikasi
MODUL PRAKTIKUM
“STRUKTUR DATA”
Modul 4 : Sorting
Dosen Pembimbing : Xaverius Najoan, ST. MT.
Bahasa Pemrograman : C
Software : Notepad++ dan GCC
LABORATORIUM TEKNOLOGI INFORMASI DAN KOUNIKASI
UNIVERSITAS SAM RATULANGI
2012
2 Disusun oleh tim Asisten | Laboratorium Teknologi Informasi dan Komunikasi
TUJUAN
1. Mahasiswa dapat memahami metode-metode pengurutan
2. Mahasiswa dapat menggunakan metode-metode pengurutan untuk memecahkan masalah
ALAT DAN BAHAN
1. PC
2. Compiler (GCC)
3. Text Editor (Notepad++)
DASAR TEORI
Sorting adalah suatu proses pengurutan data yang sebelumnya disusun secara acak atau tidak
teratur menjadi urut dan teratur menurut suatu aturan tertentu. Biasanya pengurutan terbagi menjadi 2
bagian, yaitu : ascending (pengurutan dari angka/karakter kecil ke angka/karakter besar) dan descending
(pengurutan dari angka/karakter besar ke angka/karakter kecil).
Untuk melakukan proses pengurutan dapat menggunakan beberapa metode, antara lain :
 Bubble sort
 Selection sort
 Insertion sort
BUBBLE SORT
Bubble sort adalah suatu metode pengurutan yang membandingkan elemen yang sekarang dengan
elemen berikutnya. Pembandingan elemen dapat dimulai dari data yang paling awal atau data yang paling
akhir. Jika perbandingan tersebut sesuai dengan kondisi, maka data langsung ditukar.
Misalkan terdapat data-data sebagai berikut :
5 1 4 2 8
3 Disusun oleh tim Asisten | Laboratorium Teknologi Informasi dan Komunikasi
Langkah Pertama :
( 5 1 4 2 8 ) ( 1 5 4 2 8 ), disini 2 elemen pertama dibandingkan kemudian ditukar karena 5 > 1
( 1 5 4 2 8 ) ( 1 4 5 2 8 ), ditukar karena 5 > 4
( 1 4 5 2 8 ) ( 1 4 2 5 8 ), ditukar karena 5 > 2
( 1 4 2 5 8 ) ( 1 4 2 5 8 ), karena urutan sudah sesuai (5 < 8), maka tidak ditukar
Langkah Kedua :
( 1 4 2 5 8 ) ( 1 4 2 5 8 )
( 1 4 2 5 8 ) ( 1 2 4 5 8 ), ditukar karena 4 > 2
( 1 2 4 5 8 ) ( 1 2 4 5 8 )
( 1 2 4 5 8 ) ( 1 2 4 5 8 )
Langkah Ketiga :
( 1 2 4 5 8 ) ( 1 2 4 5 8 )
( 1 2 4 5 8 ) ( 1 2 4 5 8 )
( 1 2 4 5 8 ) ( 1 2 4 5 8 )
( 1 2 4 5 8 ) ( 1 2 4 5 8 )
Langkah Keempat :
( 1 2 4 5 8 ) ( 1 2 4 5 8 )
( 1 2 4 5 8 ) ( 1 2 4 5 8 )
( 1 2 4 5 8 ) ( 1 2 4 5 8 )
( 1 2 4 5 8 ) ( 1 2 4 5 8 )
Langkah Kelima :
( 1 2 4 5 8 ) ( 1 2 4 5 8 )
( 1 2 4 5 8 ) ( 1 2 4 5 8 )
( 1 2 4 5 8 ) ( 1 2 4 5 8 )
( 1 2 4 5 8 ) ( 1 2 4 5 8 )
4 Disusun oleh tim Asisten | Laboratorium Teknologi Informasi dan Komunikasi
SELECTION SORT
Selection Sort adalah suatu metode pengurutan yang membandingkn elemen yang sekarang dengan
elemen berikutnya sampai ke elemen yang terakhir. Jika ditemukan elemen lain yang lebih kecil / lebih
besar (sesuai kondisi) dari elemen yang sekarang, maka dicatat posisinya dan langsung ditukar.
Misalkan terdapat data-data sebagai berikut :
5 1 4 2 8
Langkah Pertama :
Posisi : 0 1 2 3 4
Data : 5 1 4 2 8
Index = 0
5 < 1, karena pernyataan bernilai false maka index = 1
1 < 4, index = 1
1 < 2, index = 1
1 < 8, index = 1
Tukar elemen 0 dan elemen 1, menjadi :
Posisi : 0 1 2 3 4
Data : 1 5 4 2 8
Langkah Kedua :
Posisi : 0 1 2 3 4
Data : 1 5 4 2 8
Index = 1
5 < 2, index = 2
4 < 2, index = 3
2 < 8, index = 3
Tukar elemen 1 dan elemen 3, menjadi :
Posisi : 0 1 2 3 4
Data : 1 2 4 5 8
5 Disusun oleh tim Asisten | Laboratorium Teknologi Informasi dan Komunikasi
Langkah Ketiga :
Posisi : 0 1 2 3 4
Data : 1 2 4 5 8
Index = 2
4 < 5, index = 2
4 < 8, index = 2
Tidak ada penukaran, sehingga :
Posisi : 0 1 2 3 4
Data : 1 2 4 5 8
Langkah Keempat :
Posisi : 0 1 2 3 4
Data : 1 2 4 5 8
Index = 3
5 < 8, index = 3
Tidak ada penukaran, sehingga :
Posisi : 0 1 2 3 4
Data : 1 2 4 5 8
Langkah Kelima :
Posisi : 0 1 2 3 4
Data : 1 2 4 5 8
Index = 4
Tidak ada penukaran, sehingga :
Posisi : 0 1 2 3 4
Data : 1 2 4 5 8
6 Disusun oleh tim Asisten | Laboratorium Teknologi Informasi dan Komunikasi
INSERTION SORT
Insertion sort merupakan salah satu algoritma pengurutan dengan cara menyisipkan jika
menemukan nilai yang lebih kecil / lebih besar (sesuai dengan kondisi). Sehingga algoritma ini
menyelesaikan pengurutan secara bertahap dari kiri ke kanan atau sebaliknya.
Misalkan terdapat data-data sebagai berikut :
5 1 4 2 8
Langkah Pertama :
Posisi : 0 1 2 3 4
Data : 5 1 4 2 8
tmp cek geser
1 5 > 1 data pada posisi [0] pindah pada posisi [1]
Tmp menempati posisi [0]
Posisi : 0 1 2 3 4
Data : 1 5 4 2 8
Langkah Kedua :
Posisi : 0 1 2 3 4
Data : 1 5 4 2 8
tmp cek geser
4 5 > 4 data pada posisi [1] pindah pada posisi [2]
1 < 4
Tmp menempati posisi [1]
Posisi : 0 1 2 3 4
Data : 1 4 5 2 8
7 Disusun oleh tim Asisten | Laboratorium Teknologi Informasi dan Komunikasi
Langkah Ketiga :
Posisi : 0 1 2 3 4
Data : 1 4 5 2 8
tmp cek geser
2 5 > 2 data pada posisi [2] pindah pada posisi [3]
4 > 2 data pada posisi [1] pindah pada posisi [2]
1 < 2
Tmp menempati posisi [1]
Posisi : 0 1 2 3 4
Data : 1 2 4 5 8
Langkah Keempat :
Posisi : 0 1 2 3 4
Data : 1 2 4 5 8
tmp cek geser
8 5 < 8
4 < 8
2 < 8
1 < 8
Tmp menempati posisi [4]
Posisi : 0 1 2 3 4
Data : 1 2 4 5 8
8 Disusun oleh tim Asisten | Laboratorium Teknologi Informasi dan Komunikasi
PROSEDUR PERCOBAAN
Percobaan 1
1. Kompilasi kode sumber bubble_sort.c dibawah ini!
Kode Sumber : bubble_sort.c
2. Jalankan program bubble_sort!
3. Jalankan dan tuliskan keluaran bubble_sort!
4. Pelajari dan bandingkan antara kode sumber dan hasil eksekusi bubble_sort ini!
5. Berikan penjelasan anda tentang baris 14 - 22!
6. Berikan kesimpulan anda dari percobaan ini!
9 Disusun oleh tim Asisten | Laboratorium Teknologi Informasi dan Komunikasi
Percobaan 2
1. Kompilasi kode sumber selection_sort.c dibawah ini!
Kode Sumber : selection_sort.c
2. Jalankan program selection_sort!
3. Jalankan dan tuliskan keluaran selection_sort!
4. Pelajari dan bandingkan antara kode sumber dan hasil eksekusi selection_sort ini!
5. Berikan penjelasan anda tentang baris 14 - 24!
6. Berikan kesimpulan anda dari percobaan ini!
10 Disusun oleh tim Asisten | Laboratorium Teknologi Informasi dan Komunikasi
Percobaan 3
1. Kompilasi kode sumber insertion_sort.c dibawah ini!
Kode Sumber : insertion _sort.c
2. Jalankan program selection_sort!
3. Jalankan dan tuliskan keluaran selection_sort!
4. Pelajari dan bandingkan antara kode sumber dan hasil eksekusi selection_sort ini!
5. Berikan penjelasan anda tentang baris 14 - 24!
6. Berikan kesimpulan anda dari percobaan ini!
11 Disusun oleh tim Asisten | Laboratorium Teknologi Informasi dan Komunikasi
TUGAS
1. Buatlah algoritma dan program untuk memasukkan 10 buah data dengan menggunakan metode-
metode yang telah dipelajari, dan tampilkan data tersebut secara ascending dan descending!

More Related Content

Viewers also liked

Makalah teknologi informasi dan strategi dalam perusahaan
Makalah teknologi informasi dan strategi dalam perusahaanMakalah teknologi informasi dan strategi dalam perusahaan
Makalah teknologi informasi dan strategi dalam perusahaanMarobo United
 
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #1
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #1Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #1
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #1Arry Rahmawan
 
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #5
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #5Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #5
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #5Arry Rahmawan
 
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #2
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #2Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #2
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #2Arry Rahmawan
 
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #4
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #4Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #4
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #4Arry Rahmawan
 
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #3
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #3Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #3
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #3Arry Rahmawan
 

Viewers also liked (7)

Makalah presentasi kelompok 4
Makalah presentasi   kelompok 4Makalah presentasi   kelompok 4
Makalah presentasi kelompok 4
 
Makalah teknologi informasi dan strategi dalam perusahaan
Makalah teknologi informasi dan strategi dalam perusahaanMakalah teknologi informasi dan strategi dalam perusahaan
Makalah teknologi informasi dan strategi dalam perusahaan
 
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #1
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #1Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #1
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #1
 
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #5
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #5Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #5
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #5
 
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #2
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #2Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #2
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #2
 
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #4
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #4Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #4
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #4
 
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #3
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #3Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #3
Contoh Desain Slide Presentasi Ilmiah Kreatif dan Menarik #3
 

Similar to SORTING ALGORITMA

Similar to SORTING ALGORITMA (20)

207 p10
207 p10207 p10
207 p10
 
Kelompok 6
Kelompok 6Kelompok 6
Kelompok 6
 
ratna mustika sari
ratna mustika sariratna mustika sari
ratna mustika sari
 
Tugas kelompok 6
Tugas kelompok 6Tugas kelompok 6
Tugas kelompok 6
 
tugas algoritma
tugas algoritmatugas algoritma
tugas algoritma
 
Bab1 algoritma
Bab1 algoritmaBab1 algoritma
Bab1 algoritma
 
Asd sesi sorting part1
Asd sesi sorting part1Asd sesi sorting part1
Asd sesi sorting part1
 
SD pert 6 sorting.pptx
SD pert 6 sorting.pptxSD pert 6 sorting.pptx
SD pert 6 sorting.pptx
 
Siti rohmatul khoiriah
Siti rohmatul khoiriahSiti rohmatul khoiriah
Siti rohmatul khoiriah
 
Modul3 metode newton raphson praktikum metode numerik
Modul3 metode newton raphson praktikum metode numerikModul3 metode newton raphson praktikum metode numerik
Modul3 metode newton raphson praktikum metode numerik
 
Tugas Algoritma
Tugas AlgoritmaTugas Algoritma
Tugas Algoritma
 
Buku struktur data Sorting
Buku struktur data SortingBuku struktur data Sorting
Buku struktur data Sorting
 
Modul2 metode regula falsi praktikum metode numerik
Modul2 metode regula falsi praktikum metode numerikModul2 metode regula falsi praktikum metode numerik
Modul2 metode regula falsi praktikum metode numerik
 
Informatika (BK).pptx
Informatika (BK).pptxInformatika (BK).pptx
Informatika (BK).pptx
 
Laporan Praktikum Algoritma Pemrograman Modul V-Menghitung Median
Laporan Praktikum Algoritma Pemrograman Modul V-Menghitung MedianLaporan Praktikum Algoritma Pemrograman Modul V-Menghitung Median
Laporan Praktikum Algoritma Pemrograman Modul V-Menghitung Median
 
James philip montolalu 13021106048
James philip montolalu   13021106048James philip montolalu   13021106048
James philip montolalu 13021106048
 
Pertemuan 11 Tehnik Searching
Pertemuan 11 Tehnik SearchingPertemuan 11 Tehnik Searching
Pertemuan 11 Tehnik Searching
 
Pertemuan 11 ok
Pertemuan 11 okPertemuan 11 ok
Pertemuan 11 ok
 
Berpikir Komputasional Kelas 10
Berpikir Komputasional Kelas 10Berpikir Komputasional Kelas 10
Berpikir Komputasional Kelas 10
 
Algoritma sorting
Algoritma sortingAlgoritma sorting
Algoritma sorting
 

More from James Montolalu

Aplikasi penampil profil biodata mahasiswa unsrat berbasis web uas
Aplikasi penampil profil biodata mahasiswa unsrat berbasis web uasAplikasi penampil profil biodata mahasiswa unsrat berbasis web uas
Aplikasi penampil profil biodata mahasiswa unsrat berbasis web uasJames Montolalu
 
Tutorial Pentaho - Membuat Data base werehaouse
Tutorial Pentaho - Membuat Data base werehaouseTutorial Pentaho - Membuat Data base werehaouse
Tutorial Pentaho - Membuat Data base werehaouseJames Montolalu
 
Kelompok 14 - [presentasi sistem transportasi}]
Kelompok 14 - [presentasi sistem transportasi}]Kelompok 14 - [presentasi sistem transportasi}]
Kelompok 14 - [presentasi sistem transportasi}]James Montolalu
 
Pemodelan web dengan web ml
Pemodelan web dengan web mlPemodelan web dengan web ml
Pemodelan web dengan web mlJames Montolalu
 
Final project Aplikasi Teknologi dan dNirkabel
Final project Aplikasi Teknologi dan dNirkabelFinal project Aplikasi Teknologi dan dNirkabel
Final project Aplikasi Teknologi dan dNirkabelJames Montolalu
 
James philip montolalu 13021106048
James philip montolalu   13021106048James philip montolalu   13021106048
James philip montolalu 13021106048James Montolalu
 
Tugas final 2 presentasi
Tugas final 2 presentasiTugas final 2 presentasi
Tugas final 2 presentasiJames Montolalu
 
Indeks kami ( keamanan informasi )
Indeks kami ( keamanan informasi )Indeks kami ( keamanan informasi )
Indeks kami ( keamanan informasi )James Montolalu
 
Arsitektur dan Organisasi Komputer
Arsitektur dan Organisasi KomputerArsitektur dan Organisasi Komputer
Arsitektur dan Organisasi KomputerJames Montolalu
 
Tugas keamanan sistem informasi4
Tugas keamanan sistem informasi4Tugas keamanan sistem informasi4
Tugas keamanan sistem informasi4James Montolalu
 

More from James Montolalu (20)

Aplikasi penampil profil biodata mahasiswa unsrat berbasis web uas
Aplikasi penampil profil biodata mahasiswa unsrat berbasis web uasAplikasi penampil profil biodata mahasiswa unsrat berbasis web uas
Aplikasi penampil profil biodata mahasiswa unsrat berbasis web uas
 
Tutorial Pentaho - Membuat Data base werehaouse
Tutorial Pentaho - Membuat Data base werehaouseTutorial Pentaho - Membuat Data base werehaouse
Tutorial Pentaho - Membuat Data base werehaouse
 
Kelompok 14 - [presentasi sistem transportasi}]
Kelompok 14 - [presentasi sistem transportasi}]Kelompok 14 - [presentasi sistem transportasi}]
Kelompok 14 - [presentasi sistem transportasi}]
 
Proposal
ProposalProposal
Proposal
 
Pemodelan web dengan web ml
Pemodelan web dengan web mlPemodelan web dengan web ml
Pemodelan web dengan web ml
 
Final project Aplikasi Teknologi dan dNirkabel
Final project Aplikasi Teknologi dan dNirkabelFinal project Aplikasi Teknologi dan dNirkabel
Final project Aplikasi Teknologi dan dNirkabel
 
James philip montolalu 13021106048
James philip montolalu   13021106048James philip montolalu   13021106048
James philip montolalu 13021106048
 
Ifc modul 7 (queue)
Ifc   modul 7 (queue)Ifc   modul 7 (queue)
Ifc modul 7 (queue)
 
Ifc modul 6 (stack)
Ifc   modul 6 (stack)Ifc   modul 6 (stack)
Ifc modul 6 (stack)
 
Ifc modul 5 (searching)
Ifc   modul 5 (searching)Ifc   modul 5 (searching)
Ifc modul 5 (searching)
 
Ifc modul 3 (adt)
Ifc   modul 3 (adt)Ifc   modul 3 (adt)
Ifc modul 3 (adt)
 
Ifc modul 2 (array)
Ifc   modul 2 (array)Ifc   modul 2 (array)
Ifc modul 2 (array)
 
Ifc modul 1 (fungsi)
Ifc   modul 1 (fungsi)Ifc   modul 1 (fungsi)
Ifc modul 1 (fungsi)
 
Tugas final 2 presentasi
Tugas final 2 presentasiTugas final 2 presentasi
Tugas final 2 presentasi
 
Presentation2 ver 1.1
Presentation2 ver 1.1Presentation2 ver 1.1
Presentation2 ver 1.1
 
Indeks kami ( keamanan informasi )
Indeks kami ( keamanan informasi )Indeks kami ( keamanan informasi )
Indeks kami ( keamanan informasi )
 
Topologi jaringan
Topologi jaringanTopologi jaringan
Topologi jaringan
 
Ansis
AnsisAnsis
Ansis
 
Arsitektur dan Organisasi Komputer
Arsitektur dan Organisasi KomputerArsitektur dan Organisasi Komputer
Arsitektur dan Organisasi Komputer
 
Tugas keamanan sistem informasi4
Tugas keamanan sistem informasi4Tugas keamanan sistem informasi4
Tugas keamanan sistem informasi4
 

Recently uploaded

MAteri:Penggunaan fungsi pada pemrograman c++
MAteri:Penggunaan fungsi pada pemrograman c++MAteri:Penggunaan fungsi pada pemrograman c++
MAteri:Penggunaan fungsi pada pemrograman c++FujiAdam
 
05 Sistem Perencanaan Pembangunan Nasional.ppt
05 Sistem Perencanaan Pembangunan Nasional.ppt05 Sistem Perencanaan Pembangunan Nasional.ppt
05 Sistem Perencanaan Pembangunan Nasional.pptSonyGobang1
 
rekayasa struktur beton prategang - 2_compressed (1).pdf
rekayasa struktur beton prategang - 2_compressed (1).pdfrekayasa struktur beton prategang - 2_compressed (1).pdf
rekayasa struktur beton prategang - 2_compressed (1).pdfssuser40d8e3
 
Pembangkit Listrik Tenaga Nuklir Kelompok 1.pptx
Pembangkit Listrik Tenaga Nuklir Kelompok 1.pptxPembangkit Listrik Tenaga Nuklir Kelompok 1.pptx
Pembangkit Listrik Tenaga Nuklir Kelompok 1.pptxmuhammadrizky331164
 
2021 - 12 - 10 PAPARAN AKHIR LEGGER JALAN.pptx
2021 - 12 - 10 PAPARAN AKHIR LEGGER JALAN.pptx2021 - 12 - 10 PAPARAN AKHIR LEGGER JALAN.pptx
2021 - 12 - 10 PAPARAN AKHIR LEGGER JALAN.pptxAnnisaNurHasanah27
 
001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptx
001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptx001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptx
001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptxMuhararAhmad
 
Slide Transformasi dan Load Data Menggunakan Talend Open Studio
Slide Transformasi dan Load Data Menggunakan Talend Open StudioSlide Transformasi dan Load Data Menggunakan Talend Open Studio
Slide Transformasi dan Load Data Menggunakan Talend Open Studiossuser52d6bf
 
Strategi Pengembangan Agribisnis di Indonesia
Strategi Pengembangan Agribisnis di IndonesiaStrategi Pengembangan Agribisnis di Indonesia
Strategi Pengembangan Agribisnis di IndonesiaRenaYunita2
 
2021 - 10 - 03 PAPARAN PENDAHULUAN LEGGER JALAN.pptx
2021 - 10 - 03 PAPARAN PENDAHULUAN LEGGER JALAN.pptx2021 - 10 - 03 PAPARAN PENDAHULUAN LEGGER JALAN.pptx
2021 - 10 - 03 PAPARAN PENDAHULUAN LEGGER JALAN.pptxAnnisaNurHasanah27
 

Recently uploaded (9)

MAteri:Penggunaan fungsi pada pemrograman c++
MAteri:Penggunaan fungsi pada pemrograman c++MAteri:Penggunaan fungsi pada pemrograman c++
MAteri:Penggunaan fungsi pada pemrograman c++
 
05 Sistem Perencanaan Pembangunan Nasional.ppt
05 Sistem Perencanaan Pembangunan Nasional.ppt05 Sistem Perencanaan Pembangunan Nasional.ppt
05 Sistem Perencanaan Pembangunan Nasional.ppt
 
rekayasa struktur beton prategang - 2_compressed (1).pdf
rekayasa struktur beton prategang - 2_compressed (1).pdfrekayasa struktur beton prategang - 2_compressed (1).pdf
rekayasa struktur beton prategang - 2_compressed (1).pdf
 
Pembangkit Listrik Tenaga Nuklir Kelompok 1.pptx
Pembangkit Listrik Tenaga Nuklir Kelompok 1.pptxPembangkit Listrik Tenaga Nuklir Kelompok 1.pptx
Pembangkit Listrik Tenaga Nuklir Kelompok 1.pptx
 
2021 - 12 - 10 PAPARAN AKHIR LEGGER JALAN.pptx
2021 - 12 - 10 PAPARAN AKHIR LEGGER JALAN.pptx2021 - 12 - 10 PAPARAN AKHIR LEGGER JALAN.pptx
2021 - 12 - 10 PAPARAN AKHIR LEGGER JALAN.pptx
 
001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptx
001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptx001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptx
001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptx
 
Slide Transformasi dan Load Data Menggunakan Talend Open Studio
Slide Transformasi dan Load Data Menggunakan Talend Open StudioSlide Transformasi dan Load Data Menggunakan Talend Open Studio
Slide Transformasi dan Load Data Menggunakan Talend Open Studio
 
Strategi Pengembangan Agribisnis di Indonesia
Strategi Pengembangan Agribisnis di IndonesiaStrategi Pengembangan Agribisnis di Indonesia
Strategi Pengembangan Agribisnis di Indonesia
 
2021 - 10 - 03 PAPARAN PENDAHULUAN LEGGER JALAN.pptx
2021 - 10 - 03 PAPARAN PENDAHULUAN LEGGER JALAN.pptx2021 - 10 - 03 PAPARAN PENDAHULUAN LEGGER JALAN.pptx
2021 - 10 - 03 PAPARAN PENDAHULUAN LEGGER JALAN.pptx
 

SORTING ALGORITMA

  • 1. 1 Disusun oleh tim Asisten | Laboratorium Teknologi Informasi dan Komunikasi MODUL PRAKTIKUM “STRUKTUR DATA” Modul 4 : Sorting Dosen Pembimbing : Xaverius Najoan, ST. MT. Bahasa Pemrograman : C Software : Notepad++ dan GCC LABORATORIUM TEKNOLOGI INFORMASI DAN KOUNIKASI UNIVERSITAS SAM RATULANGI 2012
  • 2. 2 Disusun oleh tim Asisten | Laboratorium Teknologi Informasi dan Komunikasi TUJUAN 1. Mahasiswa dapat memahami metode-metode pengurutan 2. Mahasiswa dapat menggunakan metode-metode pengurutan untuk memecahkan masalah ALAT DAN BAHAN 1. PC 2. Compiler (GCC) 3. Text Editor (Notepad++) DASAR TEORI Sorting adalah suatu proses pengurutan data yang sebelumnya disusun secara acak atau tidak teratur menjadi urut dan teratur menurut suatu aturan tertentu. Biasanya pengurutan terbagi menjadi 2 bagian, yaitu : ascending (pengurutan dari angka/karakter kecil ke angka/karakter besar) dan descending (pengurutan dari angka/karakter besar ke angka/karakter kecil). Untuk melakukan proses pengurutan dapat menggunakan beberapa metode, antara lain :  Bubble sort  Selection sort  Insertion sort BUBBLE SORT Bubble sort adalah suatu metode pengurutan yang membandingkan elemen yang sekarang dengan elemen berikutnya. Pembandingan elemen dapat dimulai dari data yang paling awal atau data yang paling akhir. Jika perbandingan tersebut sesuai dengan kondisi, maka data langsung ditukar. Misalkan terdapat data-data sebagai berikut : 5 1 4 2 8
  • 3. 3 Disusun oleh tim Asisten | Laboratorium Teknologi Informasi dan Komunikasi Langkah Pertama : ( 5 1 4 2 8 ) ( 1 5 4 2 8 ), disini 2 elemen pertama dibandingkan kemudian ditukar karena 5 > 1 ( 1 5 4 2 8 ) ( 1 4 5 2 8 ), ditukar karena 5 > 4 ( 1 4 5 2 8 ) ( 1 4 2 5 8 ), ditukar karena 5 > 2 ( 1 4 2 5 8 ) ( 1 4 2 5 8 ), karena urutan sudah sesuai (5 < 8), maka tidak ditukar Langkah Kedua : ( 1 4 2 5 8 ) ( 1 4 2 5 8 ) ( 1 4 2 5 8 ) ( 1 2 4 5 8 ), ditukar karena 4 > 2 ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) Langkah Ketiga : ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) Langkah Keempat : ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) Langkah Kelima : ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) ( 1 2 4 5 8 ) ( 1 2 4 5 8 )
  • 4. 4 Disusun oleh tim Asisten | Laboratorium Teknologi Informasi dan Komunikasi SELECTION SORT Selection Sort adalah suatu metode pengurutan yang membandingkn elemen yang sekarang dengan elemen berikutnya sampai ke elemen yang terakhir. Jika ditemukan elemen lain yang lebih kecil / lebih besar (sesuai kondisi) dari elemen yang sekarang, maka dicatat posisinya dan langsung ditukar. Misalkan terdapat data-data sebagai berikut : 5 1 4 2 8 Langkah Pertama : Posisi : 0 1 2 3 4 Data : 5 1 4 2 8 Index = 0 5 < 1, karena pernyataan bernilai false maka index = 1 1 < 4, index = 1 1 < 2, index = 1 1 < 8, index = 1 Tukar elemen 0 dan elemen 1, menjadi : Posisi : 0 1 2 3 4 Data : 1 5 4 2 8 Langkah Kedua : Posisi : 0 1 2 3 4 Data : 1 5 4 2 8 Index = 1 5 < 2, index = 2 4 < 2, index = 3 2 < 8, index = 3 Tukar elemen 1 dan elemen 3, menjadi : Posisi : 0 1 2 3 4 Data : 1 2 4 5 8
  • 5. 5 Disusun oleh tim Asisten | Laboratorium Teknologi Informasi dan Komunikasi Langkah Ketiga : Posisi : 0 1 2 3 4 Data : 1 2 4 5 8 Index = 2 4 < 5, index = 2 4 < 8, index = 2 Tidak ada penukaran, sehingga : Posisi : 0 1 2 3 4 Data : 1 2 4 5 8 Langkah Keempat : Posisi : 0 1 2 3 4 Data : 1 2 4 5 8 Index = 3 5 < 8, index = 3 Tidak ada penukaran, sehingga : Posisi : 0 1 2 3 4 Data : 1 2 4 5 8 Langkah Kelima : Posisi : 0 1 2 3 4 Data : 1 2 4 5 8 Index = 4 Tidak ada penukaran, sehingga : Posisi : 0 1 2 3 4 Data : 1 2 4 5 8
  • 6. 6 Disusun oleh tim Asisten | Laboratorium Teknologi Informasi dan Komunikasi INSERTION SORT Insertion sort merupakan salah satu algoritma pengurutan dengan cara menyisipkan jika menemukan nilai yang lebih kecil / lebih besar (sesuai dengan kondisi). Sehingga algoritma ini menyelesaikan pengurutan secara bertahap dari kiri ke kanan atau sebaliknya. Misalkan terdapat data-data sebagai berikut : 5 1 4 2 8 Langkah Pertama : Posisi : 0 1 2 3 4 Data : 5 1 4 2 8 tmp cek geser 1 5 > 1 data pada posisi [0] pindah pada posisi [1] Tmp menempati posisi [0] Posisi : 0 1 2 3 4 Data : 1 5 4 2 8 Langkah Kedua : Posisi : 0 1 2 3 4 Data : 1 5 4 2 8 tmp cek geser 4 5 > 4 data pada posisi [1] pindah pada posisi [2] 1 < 4 Tmp menempati posisi [1] Posisi : 0 1 2 3 4 Data : 1 4 5 2 8
  • 7. 7 Disusun oleh tim Asisten | Laboratorium Teknologi Informasi dan Komunikasi Langkah Ketiga : Posisi : 0 1 2 3 4 Data : 1 4 5 2 8 tmp cek geser 2 5 > 2 data pada posisi [2] pindah pada posisi [3] 4 > 2 data pada posisi [1] pindah pada posisi [2] 1 < 2 Tmp menempati posisi [1] Posisi : 0 1 2 3 4 Data : 1 2 4 5 8 Langkah Keempat : Posisi : 0 1 2 3 4 Data : 1 2 4 5 8 tmp cek geser 8 5 < 8 4 < 8 2 < 8 1 < 8 Tmp menempati posisi [4] Posisi : 0 1 2 3 4 Data : 1 2 4 5 8
  • 8. 8 Disusun oleh tim Asisten | Laboratorium Teknologi Informasi dan Komunikasi PROSEDUR PERCOBAAN Percobaan 1 1. Kompilasi kode sumber bubble_sort.c dibawah ini! Kode Sumber : bubble_sort.c 2. Jalankan program bubble_sort! 3. Jalankan dan tuliskan keluaran bubble_sort! 4. Pelajari dan bandingkan antara kode sumber dan hasil eksekusi bubble_sort ini! 5. Berikan penjelasan anda tentang baris 14 - 22! 6. Berikan kesimpulan anda dari percobaan ini!
  • 9. 9 Disusun oleh tim Asisten | Laboratorium Teknologi Informasi dan Komunikasi Percobaan 2 1. Kompilasi kode sumber selection_sort.c dibawah ini! Kode Sumber : selection_sort.c 2. Jalankan program selection_sort! 3. Jalankan dan tuliskan keluaran selection_sort! 4. Pelajari dan bandingkan antara kode sumber dan hasil eksekusi selection_sort ini! 5. Berikan penjelasan anda tentang baris 14 - 24! 6. Berikan kesimpulan anda dari percobaan ini!
  • 10. 10 Disusun oleh tim Asisten | Laboratorium Teknologi Informasi dan Komunikasi Percobaan 3 1. Kompilasi kode sumber insertion_sort.c dibawah ini! Kode Sumber : insertion _sort.c 2. Jalankan program selection_sort! 3. Jalankan dan tuliskan keluaran selection_sort! 4. Pelajari dan bandingkan antara kode sumber dan hasil eksekusi selection_sort ini! 5. Berikan penjelasan anda tentang baris 14 - 24! 6. Berikan kesimpulan anda dari percobaan ini!
  • 11. 11 Disusun oleh tim Asisten | Laboratorium Teknologi Informasi dan Komunikasi TUGAS 1. Buatlah algoritma dan program untuk memasukkan 10 buah data dengan menggunakan metode- metode yang telah dipelajari, dan tampilkan data tersebut secara ascending dan descending!