Anda di halaman 1dari 5

Diterjemahkan dari bahasa Inggris ke bahasa Indonesia - www.onlinedoctranslator.

com

IEEE - 45670

Varian dari Bucket Sort


Sortir Kulit vs Sortir Sisipan

Goel Abhay Sharma Abhishek Dr. Gupta Namita


Jurusan Teknik Informatika Institut Jurusan Teknik Informatika Institut (HOD) Teknik Informatika Institut
Teknologi Maharaja Agrasen Teknologi Maharaja Agrasen Teknologi Maharaja Agrasen
Delhi, India Delhi, India Delhi, India
Surel:abhaygoel1906@gmail.com Surel:abhishekcrdsa7@gmail.com Surel:namita@mait.ac.in

Abstrak— Sorting adalah teknik untuk mengatur ulang daftar mengurutkan angka dalam daftar. Kompleksitas waktu rata-rata untuk
elemen yang diberikan menurut operator perbandingan pada algoritma ini adalah orde O(n log(n)).
elemen. Ada sejumlah besar Algoritma Penyortiran seperti Gabungkan Sortir[4], [5] membagi daftar input menjadi dua bagian dan kemudian
Insertion Sort, Merge Sort, Bucket Sort, Shell Sort, dll. menggabungkan dua bagian yang diurutkan. Kompleksitas waktu rata-ratanya
adalah orde O(n log(n)).
Efisiensi algoritme pengurutan bergantung pada banyak
Sortir Keranjang[6], [7], [8] adalah algoritme pengurutan non-perbandingan di mana
faktor seperti pola penggunaan memori (berapa kali
bucket yang didistribusikan pada suatu rentang, dibuat. Sekarang, semua elemen
bagian memori harus disalin atau ditukar ke dan dari
diambil dan diurutkan, secara berurutan, dengan memasukkan masing-masing
disk), jumlah total perbandingan, dan persyaratan waktu
elemen ke dalam ember yang sesuai.
untuk menjalankan algoritme. .
Algoritma:(Biarkan n adalah ukuran daftar)
Dalam makalah ini, diusulkan sebuah metode yang menggabungkan dua algoritma
1. Buat ember untuk menampung elemen sesuai dengan
pengurutan (Bucket Sort dan Shell Sort) dengan cara yang memanfaatkan kekuatan
masing-masing untuk meningkatkan kinerja secara keseluruhan.
besaran.
2. Untuk setiap elemen daftar, masukkan ke dalam ember.
Kata kunci— Pengurutan Shell, Pengurutan Bucket, Pengurutan Sisipan, Pengurutan, 3. Terapkan Insertion Sortir untuk mengurutkan setiap ember.
kompleksitas waktu, perbandingan algoritma
4. Gabungkan semua ember yang diurutkan.

sayaPENDAHULUAN
Bucket Sort terutama lebih disukai ketika input terdistribusi secara merata
Ketika daftar angka diberikan, algoritma khusus digunakan untuk mengatur
pada suatu rentang. Hal ini juga sangat efektif bila jumlah ember yang
angka-angka ini secara berurutan. Algoritma ini disebut algoritma pengurutan.
optimal digunakan, untuk melengkapi penyortiran yang terbaik. Salah
Angka-angka ini mungkin sama, berbeda, dalam pola atau benar-benar acak.
satu keuntungan dari bucket sort adalah bahwa ia berjalan dalam waktu
Urutan yang paling sering digunakan adalah perintah numerik dan
linier dalam kasus rata-rata sehingga umumnya, persyaratan waktunya
leksikografis. Penyortiran adalah langkah penting yang digunakan dalam
rendah; serendah O(n+k) di mana k adalah parameter. Bucket sort juga
berbagai algoritma. Oleh karena itu, kebutuhan untuk mengoptimalkannya
memiliki beberapa keterbatasan. Untuk mengetahui jumlah ember yang
sangat penting.
diperlukan, kita harus mengetahui nilai elemen maksimum dalam daftar
Ada banyak upaya yang dilakukan untuk menganalisis
input. Keterbatasan lainnya adalah jika semua elemen masuk dalam satu
kompleksitas algoritma pengurutan [1] yang mengarah pada
ember maka itu berubah menjadi semacam penyisipan normal yang
penemuan berbagai algoritma yang menarik dan efisien serta
mengurangi efisiensinya.
perbaikan yang sudah ada. Untuk mendapatkan algoritma baru
Sortir Kulit[9], [10] terutama merupakan variasi dari Insertion Sort di mana
dan lebih baik seperti yang dibahas dalam makalah ini,
kami mengizinkan pertukaran nomor non-kontinyu dalam daftar. Di Shell Sort,
diperlukan untuk mempelajari dan memahami algoritma yang
kami membuat daftar yang diberikan diurutkan celah untuk nilai celah yang
ada. Algoritma berikut telah digunakan untuk membandingkan
besar dan terus mengurangi nilainya hingga menjadi 1.
kinerja yang diusulkan.
Algoritma:
Sortir Penyisipan[2], [3] adalah algoritma sederhana yang melakukan iterasi,
1. Inisialisasi nilai gap.
memeriksa satu elemen input sekaligus, dan menumbuhkan daftar output yang
2. Bagilah daftar tersebut menjadi daftar yang lebih kecil dengan interval celah yang sama.
diurutkan. Ini berulang sampai tidak ada elemen input yang tersisa. Kompleksitas
waktu kasus rata-rata bersifat Kuadrat; Pada2). java.util.Arrays.sort()adalah metode 3. Urutkan sub-daftar ini pada interval celah.
bawaan yang digunakan untuk mengurutkan daftar di Java. Ini menggunakan variasi 4. Ulangi sampai daftar lengkap diurutkan.
sortir cepat(Quicksort dua poros) ke

ICCCNT ke-10 2019


6-8 Juli 2019, IIT - Kanpur,
Penggunaan berlisensi resmi terbatas pada: Ingrid Nurtanio. DiunduhKHaianp , rsaya0sebuah1,2020 pukul 02:15:38 UTC dari IEEE Xplore. Pembatasan berlaku.
bDied
HAIkamucrke
IEEE - 45670

Salah satu keuntungan utama dari Shell Sort adalah efisien untuk return {m, nilai dasar kuadrat panjang input} hash
daftar kecil dan penyortiran berulang yang akan sangat penting fungsi (int i, int[] code) adalah
ketika mengatur elemen bucket. Juga, ini berlipat ganda lebih cepat return (i/code[0] * (code[1] - 1))
daripada Bubble Sort dan Insertion Sort. Meskipun kompleksitas
fungsi akhir hash
waktunya bergantung pada nilai urutan celah yang diperoleh selama
eksekusi algoritma, Shell Sort umumnya membutuhkan O(n log(n)) pengurutan fungsi (Daftar ember)
waktu untuk mengurutkan daftar yang diberikan. adalah n <- ukuran ember
Keterbatasan utama Shell Sort adalah rumit untuk dipahami. untuk celah := n/2 hingga (> 0) dan (mengurangi celah menjadi celah/2
Kerugian lain adalah bahwa waktu berjalannya sangat bergantung setelah setiap iterasi)
pada urutan celah yang digunakannya. Ini tidak seefisien Merge Sort untuk i := gap ke (kurang dari n)
atau Quicksort tetapi dapat memberikan peningkatan pada Insertion
temp <- elemen pada indeks i dalam ember
Sort.
untuk j := i to (elemen pada indeks (j - gap) > temp and
Perbaikan yang diberikan oleh Shell Sort dijelaskan dengan jelas di
j >= gap) dan (j= j-gap setelah setiap iterasi)
bagian selanjutnya pada algoritma yang diusulkan.
elemen di j di bucket <= elemen di (j - gap) ujung
II. PDIKEMBALIKANWORK untuk
Seperti disebutkan di bagian sebelumnya, algoritma yang diusulkan berakhir untuk

merupakan perbaikan dari algoritma Bucket Sort asli yang digunakan berakhir untuk

untuk mengurutkan nomor daftar dengan menggunakan ember. Bucket pengurutan fungsi akhir
menentukan besaran (rentang) elemen yang dapat ditampungnya.
AKU AKU AKU. FRENDAHCHARTA
Setelah elemen dimasukkan ke dalam ember yang sesuai, Insertion sort
digunakan untuk mengaturnya dalam urutan yang benar. Dalam
algoritma (yang diusulkan) ini, Shell Sort digunakan sebagai pengganti
Insertion Sort untuk mengatur elemen di dalam bucket karena umumnya
membutuhkan waktu yang lebih singkat.

SEBUAH.Algoritma Terperinci

fungsi bucketSort (int input[]) adalah


kode <- hash(input[])
ember <- daftar ember untuk i := 0 hingga
(panjang input - 1) ember[fungsi hash(i,
kode)] := input[i] akhir untuk

untuk i := 0 sampai (jumlah ember)


sort(bucket)
berakhir untuk

ndx := 0
untuk b := 0 hingga (jumlah ember) untuk j := 0 hingga
(ukuran setiap ember - 1) input[ndx++] := elemen dalam
ember[b] pada indeks j akhir untuk

berakhir untuk

fungsi akhir bucketSort

fungsi hash(int input[]) adalah


m <- input[0]
for i := 1 to (panjang input - 1) jika
m < input[i] maka m := input[i]
end if
berakhir untuk
Gambar 1: Diagram Alir dari algoritma yang diusulkan

ICCCNT ke-10 2019


6-8 Juli 2019, IIT - Kanpur,
Penggunaan berlisensi resmi terbatas pada: Ingrid Nurtanio. DiunduhKHaianp , rsaya0sebuah1,2020 pukul 02:15:38 UTC dari IEEE Xplore. Pembatasan berlaku.
bDied
HAIkamucrke
IEEE - 45670

Bagan alir algoritme ini tetap sama dengan Bagan Bucket yang
tidak diperbaiki. Ini karena perubahan yang diamati adalah cara
bucket diurutkan (menggunakan Shell Sort, bukan Insertion Sort).
Bagian berikut memberikan studi kasus dari algoritma yang
diusulkan dengan daftar sampel sepuluh angka.

IV. CASESTUDY
Untuk menjelaskan flowchart dari bagian sebelumnya, di sini ditunjukkan studi
kasus. Daftar sepuluh bilangan bulat telah digunakan untuk
mendemonstrasikan implementasi dari algoritma yang diusulkan. Algoritme
pertama-tama melakukan Bucket Sort pada daftar yang diberikan dengan
memasukkan semua elemen ke dalam ember masing-masing:

Gambar 3: Implementasi Shell Sortir pada ember sampel

Seperti yang terlihat dalam studi kasus, Shell Sort menggunakan urutan celah
untuk mengurutkan elemen. Bagian berikut menjelaskan seberapa baik kinerja
algoritma yang diusulkan dengan membandingkannya dengan teknik
pengurutan lain yang sangat mirip atau merupakan salah satu yang paling
efisien untuk daftar pengurutan. Bagian ini juga menjelaskan pengaturan
eksperimental yang digunakan untuk hal yang sama.

V. RHASIL
Segmen ini menjelaskan hasil yang diperoleh untuk tujuan makalah ini.
Pengaturan yang digunakan untuk hal yang sama juga dijelaskan.

SEBUAH.Pengaturan eksperimen

Susunan percobaan yang digunakan untuk penentuan hasil makalah ini


adalah sebagai berikut.
• Saat merekam waktu yang dibutuhkan oleh algoritme yang
Gambar 2: Implementasi algoritma Bucket Sort
berbeda, semua koneksi ke jaringan apa pun terputus dan
semua proses latar belakang dikurangi seminimal mungkin.
Sekarang, ketika nomor telah dimasukkan ke dalam ember masing-
masing, Shell Sort diimplementasikan untuk mengatur nomor masing-
masing ember. Berikut ini adalah demonstrasi yang sama dengan salah
• NetBeans IDE digunakan untuk menghitung kebutuhan waktu
untuk algoritma yang berbeda. Perawatan diambil bahwa
satu ember. Di sini, salah satu bucket di atas diurutkan menggunakan
setiap algoritma penyortiran disediakan dengan kondisi yang
Shell Sort untuk mendemonstrasikan metodenya:
sama untuk mengambil bacaan.

ICCCNT ke-10 2019


6-8 Juli 2019, IIT - Kanpur,
Penggunaan berlisensi resmi terbatas pada: Ingrid Nurtanio. DiunduhKHaianp , rsaya0sebuah1,2020 pukul 02:15:38 UTC dari IEEE Xplore. Pembatasan berlaku.
bDied
HAIkamucrke
IEEE - 45670

Seperti disebutkan sebelumnya, algoritme yang diusulkan adalah peningkatan dari 2. Daftar kedua, Daftar 2, berisi bilangan bulat dari 0 hingga
Bucket Sort karena yang terakhir membutuhkan panjang daftar bersama dengan 1.000.000 (satu juta), termasuk 0. Angka-angka
daftar nomor yang akan diberikan sebagai parameter yang tidak dimiliki oleh
diatur dalam urutan menurun.
algoritme yang ditingkatkan.
3. Daftar ketiga, Daftar 3, berisi bilangan bulat dari 0 hingga
Secara internal, Bucket Sort menggunakan Insertion Sort untuk menyusun angka
dalam sebuah ember. Algoritma ini menggunakan Shell Sort untuk hal yang sama
1.000.000 (satu juta), termasuk 0. Angka-angka
yang mengarah pada pengurangan persyaratan waktu. diatur dalam urutan menaik.
Algoritma yang ditingkatkan telah diuji dan hasilnya telah dihitung 4. Daftar keempat, Daftar 4, berisi bilangan bulat '42' tertulis
dan dibandingkan dengan teknik pengurutan lainnya [11], [12] yang 1.000.000 kali, berulang kali.
sangat mirip atau merupakan salah satu yang paling efisien untuk 5. Daftar kelima, Daftar 5, berisi bilangan bulat mulai dari 1
daftar pengurutan.
sampai dengan 100 kecuali salah satunya yaitu 1.000.000
B.Kompleksitas Waktu dari Berbagai Algoritma yang Digunakan (satu juta). Daftar ini berisi pengulangan.

Metode\Daftar Terbaik Rata-rata Terburuk


Bagian berikut merangkum hasil yang diperoleh dengan
menyebutkan dan menjelaskan batasan yang dilampaui.
Sortir Keranjang - n+k n2* k VI. CKESIMPULAN
Tergantung pada Tergantung pada Seperti yang terlihat di bagian sebelumnya, algoritma yang diusulkan
Sortir Kulit n log (n)
celah celah memiliki kinerja yang buruk dalam daftar dengan semua elemen sudah
diurutkan. Namun, ia telah menaklukkan berbagai keterbatasan yang
Sortir Penyisipan n n2 n2
dihadapi oleh algoritma tradisional yang sesuai. Perlu dicatat bahwa
Diajukan Tergantung pada Tergantung pada kesimpulan berikut telah ditarik dengan menyimpulkan Bagan 2 dari
n log(n + k)
algoritma celah celah bagian sebelumnya.

sortir cepat n log (n) n log (n) n2 SEBUAH.Batasan Terlampaui


1. Tidak perlu memberikan nilai maksimum dalam daftar input
Gabungkan Sortir n log (n) n log (n) n log (n)
dalam algoritma yang diusulkan.
2. Algoritme yang diusulkan mengatasi batasan
Bagan 1: Waktu yang dibutuhkan oleh berbagai algoritma (n representasi) [13], [14].
nomor yang tidak merata dalam daftar untuk
Bucket Sort.
Metode\Daftar Daftar 1 Daftar 2 Daftar 3 Daftar 4 Daftar 5
3. Jika daftar berisi nomor yang sama terjadi beberapa kali, Shell Sort

Sortir Keranjang 2274 4355 70 49 1147092 akan memakan waktu lebih lama daripada algoritma yang
diusulkan.
Sortir Kulit 199 33 15 833773 9111
B.Penjelasan
Sortir Penyisipan 107125 224729 5 6 106269 Algoritme Bucket Sort asli menggunakan Insertion Sort secara internal, untuk
mengurutkan elemen bucket tetapi metode yang ditingkatkan ini,
Diajukan
278 178 177 115 251 menggunakan Shell Sort untuk melakukan hal yang sama.
algoritma
Ketika dua elemen dalam ember akan diurutkan, terjadi
sortir cepat 167 31 6 6 85 pertukaran. Pertukaran terjadi di segmen yang tidak
bersebelahan dan memindahkan item ke jarak yang lebih jauh
Gabungkan Sortir 213 112 103 111 169 dalam daftar keseluruhan. Insertion Sort, di sisi lain, hanya
memindahkan item satu posisi pada satu waktu. Ini berarti
Bagan 2: Waktu yang dibutuhkan (dalam milidetik) oleh berbagai algoritma untuk
bahwa di Shell Sort, item yang ditukar cenderung lebih dekat ke
dieksekusi.
posisi akhirnya daripada Insertion Sort. Karena item lebih
cenderung lebih dekat ke posisi akhirnya, daftar itu sendiri
Setiap daftar yang disebutkan dalam kasus uji berisi 1.000.000 (satu juta)
menjadi sebagian diurutkan. Juga, ketika gap (seperti pada gap
bilangan bulat.
antara dua elemen yang akan dibandingkan) sama dengan 1,
1. Daftar pertama, Daftar 1, berisi bilangan bulat acak yang terletak di
Shell Sort pada dasarnya bekerja seperti Insertion Sort. Ini
antara 0 sampai dengan 1.000.000 (satu juta); 0 disertakan. Daftar
biasanya terjadi ketika sebagian besar proses penyortiran telah
ini mungkin berisi pengulangan. dilakukan, meninggalkan daftar yang diurutkan sebagian. Dalam
hal ini, Shell Sort akan dapat bekerja dengan sangat cepat,

ICCCNT ke-10 2019


6-8 Juli 2019, IIT - Kanpur,
Penggunaan berlisensi resmi terbatas pada: Ingrid Nurtanio. DiunduhKHaianp , rsaya0sebuah1,2020 pukul 02:15:38 UTC dari IEEE Xplore. Pembatasan berlaku.
bDied
HAIkamucrke
IEEE - 45670

termasuk kesulitan yang dihadapi oleh Shell Sortir saat mengatur ulang
1. Algoritme yang ditingkatkan memiliki fungsi bawaan yang menghitung
angka yang terjadi beberapa kali dalam daftar yang sesuai. Masalah ini
nilai maksimum dari daftar yang diberikan. Oleh karena itu tidak
dengan mudah diatasi dengan Bucket Sort dengan menempatkan elemen
perlu memberikan parameter tambahan.
berulang di bucket yang sama, sehingga memudahkan pengurutan.
2. Dilihat dari bagan, nomor daftar tidak lagi diperlukan
untuk didistribusikan secara merata. Ini karena
Motivasi untuk menulis makalah ini adalah keinginan untuk meningkatkan
penggunaan Shell Sort bukan Insertion Sort.
algoritma Bucket Sort konvensional dan membuatnya menggunakan sumber
3. Bucket Sort bekerja paling baik dengan daftar yang berisi lebih banyak
daya yang tersedia secara lebih efisien.
pengulangan. Ini dilakukan dengan memasukkan semua angka
yang muncul beberapa kali, ke dalam satu ember. Hal ini VIII. REFERENSI
menyebabkan lebih sedikit waktu yang dikonsumsi karena pada
[1] Ashok Kumar Karunanithi, A Survey, Discussion and Comparison of Sorting
awalnya, shell sort harus menghitung posisi angka yang berulang di Algorithms, Department of Computing Science Ume̊ a University, Thesis,
seluruh daftar sedangkan dalam kasus ini, posisi perlu dihitung 2014.
hanya dalam ember yang diberikan. [2] Sandeep Kaur Gill, Virendra Pal Singh, Pankaj Sharma, Durgesh Kumar, Studi
Komparatif Berbagai Algoritma Penyortiran, Jurnal Internasional Studi
C.Keterbatasan yang Bertahan Lanjutan Penelitian Ilmiah, Vol. 4, No. 1, 2019.

Meskipun algoritma yang diusulkan menggabungkan kualitas positif dari [3] B Subbarayudu, L Lalitha Gayatri, P Sai Nidhi, P. Ramesh, R Gangadhar
Reddy, Kishor Kumar Reddy, Analisis Perbandingan pada Algoritma
Bucket Sort dan Shell Sort, algoritma ini masih memiliki beberapa keterbatasan Penyortiran dan Pencarian, Jurnal Internasional Teknik Sipil dan Teknologi
yang tidak dapat diatasi. (IJCIET) Volume 8, Edisi 8, Agustus 2017, hlm. 955–978.
1. Algoritma yang diusulkan tidak mampu mengurutkan daftar [4] Zbigniew Marszalek, Tes Kinerja pada Pengurutan Pengurutan dan Pengurutan
dengan angka negatif. Ini berkat fakta bahwa semua ember Penggabungan Rekursif untuk Pemrosesan Data Besar, Jurnal Ilmiah Peer-review
Kuartalan, 2017-2018, ISSN 1505-4675.
yang dibuat memiliki rentang angka positif.
[5] Smita Paira, Sourabh Chandra, Sk Sakiful Alam, Enhanced Merge Sort- pendekatan
Algoritma saat ini dapat dimodifikasi untuk menangani
baru untuk proses penggabungan, Konferensi Internasional ke-6 Tentang
angka negatif juga. Rentang ember dapat digeser ke Kemajuan Dalam Komputasi & Komunikasi, ICACC 2016.
angka negatif yang memungkinkan angka negatif [6] Kazumaro Aoki dan Hiroki Ueda, Pengayakan Menggunakan Bucket Sort,
diurutkan dengan cara yang mirip dengan angka positif. Konferensi Internasional tentang Teori dan Penerapan Kriptologi dan
2. Seperti disebutkan di atas, algoritma yang diusulkan memiliki Keamanan Informasi ASIACRYPT 2004: Kemajuan Kriptologi
- ASIACRYPT 2004 hal 92-102.
kinerja yang buruk dalam daftar dengan semua elemen
[7] Neetu Faujdar dan Shipra Saraswat, Analisis eksperimental terperinci dari
sudah diurutkan. Ini karena walaupun dalam kondisi jenis ember, DOI: 10.1109/CONFLUENCE.2017.7943114, Konferensi:
terbaiknya, kompleksitas algoritme adalah orde O(n log(n)). Konferensi Internasional ke-7 tentang Komputasi Awan, Ilmu & Teknik
Algoritme saat ini dapat dimodifikasi untuk menggunakan teknik Data (Pertemuan).
pengurutan lain sambil menyortir daftar dengan semua (atau sebagian [8] Andreas Jocksch, Farah Hariri, Trach-Minh Tran, Stephan Brunner, Claudio
Gheller dan Laurent Villard, Algoritma Bucket Sort untuk Metode Particle-
besar) elemen yang sudah ada. Ini akan mengurangi kebutuhan waktu
In-Cell pada Arsitektur Manycore, Konferensi Internasional tentang
dari algoritma yang diusulkan tetapi akan membutuhkan beberapa Pemrosesan Paralel dan Matematika Terapan, PPAM 2015 : Pemrosesan
pengetahuan prasyarat dari daftar yang akan diurutkan. Paralel dan Matematika Terapan pp 43-52.
[9] Robert Sedgewick, Analisis Shellsort dan Algoritma Terkait, ESA '96 Prosiding
VII. MOTIVASI DANNEED UNTUK INIPAPER Simposium Eropa Tahunan Keempat tentang Algoritma, Halaman 1-11.
Bagian ini membahas tentang kebutuhan dan motivasi dari makalah
[10] https://www.tutorialspoint.com/data_structures_algorithms/shell_sort_algo
penelitian. Juga, temuan baru dari penelitian yang dilakukan telah
rithm.htm.
diuraikan.
[11] Mingzhu Quian, Xiaobao Wang, Optimalisasi dan Analisis Kinerja
Seperti disebutkan di atas, algoritma Bucket Sort asli menggunakan Algoritma Penyortiran Antrian dan Stack, Prosiding Konferensi AIP
Insertion Sort secara internal sedangkan algoritma ini menggunakan Shell 1955, 040144 (2018).
Sort. Keuntungan utama dari Shell Sort adalah ia secara efisien menyortir [12] Feiyang Chen, Nan Chen, Hanyang Mao, Hanlin Hu, Algoritma penyortiran
daftar yang tidak merata yang telah menjadi masalah penting dalam yang efisien - Ultimate Heapsort(UHS), CHUANGXINBAN JOURNAL OF
COMPUTING, MAR 2018.
algoritme asli.
[13] https://www.geeksforgeeks.org/.
Selain itu, menggunakan Bucket Sort dan Shell Sort bersama-sama telah
[14] https://www.wikipedia.org/.
mengatasi beberapa masalah yang dihadapi oleh yang terakhir juga. Ini

ICCCNT ke-10 2019


6-8 Juli 2019, IIT - Kanpur,
Penggunaan berlisensi resmi terbatas pada: Ingrid Nurtanio. DiunduhKHaianp , rsaya0sebuah1,2020 pukul 02:15:38 UTC dari IEEE Xplore. Pembatasan berlaku.
bDied
HAIkamucrke

Anda mungkin juga menyukai