LAPORAN
“PEMROGRAMAN SORTING”
Disusun Untuk Memenuhi Tugas Mata Kuliah
DASAR – DASAR PEMROGRAMAN
Dosen : Salsabila Mazya Permatani [Link]. [Link]
Disusun Oleh :
Leddy Dhinayanti Wijaya [2410651038]
PROGRAM STUDI TEKNIK INFORMATIKA
UNIVERSITAS MUHAMMADIYAH JEMBER
2024
KATA PENGANTAR
Segala puji hanya milik Allah SWT. Shalawat dan salam selalu terucapkan kepada
Rasulullah SAW. Berkat limpahan rahmat dan karunia-Nya, saya mampu
menyelesaikan tugas laporan ini untuk memenuhi tugas mata kuliah Dasar - Dasar
Pemrograman.
Adapun penulisan laoran ini yang berjudul “Pemrograman Sorting” bertujuan
untuk memenuhi tugas dari, Ibu Salsabila Mazya Permatani [Link]. [Link].
selaku dosen mata kuliah Dasar - Dasar Pemrograman. Dalam penulisan laporan
ini saya ingin mengucapkan terima kasih kepada pihak-pihak yang telah
mendukung dan juga membantu dalam penyelesaian laporan ini.
Harapan saya semoga laporan ini membantu menambah pengetahuan dan
pengalaman bagi para pembaca. Laporan ini saya akui masih banyak kekurangan.
Oleh karena itu, saya harapkan kepada pembaca untuk memberikan masukan yang
bersifat membangun untuk kesempurnaan dari laporan ini.
Jember, 11 November 2024
Penulis
DASAR TEORI
1. Pengertian Pemrograman
Pemrograman adalah proses menulis, menguji, dan memelihara kode yang
akan dijalankan oleh komputer untuk menyelesaikan tugas tertentu. Kode ini
ditulis dalam bahasa pemrograman yang memiliki sintaks dan aturan
tersendiri.
2. Pengertian Java
Java adalah bahasa pemrograman yang dapat dijalankan di berbagai
komputer termasuk telepon genggam. Bahasa ini awalnya dibuat oleh James
Gosling saat masih bergabung di Sun Microsystems, yang saat ini merupakan
bagian dari Oracle dan dirilis tahun 1995. Bahasa ini banyak mengadopsi
sintaksis yang terdapat pada C dan C++ namun dengan sintaksis model objek
yang lebih sederhana serta dukungan rutin-rutin aras bawah yang minimal.
Aplikasi-aplikasi berbasis Java umumnya dikompilasi ke dalam p-code
(bytecode) dan dapat dijalankan pada berbagai Mesin Virtual Java (JVM).
Pemrograman Java mengambil keuntungan dari kumpulan kelas di pustaka
kelas Java, yang disebut dengan Java Application Programming Interface
(API).
3. Pengertian NetBeans
NetBeans adalah lingkungan pengembangan terpadu (IDE) yang digunakan
untuk mengembangkan aplikasi web, desktop, seluler, dan perusahaan.
NetBeans merupakan IDE gratis dan sumber terbuka yang dapat digunakan di
sistem operasi Windows, Mac, Linux, dan Solaris. Nama NetBeans berasal
dari kata "Network" dan "Java Beans" yang diusulkan oleh Jaroslav Tulach,
perancang arsitektur dasar IDE.
PEMBAHASAN
1. Pemrograman Sorting
Sorting atau pengurutan merupakan proses pengaturan sekumpulan data
dalam suatu urutan tertentu, baik ascending (urutan naik) maupun
descending (urutan turun). Algoritma pengurutan menjadi fundamental
dalam ilmu komputer karena banyak digunakan dalam berbagai aplikasi
seperti basis data, pengolahan file, dan analisis data.
2. Jenis – Jenis Sorting
Berikut merupakan jenis - jenis sorting
1. Bubble Sort
Bubble sort merupakan algoritma pengurutan sederhana yang bekerja
dengan membandingkan dua elemen bersebelahan dan menukarnya
jika urutannya salah. Proses ini diulang hingga seluruh data terurut.
Meski sederhana untuk dipahami, bubble sort memiliki kompleksitas
waktu O(n²) yang membuatnya kurang efisien untuk data berjumlah
besar.
2. Selection Sort
Selection sort bekerja dengan mencari elemen minimum dalam array
tidak terurut, kemudian menukarnya dengan elemen pertama array
tidak terurut tersebut. Proses dilanjutkan untuk sisa array hingga
seluruh data terurut. Kompleksitas waktunya juga O(n²), namun lebih
efisien dari bubble sort karena melakukan lebih sedikit pertukaran.
3. Insertion Sort
Insertion sort mengambil satu elemen dari array tidak terurut dan
memasukkannya ke posisi yang tepat dalam array terurut. Algoritma
ini efektif untuk data berjumlah kecil atau data yang hampir terurut,
dengan kompleksitas waktu O(n²).
LANGKAH – LANGKAH
PEMROGRAMAN SORTING
Langkah – langkah programan di NetBeans
Lakukan langkah – langkah sesuai dengan nomor urutnya:
1. Buka NetBeans, lalu klik New Project
2. Pilih Java with Ant.
3. Pilih Java Application.
4. Lalu klik Next
Selanjutnya lakukan seperti berikut:
1. Project Name bisa diberi nama apapun terserah kalian
2. Create Main Class bisa diubah ataupun dibiarkan saja, disini saya biarkan
tetap.
3. Lalu klik Finish.
Setelah itu kalian bisa memulai membuat pemograman sorting bubble
sort dengan cara seperti berikut:
package didiyy;
public class Didiyy{
//sorting buble
public static void main(String[] args) {
int [] angka = {64 ,34 ,25 ,12 ,22 ,11 ,90 };
[Link] ("array sebelum sorting");
for (int i=0; i< [Link]; i++) {
[Link](angka[i]+ " ");
}
[Link]();
//proses bubble sort langsung di main
int n = [Link];
for (int i=0; i<n-1; i++){
for (int j=0; j<n-i-1; j++){
if (angka[j]> angka [j+1]){
//menukar elemen
int temp= angka[j];
angka[j]= angka[j+1];
angka[j+1]= temp;
}
}
}
//cetak array setelah sorting
[Link]("array setelah sorting :");
for (int i =0; i<[Link]; i++){
[Link](angka[i]+ " ");
}
[Link]();
}
}
Setelah sesuai yang kalian perintah maka saat di run akan menghasilakan
output seperti contoh dibawah ini.
Membuat selection sort
Cara – caranya sama seperti di atas hanya penulisan kodenya yang berubah,
contohnya seperti berikut;
package didiyy;
public class Didiyy {
//sorting selection
public static void main(String[] args) {
int [] angka = {64 ,25 ,12 ,22 ,11};
for (int i=0; i< [Link] -1; i++){
int minIndex=i;
//cari elemen terkecil dibagian yang elum urut
for(int j=i+1; j<[Link]; j++){
if (angka[j]< angka[minIndex]){
minIndex=j;
//tukar elemen terkecil dengan elemen diposisi i
int temp= angka[minIndex];
angka[minIndex]= angka[i];
angka[i]= temp;
//cetak array yang sudah terurut
for(int i: angka){
[Link](i+" ");
Setelah sesuai yang kalian perintah maka saat di run akan menghasilakan output
seperti contoh di atas.
Selanjutnya pemrograman sorting insertion dengan kode seperti di bawah ini:
Package didiyy;
public class Didiyy {
//sorting insertion
public static void main(String[] args) {
int[] angka= {5,2,9,1,4,6};
//mulai dari indeks 1 karena elemen pertama sudh diaanggap terurut
for (int i=1; i<[Link]; i++){
int key = angka [i];
int j= i-1;
//geser elemen2 yang lebih besar dari key
while(j>=0 && angka [j]> key){
angka[j+1]=angka[j];
j--;
//tempatkan key di posisi tepat
angka[j+1]= key;
//cetak array yang sudah terurut
for(int i : angka){
[Link](i +" ");
}
Setelah sesuai perintah yang kalian inginkan klik run maka hasilnya akan muncul
seperti contoh di atas.
PENUTUP
KESIMPULAN
Pemahaman mendalam tentang berbagai algoritma pengurutan dan
karakteristiknya sangat penting dalam pengembangan sistem yang efisien.
Pemilihan metode pengurutan yang tepat tergantung pada berbagai faktor
seperti ukuran data, karakteristik data, kebutuhan memori, dan stabilitas
pengurutan. Pemilihan algoritma yang tepat dapat secara signifikan
mempengaruhi kinerja sistem secara keseluruhan. Dalam prakteknya,
kombinasi beberapa algoritma sering kali memberikan hasil optimal untuk
kasus penggunaan yang kompleks.
SARAN
Berharap dengan adanya makalah ini dapat menambah wawasan mengenai
pemrogrman Java di NetBeans. Terutama mengenai pemrograman sorting.
Diharapkan juga bagi pembaca agar dapat mengambil poin – poin penting
pada makalah ini, dan mencari informasi yang lain. Demikian pula pembuatan
makalah ini ada banyak sekali kekurangan, Oleh sebab itu saya selaku penulis
sangat membutuhkan saran, kritik, dan pendapat dari pembaca.