Dokumen ini membahas tentang algoritma pengurutan (sorting) array. Terdapat penjelasan mengenai tujuan pembelajaran, materi sorting, dan contoh kode program untuk beberapa metode sorting seperti bubble sort, selection sort, insertion sort, quick sort, merge sort, dan heap sort. Mahasiswa diminta membuat program untuk mengurutkan data mahasiswa berdasarkan nama menggunakan algoritma sorting.
Modul ini membahas tentang larik, percabangan, dan pengulangan dalam bahasa pemrograman Java. Terdapat penjelasan tentang cara mendeklarasikan, mengisi nilai, dan mengakses elemen larik satu dan multi dimensi. Jenis-jenis percabangan yang dibahas meliputi percabangan satu kondisi, dua kondisi, lebih dari dua kondisi, dan percabangan bersarang. Terakhir, pengulangan menggunakan sintaks for, while, dan
Dokumen tersebut membahas mengenai beberapa metode sorting seperti bubble sort, selection sort, insertion sort, quick sort, dan shell sort. Metode-metode tersebut dijelaskan cara kerja dan contoh kode pseudocode-nya.
Dokumen tersebut membahas tentang turunan fungsi dan berbagai aturan untuk menentukan turunan fungsi aljabar, trigonometri, transenden, parameter, dan lainnya. Secara khusus, dibahas definisi turunan, sifat-sifat dan aturan dasar turunan, turunan fungsi aljabar, trigonometri, eksponensial, logaritma, parameter, hiperbolik, serta contoh penerapannya.
Dokumen tersebut membahas berbagai metode sorting dan aplikasinya. Metode sorting yang dijelaskan meliputi bubble sort, selection sort, insertion sort, shell sort, merge sort, radix sort, quick sort, dan heap sort. Algoritma-algoritma tersebut diimplementasikan dalam berbagai aplikasi pengolahan data.
Algoritma Brute Force adalah pendekatan yang sederhana dan langsung untuk memecahkan suatu masalah dengan cara mengevaluasi semua kemungkinan secara sistematis tanpa mempertimbangkan efisiensi. Contoh algoritma brute force adalah bubble sort, selection sort, dan evaluasi nilai polinom secara langsung.
Perbandingan algoritma brute force , divide and conquerohohervin
Algoritma brute force, divide and conquer, dan decrease and conquer merupakan pendekatan yang berbeda dalam memecahkan masalah secara komputasi. Brute force memecahkan masalah secara sederhana dengan mencoba semua kemungkinan, divide and conquer memecah masalah menjadi submasalah kecil lalu menggabungkan hasilnya, sedangkan decrease and conquer hanya memecah masalah menjadi submasalah kemudian memecahkan satu submasalah.
Program tersebut merangkum praktikum mengenai penggunaan array satu dan dua dimensi dalam bahasa pemrograman Java. Program tersebut mendemonstrasikan pendefinisian array, pengisian nilai, dan penampilan output menggunakan perulangan nested loop.
Dokumen tersebut membahas mengenai sorting array, yaitu proses mengurutkan data dalam suatu tempat penyimpanan secara teratur menggunakan beberapa metode seperti bubble sort, selection sort, insertion sort, merge sort, quick sort, heap sort, dan shell sort. Metode-metode tersebut menerangkan proses perbandingan dan pertukaran nilai untuk mendapatkan urutan data yang diinginkan secara ascending atau descending.
Dokumen tersebut membahas berbagai metode sorting dan aplikasinya. Metode sorting yang dijelaskan meliputi bubble sort, selection sort, insertion sort, shell sort, merge sort, radix sort, quick sort, dan heap sort. Algoritma-algoritma tersebut diimplementasikan dalam berbagai aplikasi pengolahan data.
Dokumen tersebut membahas beberapa algoritma pengurutan data (sorting) seperti bubble sort, selection sort, dan insertion sort. Bubble sort bekerja dengan membandingkan dan menukar pasangan elemen berurutan jika terbalik. Selection sort mencari elemen terkecil/terbesar dan menukar ke posisi yang tepat. Insertion sort menyisipkan elemen ke tempat yang sesuai seperti mengurutkan kartu.
Dokumen tersebut membahas mengenai beberapa metode sorting seperti bubble sort, selection sort, insertion sort, quick sort, dan shell sort. Metode-metode tersebut dijelaskan cara kerja dan contoh kode pseudocode-nya.
Dokumen tersebut membahas tentang turunan fungsi dan berbagai aturan untuk menentukan turunan fungsi aljabar, trigonometri, transenden, parameter, dan lainnya. Secara khusus, dibahas definisi turunan, sifat-sifat dan aturan dasar turunan, turunan fungsi aljabar, trigonometri, eksponensial, logaritma, parameter, hiperbolik, serta contoh penerapannya.
Dokumen tersebut membahas berbagai metode sorting dan aplikasinya. Metode sorting yang dijelaskan meliputi bubble sort, selection sort, insertion sort, shell sort, merge sort, radix sort, quick sort, dan heap sort. Algoritma-algoritma tersebut diimplementasikan dalam berbagai aplikasi pengolahan data.
Algoritma Brute Force adalah pendekatan yang sederhana dan langsung untuk memecahkan suatu masalah dengan cara mengevaluasi semua kemungkinan secara sistematis tanpa mempertimbangkan efisiensi. Contoh algoritma brute force adalah bubble sort, selection sort, dan evaluasi nilai polinom secara langsung.
Perbandingan algoritma brute force , divide and conquerohohervin
Algoritma brute force, divide and conquer, dan decrease and conquer merupakan pendekatan yang berbeda dalam memecahkan masalah secara komputasi. Brute force memecahkan masalah secara sederhana dengan mencoba semua kemungkinan, divide and conquer memecah masalah menjadi submasalah kecil lalu menggabungkan hasilnya, sedangkan decrease and conquer hanya memecah masalah menjadi submasalah kemudian memecahkan satu submasalah.
Program tersebut merangkum praktikum mengenai penggunaan array satu dan dua dimensi dalam bahasa pemrograman Java. Program tersebut mendemonstrasikan pendefinisian array, pengisian nilai, dan penampilan output menggunakan perulangan nested loop.
Dokumen tersebut membahas mengenai sorting array, yaitu proses mengurutkan data dalam suatu tempat penyimpanan secara teratur menggunakan beberapa metode seperti bubble sort, selection sort, insertion sort, merge sort, quick sort, heap sort, dan shell sort. Metode-metode tersebut menerangkan proses perbandingan dan pertukaran nilai untuk mendapatkan urutan data yang diinginkan secara ascending atau descending.
Dokumen tersebut membahas berbagai metode sorting dan aplikasinya. Metode sorting yang dijelaskan meliputi bubble sort, selection sort, insertion sort, shell sort, merge sort, radix sort, quick sort, dan heap sort. Algoritma-algoritma tersebut diimplementasikan dalam berbagai aplikasi pengolahan data.
Dokumen tersebut membahas beberapa algoritma pengurutan data (sorting) seperti bubble sort, selection sort, dan insertion sort. Bubble sort bekerja dengan membandingkan dan menukar pasangan elemen berurutan jika terbalik. Selection sort mencari elemen terkecil/terbesar dan menukar ke posisi yang tepat. Insertion sort menyisipkan elemen ke tempat yang sesuai seperti mengurutkan kartu.
Kelompok algoritma ririn and friends STT wastukancanaRirin Indah
ini tentang algoritma pengurutan, kami dari jurusan Teknik Informatika Semester 3 di Sekolah Tinggi Teknologi Wastukancana Purwakarta Jawa Barat Indonesia
Dokumen tersebut membahas tentang tiga algoritma pengurutan (sorting) yaitu bubble sort, selection sort, dan insertion sort. Bubble sort adalah metode pengurutan terlambat dan kurang efisien, sedangkan selection sort dan insertion sort memiliki kinerja yang lebih baik karena hanya melakukan pertukaran sekali saja pada setiap langkah.
Dokumen tersebut membahas tentang tiga algoritma pengurutan (sorting) yaitu bubble sort, selection sort, dan insertion sort. Bubble sort adalah metode pengurutan terlambat karena banyak melakukan pertukaran, sedangkan selection sort dan insertion sort lebih efisien karena hanya melakukan sedikit pertukaran saat mengurutkan data.
Dokumen tersebut membahas tentang pengurutan data (sort) dan beberapa metode pengurutannya seperti bubble sort, selection sort, insertion sort, dan quick sort. Metode-metode tersebut dijelaskan secara singkat proses kerjanya.
Dokumen tersebut membahas tentang algoritma sorting, termasuk konsep, implementasi, dan flowchart dari beberapa algoritma sorting seperti bubble sort, quick sort, dan selection sort. Secara khusus dibahas langkah-langkah bubble sort meliputi pembandingan data dan pertukaran posisi bila urutannya belum sesuai, serta ilustrasi prosesnya. Quick sort dibahas menggunakan pendekatan divide and conquer dengan memilih pivot dan membagi data menjadi bagian kiri dan kanan. Sementara itu
Dokumen tersebut membahas tentang pengaturan data berdasarkan pengurutan dan pencarian. Terdapat penjelasan mengenai beberapa metode pengurutan seperti bubble sort, selection sort, dan insertion sort beserta contoh kode programnya. Juga dibahas mengenai implementasi algoritma rekursi untuk menghasilkan permutasi dan faktorial.
Bab VI membahas beberapa algoritma pengurutan data, termasuk metode penyisipan langsung, penyisipan biner, dan seleksi. Metode-metode ini membandingkan dan menukar posisi data untuk mengurutkannya dari nilai terkecil hingga terbesar. Bab ini juga membahas faktor-faktor yang mempengaruhi pemilihan algoritma pengurutan yang tepat.
Dokumen tersebut membahas tentang stack dan algoritma notasi aritmatika. Topik utama yang dibahas adalah penjelasan stack sebagai struktur data LIFO, operasi-operasi dasar stack, dan contoh penerapan stack dalam mengubah notasi aritmatika antara infix, prefix, dan postfix. Siswa diminta membuat program untuk mengkonversi antara ketiga notasi tersebut menggunakan stack.
Dokumen tersebut membahas komponen penting dalam pembuatan game seperti game engine, rules and mechanics, user interface, serta konten dan tantangan. Game engine menyediakan perpustakaan untuk grafik, fisika, animasi, dan lainnya. Rules and mechanics mengisi nilai-nilai untuk sistem permainan seperti gravitasi dan jenis interaksi. User interface menentukan antarmuka pemain untuk berinteraksi dengan game. Konten merupakan hal penting yang menentukan pengalaman bermain.
Dokumen tersebut membahas tentang rendering grafis dan langkah-langkahnya dalam pembuatan video game. Rendering grafis adalah proses menghasilkan gambar dua dimensi dari model grafis tiga dimensi dengan mempertimbangkan atribut seperti warna, bentuk, dan posisi objek. Langkah-langkahnya meliputi representasi 3D ke layar 2D menggunakan OpenGL, penyimpanan koordinat titik ke vertex buffers, pemrosesan menjadi potongan pik
Dokumen tersebut membahas tentang perangkat lunak dan jenis-jenisnya, termasuk pengelompokan perangkat lunak, perbedaan antara versi dan rilis, user interface, jenis-jenis aplikasi seperti word processing dan spreadsheet, serta software suite dan aplikasi untuk e-book.
Perkembangan teknologi penyimpanan eksternal dibahas meliputi berbagai jenis perangkat penyimpanan seperti floppy disk, hard disk, pita magnetik, flash disk, CD, DVD, kartu memori, dan flask disk beserta perbandingan kelebihan dan kekurangannya.
Pertemuan membahas peranti keluaran komputer seperti monitor, printer, plotter, dan computer output microfilm. Mahasiswa diharapkan memahami jenis dan macam peranti keluaran seperti monitor CRT, LCD, printer impact, inkjet, laser, dan plotter pena, termal, elektrostatik.
Dokumen tersebut membahas mengenai perangkat masukan pada komputer yang meliputi penjelasan mengenai jenis-jenis perangkat masukan seperti keyboard, mouse, barcode reader, kamera, mikrofon, sensor dan lainnya beserta penjelasan singkat mengenai masing-masing perangkat.
C++ structs allow grouping of related data elements of different types. Structs define a new data type with members that can be accessed by name. Struct variables can be declared once the struct is defined. Members are accessed using the dot operator, such as struct_variable.member. While structs allow aggregation through assignment and passing by value/reference, they do not support arithmetic, comparisons, or I/O as aggregates. Arrays of structs are also possible, with elements accessed using both the array index and dot operator.
Dokumen ini berisi aturan-aturan pengerjaan tugas akhir mata kuliah Algoritma dan Struktur Data. Tugas akhir berupa pembuatan program C dengan menggunakan minimal enam modul dasar struktur data. Program harus dikerjakan secara berkelompok dengan 2-3 orang dan memilih satu tema. Kelompok wajib menyerahkan file program dan laporan serta melakukan presentasi sesuai jadwal. Pelanggaran aturan dapat mengakibatkan pengurangan
This document discusses pointers in C++. It begins by explaining that pointers store memory addresses and can be used to indirectly access the value of the variable located at that address. It then covers pointer declaration syntax, using the address of (&) and dereference (*) operators, and pointers to pointers. The document also discusses static vs dynamic memory allocation, using new and delete to manually allocate and free memory. It provides examples of pointers to arrays and array pointers. Finally, it shows examples of dynamically allocating memory for arrays using new and deleting it using delete[].
Dokumen tersebut membahas tentang struktur data linked list, terdiri dari 3 kalimat:
Linked list adalah struktur data yang terdiri dari node-node yang saling terhubung, masing-masing node berisi data dan pointer ke node berikutnya. Dokumen ini menjelaskan konsep single linked list, fungsi-fungsi dasar seperti penambahan, penghapusan, dan penampilan data, serta ilustrasi grafis operasi-operasinya.
Dokumen tersebut membahas tentang stack, termasuk penjelasan stack, ilustrasi stack, operasi-operasi stack, implementasi stack menggunakan struct dan array, serta contoh aplikasi stack dalam pembuatan kalkulator scientific menggunakan notasi postfix.
This document discusses arrays in C++. It defines arrays as fixed-size collections of elements of the same type. One-dimensional arrays are arranged in list form, accessed using indices, and can be initialized partially. Two-dimensional arrays are like tables with rows and columns accessed using index pairs. Arrays are passed by reference in functions. The document also covers parallel arrays, C-strings stored in character arrays, and processing arrays by rows and columns.
Dokumen ini membahas tentang searching pada array dengan menggunakan metode sequential search. Metode ini melakukan pencarian secara berurutan dengan menelusuri setiap elemen pada array untuk mencari nilai tertentu, mencari apakah nilai tersebut ada atau tidak, atau mencari nilai maksimum dan minimum. Algoritmanya dijelaskan dengan flowchart.
Pengarahan Growing Together Mei 2025 "Gereja dan Amanat Agung"SABDA
Apa peran kita sebagai gereja dalam menggenapi Amanat Agung pada era ini? Di tengah dunia yang terus berubah—baik secara budaya, teknologi, maupun cara kita berinteraksi—bagaimana kita bisa tetap setia pada misi besar Tuhan?
Sepanjang Mei 2025, Growing Together akan mengangkat tema “Gereja dan Amanat Agung”. Kita akan bersama-sama menelusuri jejak Amanat Agung dari halaman-halaman Perjanjian Lama, melintasi kisah-kisah Perjanjian Baru, hingga melihat bagaimana gereja masa kini dipanggil untuk menjawab tantangan zaman digital. Ini adalah kesempatan bagi kita untuk memahami hati Tuhan, mengenal arah misi-Nya, dan yang terpenting: ambil bagian di dalamnya!
Silahkan akses arsip kelas SABDA MLC lainnya di situs:
live.sabda.org
pesta.org
dan YouTube Channel:
SABDA Alkitab
Evaluasi Growing Together April 2025 "Passion of Jesus #2"SABDA
Paskah sebentar lagi! Bagaimana persiapannya? Mari kita hayati dan maknai Paskah bersama-sama dengan merenungkan arti pengorbanan Yesus Kristus dalam Kelompok Growing Together April 2025 dengan tema "Passion of Jesus #2".
Silahkan akses arsip kelas SABDA MLC lainnya di situs:
live.sabda.org
pesta.org
dan YouTube Channel:
SABDA Alkitab
PERAN PEKERJA SOSIAL DALAM PENANGANAN KORBAN PERDAGANGAN MANUSIA DAN ANAK DIS...gladissagita10
Mata Kuliah: Perundang- Undangan Sosial dalam Penanganan Korban Perdagangan Manusia dan Anak Disabilitas”
Dosen Pengampu: Dr. Sugeng Pujileksono, M.Si
Gladis Sagita Putri (23530002)
MODUL PEMBELAJARAN DEEP LEARNING PENDIDIKAN PANCASILA KELAS 1 CP 032 REVISI 2...AndiCoc
Modul Pembelajaran Deep Learning Pendidikan Pancasila Kelas 1 Kurikulum Merdeka 2025/2026
Capaian Pembelajaran Nomor 032/H/KR/2024
Peserta didik mengidentifikasi dan menghargai identitas dirinya sesuai dengan jenis kelamin, hobi, bahasa, serta agama dan kepercayaan di lingkungan rumah dan sekolah.
Tujuan Pembelajaran:
1.1 Mengenal dan menerima identitas diri.
2. 2
Pengertian Sorting
Proses mengurutkan data yang berada dalam suatu
tempat penyimpanan, dengan urutan tertentu yaitu
urutan naik (ascending) dari nilai terkecil hingga
terbesar atau urutan turun (descending) dari nilai
terbesar hingga nilai terkecil.
Dilihat dari tempat penyimpanan data, sort dibedakan
antara external sort bila datanya ada dalam media
external atau external storage seperti harddisk dan
internal sort bila datanya ada dalam internal storage
atau memory computer.
3. 3
Tujuan Sorting
• Mendapatkan kemudahan dalam pencarian
anggota dari suatu himpunan, disamping
dapat mempercepat mengetahui data
terbesar dan data terkecil
4. 4
Metode sorting
• Bubble sort
• Selection sort
• Insertion sort
• Shell sort
• Merge sort
• Radix sort
• Quick sort
• Heap short
• Proses yang terjadi
pada pengurutan
adalah
– Perbandingan data
– Pertukaran data
Metode Sorting
5. 5
Bubble Sort
Bubble artinya gelembung dan gelembung selalu
mengapung.
Prinsip proses pengurutan dengan menggunakan
metode bubble sort adalah
menempatkan (mengapungkan) nilai terbesar (jika urut
ascending) atau nilai terkecil (jika urut descending) pada
elemen ujung paling kanan pada tahap per tahapnya.
6. 6
Bubble Sort
Sudah ada array satu dimensi sudah ada isinya,
diilustrasikan sebagai berikut :
Akan diurutkan ascending sehingga dihasilkan
urutan data seperti berikut:
7. 7
Bubble Sort
Maka proses pengurutan tahap demi tahap dengan menggunakan
metode bubble sort adalah sebagai berikut :
8. 8
Bubble Sort
Dari array diatas yang terdiri dari 6 elemen
dibutuhkan proses sebanyak 5 tahap maka untuk N
elemen dibutuhkan (N-1) tahap proses pengurutan.
Selanjutnya proses tahap per tahap akan diuraikan
lebih rinci lagi.
Pada proses setiap tahap algoritma yang digunakan
adalah proses banding (compare) dan tukar (swap).
Bukan semata-mata meletakkan nilai terbesar ke
ujung kanan, melainkan membandingkan nilai-
nilai yang ada pada masing-masing elemen.
10. 10
Rumus Bubble Sort
for (K = 0 ; K < N-1 ; K++)
{
for (i = 0 ; i < N-2-K ; i++)
{
if ( A[i] > A[i+1] )
{
x = A[i];
A[i] = A[i+1];
A[i+1] = x;
}
}
}
11. 11
Selection Sort
Metode selection sort ini menggunakan proses
pencarian (searching) kemudian tukar nilai yang dicari
dengan nilai pada elemen awal.
Misalnya untuk pengurutan ascending, dicari nilai
terkecil pertama kemudian tukar dengan elemen ke-0,
selanjutnya dicari nilai terkecil kedua dan tukar
dengan elemen ke-1 dan seterusnya.
13. 13
Rumus Selection Sort
for ( i=0 ; i <= N-2 ; i++)
{
kecil = i;
for ( k = i+1 ; k <= N-1 ; k++ )
{
if (A[k] > A[j])
{
kecil = k;
}
}
temp = A[i];
A[i] = A[kecil];
A[kecil] = temp;
}
14. 14
Insertion Sort
• Metode ini dilakukan dengan penyisipan
nilai data untuk suatu array misal A, yang
tidak terurut ke dalam suatu tempat kosong
misal C dan memastikan nilai data C selalu
dalam keadaan terurut.
15. 15
Insertion Sort
Tahap 1 :
Dimulai dari A[1]
Simpan nilai A[1] pada sebuah variabel (misal x)
Geser masing-masing satu langkah ke kanan semua nilai yang berada pada kiri
A[1] satu per satu jika nilai tersebut lebih besar dari x
Insert (sisipkan) x di bekas tempat nilai yang terakhir digeser.
Tahap 2 :
Simpan nilai A[2] pada variabel x.
Geser masing-masing satu langkah ke kanan semua nilai yang berada pada kiri
A[2] satu per satu jika nilai tersebut lebih besar dari x
Insert (sisipkan) x di bekas tempat nilai yang terakhir digeser.
Tahap berikutnya dan seterusnya hingga terakhir tahap ke N-1 (untuk array
dengan N elemen).
Instruksi pergeseran ke kanan adalah A[i]=A[i - 1], sehingga nilai A[i] akan
hilang (ditimpa oleh nilai A[i-1] oleh karena itu pada awal tahap A[i] disimpan
pada sebuah variabel.
18. 18
Quick Sort
• Metode pembagian dan penguasaan
• Array misal A yang tidak terurut dibagi menjadi 2
sub bagian yakni array kiri dan array kanan.
• Proses pengurutan kedua sub bagian array
menggunakan rekursif dan kemudian
menggabungkan kembali 2 sub bagian array yang
terurut untuk menghasilkan keseluruhan array
yang terurut
19. 19
R
u
m
u
s
Q
u
i
c
k
S
o
r
t
void quick(int a[], int left, int right)
{
int i,j, x, temp;
i = left;
j = right;
x = a[(left+right)/2];
do
{
while(a[i]<x && i<right)
++i;
while(a[j]>x && j>left)
--j;
if(i<=j)
{
temp = a[i];
a[i] = a[j];
a[j] = temp;
++i;
--j;
}
}while(i <= j);
if(left<j)
quick(a, left,j);
if(i<right)
quick(a, i, right);
}
20. 20
Merge Sort
• Pengurutan data yang jumlahnya besar,
dimana tidak semuanya dapat dimuat dalam
memori utama, sehingga harus disimpan
dalam penyimpanan sekunder berupa berkas
21. 21
R
u
m
u
s
M
e
r
g
e
S
o
r
t
void MergeSort(int x[], int n)
{
long aux[8], i, j, k, L1, L2, size, U1, U2; size = 1;
while(size < n){
L1 = 0; k = 0;
while(L1+size < n){
L2 = L1 + size;
U1 = L2 -1;
U2 = (L2+size-1 < n) ? L2+size-1 : n-1;
for(i=L1, j=L2; i<=U1 && j<=U2; k++)
if(x[i] <= x[j]) aux[k] = x[i++];
else aux[k] = x[j++];
for(;i <= U1; k++)
aux[k] = x[i++];
for(;j <= U2; k++)
aux[k] = x[j++];
L1 = U2 + 1;}
for(i=L1;k<n;i++) aux[k++] = x[i];
for(i=0;i<n;i++) x[i] = aux[i];
size *=2;}
}
22. 22
Heap Sort
• Heap merupakan pohon biner tanpa pointer
dan mirip seperti pohon biner yang hampir
penuh. Semua simpul (daun) terletak pada
dua cabang terbawah dan simpul daun pada
cabang paling bawah terletak di sebelah kiri
sejauh mungkin
• Nilai dalam setiap simpul adalah lebih besar
atau sama dengan anaknya
23. 23
Rumus Heap Sort
void HeapSort(int a[], int size)
{
int i, f, s;
for(i=1;i<size;i++)
{
int e = a[i];
s = i;
f = (s-1)/2;
while(s > 0 && a[f] > e)
{
a[s] = a[f];
s = f;
f = (s-1)/2;
}
a[s] = e;
}
for(i=size; i>0; i--)
{
int value = a[i];
a[i] = a[0];
f = 0;
if(i==1)
s = -1;
else
s = 1;
if(i > 2 && a[2] > a[1])
s = 2;
while(s >= 0 && value < a[s])
{
a[f] = a[s];
f = s;
s = 2*f+1;
if(s+1 <= i-1 && a[s] < a[s+1])
s = s+1;
if(s > i-1)
s = -1;
}
a[f] = value;
}
}
24. 24
Shell Sort
jarak = N/2;
while(jarak > 0)
{
for(i=0; i<=N-jarak; i++)
{
j=i+jarak;
if(data[i] >data[j])
{
temp = data[i];
data[i] = data[j];
data[j] = temp;
}
}
jarak = jarak/2;
}
Metode pengurutan dengan cara penukaran sepasang
elemen dengan jarak tertentu
25. 25
Tugas Praktikum
Buatlah program untuk menyimpan dan
mengurutkan data-data struct mahasiswa yang
terdiri dari 3 field yaitu NIM, NamaMhs, Nilai.
Kemudian isikan secara acak/tidak berurut) contoh
data dari 5 mahasiswa yang masing-masing
mengandung NIM, NamaMhs, Nilai.
Selanjutnya gunakan algoritma pengurutan untuk
mengurutkan data mahasiswa berdasarkan
NamaMhs kemudian tampilkan hasil
pengurutannya