Professional Documents
Culture Documents
std::chrono;
high_resolution_clock::time_point
t1
sebelum
dilakukannya
high_resolution_clock::time_point
proses
t2
sorting.
Lalu
digunakan
high_resolution_clock::now()
kode
yang
merupakan fungsi untuk menandakan sebagai waktu akhir dari pengurutan array
tersebut. Untuk menghitung waktu yang diperlukan dalam proses sorting dapat
digunakan perintah duration<double> dt = duration_cast<duration<double>>(t2t1). Dengan perhitungan tersebut, maka akan didapat selang waktu yang diperlukan
program untuk melakukan proses sorting dengan lebih teliti lagi. Sedangkan untuk
menampilkan waktu yang diperlukan dalam proses sorting pada konsol, dapat
dilakukan dengan menggunakan perintah cout << time difference (s): <<
dt.count(). Lalu ditampilkan pula pada konsol berapa kali program melakukan tukar
nilai sampai semua array memiliki nilai yang berurutan dengan perintah cout <<
Sub-process: << k;.
2) Metode Rata-Rata
Program ini digunakan untuk mengurutkan data dari file berkasdata.txt dan
menuliskan hasilnya dalam data-out.txt
dengan terlebih dahulu mendeklarasikan double sum = 0.0; double avg = 0.0.
Kemudian hitung rata-rata data dengan avg = sum / N. Untuk mengetahui nilai sum,
dapat dilakukan dengan fungsi pengulangan for.
Keempat, pecah data menjadi dua kelompok, yaitu yang lebih kecil dan lebih
besar dari nilai rat-rata. Terlebih dahulu deklarasikan variabel kelompok bawah dan
atas, yaitu double *bawah = new double[N]; dan double *atas = new double[N].
Kemudian inisialisasi int j = 0; int 1=0. Untuk mengetahui data berkas bawah dan
atas, maka dapat dicari dengan menggunakan fungsi pengulangan for. Kelima,
lakukan selection sort untuk kedua kelompok data tersebut. Namun, sebelum
dilakukan
proses
sorting,
tambahkan
using
namespace
std::chrono;
dengan
perintah
duration<double>
dt
yang ada dalam library fstream, ofstream fout; fout.open(ofn); kemudian lakukan
fungsi pengulangan for untuk menuliskan gabungan kedua data tersebut. Setelah itu
tutup file output dengan fout.close().
KODE PROGRAM
1) Insertion Sort
2) Metode Rata-Rata
HASIL
1) Selection Sort
//Hasil program
500000000
450000000
400000000
350000000
300000000
250000000
200000000
150000000
100000000
50000000
0
450002921
SELECTION SORT
17
2717
239641
10
100
1000
18534819
JUMLAH DATA
10000
100000
WAKTU (s)
37.36175
40
35
30
25
20
15
10
5
0.000003
0.000136
0.012395
0.798282
10
100
1000
10000
JUMLAH DATA
2) Metode Rata-Rata
//Hasil Program
100000
METODE RATA-RATA
RATA-RATA
5300
5181.31
5200
5100
5018.75
4970.53
5000
4990.89
METODE RATA-RATA
4843.1
4900
4800
4700
4600
JUMLAH DATA
10
100
1000
10000
100000
20
18
16
14
12
METODE RATA-RATA
(WAKTU)
10
8
6
4
2
0.000003
0.000059
0.005851
0.460948
10
100
1000
10000
JUMLAH DATA
100000