Analisis Perbandingan Algoritma Sorting Dalam Javascript Untuk Meningkatkan Efisiensi Pengurutan Produk Pada Aplikasi ECommerce Desta Adyangga Saputra1. Mutiara Sofia Ramadhani2. Azka Failandri3. Ahmad Turmudi4. Imam Prayogo Pujiono5 12345Program Studi Informatika. Fakultas Ekonomi dan Bisnis Islam. UIN K. Abdurrahman Wahid Pekalongan Jl. Kusuma Bangsa No. 9 Pekalongan. Jawa Tengah . Indonesia 51141 e-mail: 1desta. saputra24082@mhs. ramadhani24083@mhs. id, 3m. failandri24052@mhs. turmudi24069@mhs. id, 5imam. prayogopujiono@uingusdur. Abstrak Penelitian ini bertujuan untuk membandingkan efisiensi enam algoritma sorting dalam JavaScript, yaitu Bubble Sort. Selection Sort. Insertion Sort. Merge Sort. Quick Sort, dan Heap Sort, pada proses pengurutan produk dalam aplikasi e-commerce. Efisiensi dinilai berdasarkan dua metrik utama: rata-rata waktu eksekusi . alam milideti. dan konsumsi memori . alam kilobyt. Evaluasi dilakukan melalui eksperimen komputasional terhadap dataset acak berukuran 100, 1. 000, dan 10. 000 item, yang dibuat menggunakan library Faker. Js Pengukuran dilakukan menggunakan fungsi performance. now() untuk waktu eksekusi dan memoryUsage(). heapUsed untuk memori, dengan tiga kali pengulangan untuk memperoleh nilai rata-rata. Hasil menunjukkan bahwa Quick Sort mencatat waktu eksekusi rata-rata 4,553 ms dan penggunaan memori sebesar 15. 891 KB pada dataset 10. 000 item, menjadikannya algoritma paling efisien. Merge Sort juga menunjukkan performa stabil dengan waktu eksekusi 9,894 ms dan memori 15. 810 KB. Sebaliknya. Bubble Sort dan Selection Sort menghasilkan waktu eksekusi yang jauh lebih tinggi, masingmasing 185. 874 ms dan 125. 708 ms, serta konsumsi memori terbesar. Temuan ini memberikan acuan praktis bagi pengembang dalam memilih algoritma sorting yang optimal untuk meningkatkan kinerja sistem dan responsivitas aplikasi e-commerce berbasis JavaScript. Kata kunci: Algoritma Sorting. Aplikasi E-commerce. Efisiensi. Faker. Js. JavaScript Abstract This study aims to compare the efficiency of six sorting algorithms in JavaScript Bubble Sort. Selection Sort. Insertion Sort. Merge Sort. Quick Sort, and Heap Sort for sorting product data in e-commerce applications. Efficiency was evaluated based on two key performance metrics: average execution time . n millisecond. and memory usage . n kilobyte. A computational experiment was conducted using randomly generated datasets of 100, 1,000, and 10,000 items created with the Faker. Js library. Measurements were taken using now() for execution time and process. memoryUsage(). heapUsed for memory consumption, with each test repeated three times to obtain the average. The results show that Quick Sort achieved the best performance, with an average execution time of 4. 553 ms and a memory usage of 15. 891 KB on the 10,000item dataset. Merge Sort also demonstrated stable performance with 9. 894 ms execution time and 15. 810 KB of memory usage. In contrast. Bubble Sort and Selection Sort recorded significantly higher execution times of 874 ms and 125. 708 ms, respectively, along with the highest memory consumption. These findings provide practical guidance for developers in selecting efficient sorting algorithms to enhance system performance and responsiveness in JavaScript-based e-commerce applications. Keywords: Sorting Algorithm. E-commerce Application. Efficiency. Faker. Js. JavaScript Analisis Perbandingan Algoritma Sorting Dalam Javascript Untuk Meningkatkan Efisiensi Pengurutan Produk Pada Aplikasi E-Commerce. Author: Desta Adyangga Saputra. Mutiara Sofia Ramadhani. Azka Failandri. Ahmad Turmudi. Imam Prayogo Pujiono Ae Sainstech. Vol. No. : 1 Ae 10 DOI : https://doi. org/10. 37277/stch. Pendahuluan Quick Sort diuji berdasarkan kecepatan dan Perkembangan teknologi informasi yang begitu pesat telah membawa perubahan besar dalam berbagai aspek kehidupan manusia (Supriyatna, 2. Percepatan ini turut mendorong lahirnya berbagai inovasi di beragam disiplin ilmu, termasuk dalam bidang teknologi informasi itu sendiri, yang terus beradaptasi untuk menjawab tantangan zaman (Awaliyah et al. , 2. Salah satu dampak nyata dari transformasi ini terlihat dalam dunia perdagangan, di mana digitalisasi telah menciptakan paradigma baru melalui e-commerce sebagai solusi utama yang menawarkan kemudahan akses, fleksibilitas waktu, dan sistem pembayaran terintegrasi, sehingga menjadi pilihan utama masyarakat modern (Ilyas et al. , 2. Dengan berbagai fitur seperti akses yang mudah, fleksibilitas dalam waktu transaksi, serta integrasi metode pembayaran digital, ecommerce semakin menjadi pilihan utama masyarakat modern (Hanani et al. , 2. Seiring dengan meningkatnya jumlah produk dan data pengguna yang dikelola, muncul tantangan dalam menyusun dan menyajikan informasi tersebut secara optimal terutama dalam hal pengurutan produk berdasarkan harga, nama, maupun popularitas (Fitri et al. , 2. Pengurutan yang tepat tidak hanya mempercepat proses pencarian produk oleh pengguna, tetapi juga meningkatkan efisiensi sistem dan kepuasan pelanggan (Iskandar et , 2. Salah satu elemen kunci dalam proses tersebut adalah algoritma sorting yang digunakan oleh sistem (Basir, 2. Setiap jenis algoritma memiliki pendekatan tersendiri (Syafnidawaty, 2. terhadap pengolahan data misalnya Quick Sort yang dikenal cepat pada dataset besar, dan Insertion Sort yang lebih cocok untuk dataset kecil (Pujiono et al. , 2. Penelitian (Rosyadi & Utami, 2. sebelumnya bahkan menyatakan bahwa pemilihan algoritma pengurutan yang sesuai dapat menurunkan waktu respons aplikasi secara signifikan. Hingga mencapai 40% lebih cepat dibanding algoritma (Poetra, 2. Dalam studi lain, algoritma Bubble Sort. Insertion Sort, dan JavaScript, menunjukkan variasi performa tergantung ukuran data (Wijaya et al. , 2. Lebih lanjut, (Pujiono et al. , 2. dalam studinya membandingkan tujuh algoritma Javascript menemukan bahwa efisiensi memori dan waktu sangat tergantung pada ukuran dataset, serta menunjukkan bahwa Quick Sort dan Merge Sort cenderung stabil dalam skala besar (Rizquina & Ratnasari, 2. Sedangkan penelitian oleh (Basir, 2. menunjukkan bahwa algoritma Heap Sort memberikan hasil paling konsisten dalam aspek kompleksitas waktu dibandingkan Merge dan Insertion Sort, dengan performa stabil meskipun jumlah data meningkat secara signifikan (Salsabilah et al. , 2. Hasil ini semakin menegaskan bahwa kompleksitas algoritma baik dalam aspek ruang maupun waktu harus menjadi pertimbangan utama dalam pengembangan aplikasi pengurutan data. Penelitian ini bertujuan untuk mengevaluasi performa beberapa algoritma sorting berbasis JavaScript dengan fokus pada efisiensi waktu eksekusi dan konsumsi memori pada sisi klien. Pengujian dilakukan dengan dataset acak berukuran mulai dari merepresentasikan data produk e-commerce (Yanti & Emi Sita Eriana, 2. Studi ini juga dengan kebutuhan pemrosesan sisi pengguna untuk memastikan kecepatan akses data secara langsung tanpa harus membebani server utama (Poetra, 2. Secara praktis, hasil dari penelitian ini diharapkan dapat memberikan kontribusi nyata bagi pengembang aplikasi web dalam memilih strategi algoritma yang tepat untuk pengurutan produk (Siti Aisyah et al. , 2. Temuan ini memperkuat pernyataan (Hanani et al. , 2. yang menyatakan bahwa pemahaman terhadap struktur dasar algoritma pengurutan merupakan dasar pengelolaan data yang efisien dan akurat Analisis Perbandingan Algoritma Sorting Dalam Javascript Untuk Meningkatkan Efisiensi Pengurutan Produk Pada Aplikasi E-Commerce. Author: Desta Adyangga Saputra. Mutiara Sofia Ramadhani. Azka Failandri. Ahmad Turmudi. Imam Prayogo Pujiono Ae Sainstech. Vol. No. : 1 Ae 10 DOI : https://doi. org/10. 37277/stch. (Anggreani et al. , 2. Di sisi lain, optimalisasi algoritma pengurutan juga memberi dampak langsung terhadap strategi penjualan dan kecepatan sistem dalam ecommerce sebagaimana dijelaskan oleh (Harahap & Effendy, 2. dalam kajiannya mengenai integrasi strategi pemasaran digital dan efisiensi teknis aplikasi (Milal et al. , 2. Dengan pendekatan yang terarah, penelitian ini tidak hanya memperluas pemahaman mengenai algoritma sorting, tetapi juga mendorong penerapannya dalam skenario dunia nyata secara lebih efektif dan terukur. Metode Penelitian Penelitian ini menggunakan pendekatan kuantitatif dengan metode eksperimen komputasional untuk menganalisis dan membandingkan efisiensi waktu eksekusi dari beberapa algoritma pengurutan . yang di implementasikan dalam bahasa pemrograman JavaScript. Fokus utama dari eksperimen ini adalah mengukur dan menganalisis waktu eksekusi algoritma dalam konteks pengurutan data produk pada aplikasi e-commerce. Objek dalam penelitian ini terdiri dari enam algoritma pengurutan yang umum digunakan, yaitu Bubble Sort. Insertion Sort. Selection Sort. Merge Sort. Quick Sort, dan Heap Sort. Semua menggunakan JavaScript dan dieksekusi di lingkungan Node. js agar proses pengujian berjalan secara optimal tanpa adanya pengguna (UI). Untuk mendukung proses pengujian, data produk e-commerce dalam penelitian ini dibuat secara acak menggunakan library Faker. Js, sebuah library open-source yang banyak digunakan untuk menghasilkan dummy data ( data tiruan ). Data produk terdiri dari tiga atribut: id, name, dan price. Atribut name dihasilkan dari fungsi productName() menghasilkan nama produk acak, sedangkan price berasal dari faker. yang menghasilkan harga dalam format Pembuatan data ini dilakukan melalui fungsi generateData. , yang memungkinkan program membuat dataset menghasilkan data yang banyak sekaligus dengan mudah. Untuk memperoleh hasil pengujian yang menyeluruh, data dummy dihasilkan dalam tiga variasi skala, yaitu sebanyak 100, 1000, 000 item. Variasi ini dirancang untuk menguji ketahanan dan efisiensi masingmasing algoritma terhadap peningkatan jumlah data. Data awal bersifat acak untuk mencerminkan kondisi riil aplikasi ecommerce di mana urutan produk tidak selalu konsisten. Proses pengumpulan data dilakukan dengan mencatat waktu eksekusi dari masing-masing now() atau console. dalam JavaScript. Setiap algoritma diuji dalam dua skenario: pengurutan berdasarkan harga produk . ecara ascendin. dan pengurutan berdasarkan nama produk . ecara alfabetis A-Z). Masing-masing pengujian diulang tiga kali untuk memastikan akurasi data, dan nilai rata-rata waktu eksekusi dari ketiga pengujian digunakan sebagai data akhir. Gambar 1. Library Faker. Analisis Perbandingan Algoritma Sorting Dalam Javascript Untuk Meningkatkan Efisiensi Pengurutan Produk Pada Aplikasi E-Commerce. Author: Desta Adyangga Saputra. Mutiara Sofia Ramadhani. Azka Failandri. Ahmad Turmudi. Imam Prayogo Pujiono Ae Sainstech. Vol. No. : 1 Ae 10 DOI : https://doi. org/10. 37277/stch. Analisis dalam penelitian ini sepenuhnya difokuskan pada perbandingan efisiensi waktu eksekusi antar algoritma. Hasil yang diperoleh disajikan dalam bentuk tabel dan grafik untuk memberikan gambaran yang jelas mengenai performa relatif dari tiap algoritma dalam setiap skala dan skenario Visualisasi ini bertujuan untuk mempermudah pembaca dalam menarik kesimpulan tentang algoritma mana yang paling efisien dalam pengurutan data produk e-commerce berbasis JavaScript. disiapkan kemudian diproses melalui fungsi algoritma sesuai metode yang dipilih. Seluruh proses dijalankan dalam lingkungan Node. tanpa antarmuka pengguna CLI guna memastikan kestabilan eksekusi. Setelah proses pengurutan berlangsung, sistem melakukan pengukuran performa dengan dua parameter utama: waktu eksekusi memoryUsage(). heapUsed. Pengujian dilakukan sebanyak tiga kali untuk tiap ukuran data, menghasilkan total sembilan percobaan per algoritma. Seluruh hasil pengukuran direkam dan disajikan dalam bentuk tabel serta visualisasi grafik, yang digunakan sebagai dasar evaluasi komparatif antar algoritma berdasarkan efisiensi waktu dan alokasi memori. Rangkaian alur ini dirancang untuk menghasilkan data eksperimental yang dapat dipertanggungjawabkan dan replikatif. Hasil dan Pembahasan Gambar 2. Diagram Alur Pemrosesan Algoritma Sorting Beradasarkan Gambar 2 menyajikan diagran alur yang diawali dari proses inisialisasi lingkungan kerja, termasuk pengaturan library pendukung seperti Faker. Js untuk sebuah data set. Langkah selanjutnya adalah proses data generation dengan jumlah masing-masing 100, 1. 000 entri, terdiri atas atribut id, name, dan price. Setelah data dibuat, dilakukan proses seleksi algoritma secara manual dari enam algoritma pengurutan seperti Bubble Sort. Selection Sort. Insertion Sort. Quick Sort. Merge Sort, dan Heap Sort. Data yang telah Penelitian ini dilakukan menggunakan bahasa pemrograman NodeJs dengan Visual Studio Code (VSCod. sebagai Integrated Development Environment (IDE) dan ekstensi Code Runner untuk menjalankan kode program. Compiler yang digunakan NodeJs kompatibilitas eksekusi dan dokumentasi hasil pengujian dilakukan menggunakan Snipping Tool untuk mengambil screenshot. Spesifikasi perangkat yang digunakan adalah: Sistem Operasi: Windows 11 Pro RAM: 16 GB CPU: Intel Core i3-12100F (@3. GHZ) Penyimpanan: SSD 512 GB Penelitian ini mengevaluasi kinerja enam algoritma pengurutan, yakni Bubble Sort. Selection Sort. Insertion Sort. Quick Sort. Merge Sort. Heap Sort. Semua algoritma tersebut diuji dengan menggunakan dataset yang telah distandarisasi dan dikelompokkan ke dalam tiga kategori ukuran: ArrayKecil terdiri dari 100 elemen. ArraySedang Analisis Perbandingan Algoritma Sorting Dalam Javascript Untuk Meningkatkan Efisiensi Pengurutan Produk Pada Aplikasi E-Commerce. Author: Desta Adyangga Saputra. Mutiara Sofia Ramadhani. Azka Failandri. Ahmad Turmudi. Imam Prayogo Pujiono Ae Sainstech. Vol. No. : 1 Ae 10 DOI : https://doi. org/10. 37277/stch. 000 elemen, dan ArrayBesar 000 elemen. Data yang digunakan dihasilkan secara acak dari library Faker. untuk menjaga objektivitas pengujian lalu salah satu algoritma dipilih untuk melakukan Dalam protokol pengujian, setiap algoritma dijalankan sebanyak tiga kali pada masing-masing kategori untuk memastikan konsistensi hasil. Secara rinci, percobaan untuk dataset 100 elemen dilakukan pada uji ke-1 hingga ke-3, untuk dataset 1. 000 elemen pada uji ke-4 hingga ke-6, dan untuk dataset 000 elemen pada uji ke-7 hingga ke-9. Selama pengujian, hanya dua aplikasi yang Visual Studio Code untuk eksekusi kode dan Snipping Tools untuk dokumentasi visual melalui screenshot untuk meminimalkan gangguan pada CPU. Berikut adalah penjelasan dari pengujian tiap 1 Bubble Sort // Fungsi Bubble Sort melakukan perbandingan antar-elemen secara berulang dan menukar pasangan elemen yang keliru urutannya, hingga array terutama. dan konsumsi memori selama proses pengurutan dengan Bubble Sort dapat diamati secara lengkap pada Gambar 4. Gambar 4. Pengujian data . , 1000, 10. dalam 3 kali percobaan per data Berdasarkan data pada Gambar 4, waktu eksekusi rata-rata untuk algoritma Bubble Sort pada data sebanyak 100 adalah 0. 594 ms dan rata rata penggunaan memori nya adalah 276 kb. Nilai ini meningkat menjadi 2. ms dan penggunaan memori juga meningkat 792 kb saat data diperbesar menjadi 1000, dan meningkat pesat menjadi rata-rata 185. 874 ms untuk waktu eksekusinya dan rata rata penggunaan 927 kb saat data diperbesar menjadi 10000 data. 2 Selection Sort // Fungsi Selection Sort mencari elemen terkecil dan menempatkannya di posisi awal, dilanjutkan ke posisi berikutnya hingga array Gambar 3. Kode function dari algortima Bubble Sort Pada kode tersebut, algoritma Bubble Sort di implementasikan dalam bahasa Javascript. Data set yang dipakai telah dimasukkan langsung ke dalam program dan dioperasikan menurut skema pengujian yang sudah Pengujian pertama hingga ketiga menggunakan 100 data (Dataset Keci. , 000 data (Dataset Sedan. , sedangkan pengujian ketujuh hingga kesembilan melibatkan 10. 000 data (Dataset Besa. Hasil pengukuran waktu komputasi Gambar 5. Kode function dari algortima Selection Sort Pada kode tersebut, algoritma Bubble Sort di implementasikan dalam bahasa Javascript. Data set yang dipakai telah dimasukkan langsung ke dalam program dan dioperasikan menurut skema pengujian yang sudah Pengujian pertama hingga ketiga menggunakan 100 data (Dataset Keci. Analisis Perbandingan Algoritma Sorting Dalam Javascript Untuk Meningkatkan Efisiensi Pengurutan Produk Pada Aplikasi E-Commerce. Author: Desta Adyangga Saputra. Mutiara Sofia Ramadhani. Azka Failandri. Ahmad Turmudi. Imam Prayogo Pujiono Ae Sainstech. Vol. No. : 1 Ae 10 DOI : https://doi. org/10. 37277/stch. 000 data (Dataset Sedan. , sedangkan pengujian ketujuh hingga kesembilan melibatkan 10. 000 data (Dataset Besa. Hasil pengukuran waktu komputasi dan konsumsi memori selama proses pengurutan dengan Selection Sort dapat diamati secara lengkap pada Gambar 6. Gambar 6. Pengujian data . , 1000, 10. dalam 3 kali percobaan per data Berdasarkan data pada Gambar 6, waktu eksekusi rata-rata untuk algoritma Selection Sort pada data sebanyak 100 adalah 0. 194 ms dan rata rata penggunaan memori nya adalah 307 kb. Nilai ini meningkat menjadi 2. ms dan penggunaan memori juga meningkat 512 kb saat data diperbesar menjadi 1000, dan meningkat pesat menjadi rata-rata 125. 708 ms untuk waktu eksekusinya dan rata rata penggunaan 907 kb saat data diperbesar menjadi 10000 data. Pada setiap percobaan data tersebut menunjukan angka yang sedikit tidak konsisten di setiap percobaanya. 3 Insertion Sort // Fungsi Insertion Sort menyisipkan elemen satu per satu pada posisi yang tepat dengan cara menggeser elemen yang lebih besar ke Pada kode tersebut, algoritma Insertion sort di implementasikan dalam bahasa Javascript. Data set yang dipakai telah dimasukkan langsung ke dalam program dan dioperasikan menurut skema pengujian yang sudah Pengujian pertama hingga ketiga menggunakan 100 data (Dataset Keci. , 000 data (Dataset Sedan. , sedangkan pengujian ketujuh hingga kesembilan melibatkan 10. 000 data (Dataset Besa. Hasil pengukuran waktu komputasi dan konsumsi memori selama proses pengurutan dengan Insertion Sort dapat diamati secara lengkap pada Gambar 8. Gambar 8. Pengujian data . , 1000, 10. dalam 3 kali percobaan per data Berdasarkan data pada Gambar 8, waktu eksekusi rata-rata untuk algoritma Insertion Sort pada data sebanyak 100 adalah 0. 145 ms dan rata rata penggunaan memori nya adalah 283 kb. Nilai ini meningkat menjadi 0. ms dan penggunaan memori juga meningkat 684 kb saat data diperbesar menjadi 1000, dan meningkat pesat menjadi rata-rata 46. 465 ms untuk waktu eksekusinya dan rata rata penggunaan memori 15. 914 kb saat data diperbesar menjadi 10000 data. Jika dilihat dari data tersebut perubahan yang terjadi dari 100 ke 1000 data tidak terlalu signifikan tetapi berubah pesat saat data nya diperbesar menjadi 10000 data. 4 Quick Sort // Fungsi Quick Sort menempatkan pivot di posisi yang benar di dalam array dengan cara memindah elemen yang lebih kecil pivot ke kiri, dan yang lebih besar ke kanan. Gambar 7. Kode function dari algortima Insertion Sort Analisis Perbandingan Algoritma Sorting Dalam Javascript Untuk Meningkatkan Efisiensi Pengurutan Produk Pada Aplikasi E-Commerce. Author: Desta Adyangga Saputra. Mutiara Sofia Ramadhani. Azka Failandri. Ahmad Turmudi. Imam Prayogo Pujiono Ae Sainstech. Vol. No. : 1 Ae 10 DOI : https://doi. org/10. 37277/stch. Gambar 9. Kode function dari algortima Quick Sort Pada kode tersebut, algoritma Quick Sort di implementasikan dalam bahasa Javascript. Data set yang dipakai telah dimasukkan langsung ke dalam program dan dioperasikan menurut skema pengujian yang sudah Pengujian pertama hingga ketiga menggunakan 100 data (Dataset Keci. , 000 data (Dataset Sedan. , sedangkan pengujian ketujuh hingga kesembilan melibatkan 10. 000 data (Dataset Besa. Hasil pengukuran waktu komputasi dan konsumsi memori selama proses pengurutan dengan Quick Sort dapat diamati secara lengkap pada Gambar 10. Gambar 11. Kode function dari algortima Merge Sort Pada kode tersebut, algoritma Merge sort di implementasikan dalam bahasa Javascript. Data set yang dipakai telah dimasukkan langsung ke dalam program dan dioperasikan menurut skema pengujian yang sudah Pengujian pertama hingga ketiga menggunakan 100 data (Dataset Keci. , 000 data (Dataset Sedan. , sedangkan pengujian ketujuh hingga kesembilan melibatkan 10. 000 data (Dataset Besa. Hasil pengukuran waktu komputasi dan konsumsi memori selama proses pengurutan dengan Merge Sort dapat diamati secara lengkap pada Gambar 12. Gambar 10. Pengujian data . , 1000, 10. dalam 3 kali percobaan per data Berdasarkan data pada Gambar 10, waktu eksekusi rata-rata untuk algoritma Quick Sort pada data sebanyak 100 adalah 0. 123 ms dan rata rata penggunaan memori nya adalah 261 kb. Nilai ini meningkat menjadi 1. ms dan penggunaan memori juga meningkat 604 kb saat data diperbesar menjadi 1000, dan menjadi 4. 553 ms untuk waktu eksekusinya dan rata rata penggunaan 891 kb saat data diperbesar menjadi 10000 data. Jika dilihat dari data tersebut data perbandingan waktu eksekusi 1000 dan 10000 data tidak terlalu signifikan. 5 Merge Sort // Fungsi merge menggabungkan dua subarray terurut menjadi satu secara berurutan Gambar 12. Pengujian data . , 1000, 10. dalam 3 kali percobaan per data Berdasarkan data pada Gambar 12, waktu eksekusi rata-rata untuk algoritma Merge Sort pada data sebanyak 100 adalah 0. 118 ms dan rata rata penggunaan memori nya adalah 246 kb. Nilai ini meningkat menjadi 1. ms dan penggunaan memori juga meningkat 417 kb saat data diperbesar menjadi 1000, dan menjadi 9. 894 ms untuk waktu eksekusinya dan rata rata penggunaan 810 kb saat data diperbesar menjadi 10000 data. Jika dilihat dari data signifikan setiap datanya. Analisis Perbandingan Algoritma Sorting Dalam Javascript Untuk Meningkatkan Efisiensi Pengurutan Produk Pada Aplikasi E-Commerce. Author: Desta Adyangga Saputra. Mutiara Sofia Ramadhani. Azka Failandri. Ahmad Turmudi. Imam Prayogo Pujiono Ae Sainstech. Vol. No. : 1 Ae 10 DOI : https://doi. org/10. 37277/stch. 6 Heap Sort // Fungsi Heap Sort membangun max-heap di sekitar indeks i void heapify 821 kb saat data diperbesar menjadi 10000 data. Jika dilihat dari data tersebut waktu eksekusinya tidak stabil setiap percobaanya. Berdasarkan hasil pengujian algoritma yang sudah di uji, berikut ini adalah rangkuman rata-rata nilai yang di dapat untuk setiap algoritma dalam bentuk gambar grafik dibawah ini. Gambar 13. Kode function dari algortima Heap Sort Pada kode tersebut, algoritma Heap Sort di implementasikan dalam bahasa Javascript. Data set yang dipakai telah dimasukkan langsung ke dalam program dan dioperasikan menurut skema pengujian yang sudah Pengujian pertama hingga ketiga menggunakan 100 data (Dataset Keci. , 000 data (Dataset Sedan. , sedangkan pengujian ketujuh hingga kesembilan melibatkan 10. 000 data (Dataset Besa. Hasil pengukuran waktu komputasi dan konsumsi memori selama proses pengurutan dengan Heap Sort dapat diamati secara lengkap pada Gambar 14. Gambar 15. Rata-rata Waktu Eksekusi pada 6 algoritma sorting Gambar 16. Rata-rata Penggunaan Memori pada 6 algoritma sorting Gambar 14. Pengujian data . , 1000, 10. dalam 3 kali percobaan per data Berdasarkan data pada Gambar 14. eksekusi rata-rata untuk algoritma Heap Sort pada data sebanyak 100 adalah 0. 157 ms dan rata rata penggunaan memori nya adalah 263 kb. Nilai ini meningkat menjadi 1. ms dan penggunaan memori juga meningkat 613 kb saat data diperbesar menjadi 1000, dan menjadi 3. 444 ms untuk waktu eksekusinya dan rata rata penggunaan Berdasarkan gambar 15 dan gambar 16 pada diagram tersebut hasil perbandingan waktu eksekusi dari enam algoritma sorting (Bubble Sort. Selection Sort. Insertion Sort. Quick Sort. Merge Sort, dan Heap Sor. dalam tiga ukuran dataset yang berbeda: 100, 1. 000, dan 10. Hasil evaluasi menunjukkan bahwa: Bubble Sort dan Selection Sort memiliki waktu eksekusi tertinggi di semua skala data, terutama pada dataset besar . 000 ite. , di mana Analisis Perbandingan Algoritma Sorting Dalam Javascript Untuk Meningkatkan Efisiensi Pengurutan Produk Pada Aplikasi E-Commerce. Author: Desta Adyangga Saputra. Mutiara Sofia Ramadhani. Azka Failandri. Ahmad Turmudi. Imam Prayogo Pujiono Ae Sainstech. Vol. No. : 1 Ae 10 DOI : https://doi. org/10. 37277/stch. waktu eksekusi keduanya melonjak Hal ini mencerminkan kelemahan utama algoritma dengan kompleksitas O. A) yang tidak efisien untuk data besar dan penggunaan meningkat secara linear dengan jumlah data. Ini disebabkan karena algoritma ini bekerja secara in-place tanpa banyak alokasi memori Insertion Sort sedikit lebih cepat dari Bubble dan Selection, terutama pada dataset kecil dan sedang, namun tetap tidak optimal pada dataset besar dan memiliki penggunaan sama seperti Bubble Sort dan Selection Sort. Quick Sort dan Merge Sort tampil sebagai algoritma dengan kinerja Quick Sort secara konsisten menunjukkan waktu eksekusi paling rendah di semua ukuran dataset, disusul oleh Merge Sort. Keduanya memperlihatkan kestabilan dan efisiensi yang konsisten, sejalan dengan kompleksitas waktu O. log Merge Sort memiliki penggunaan memori yang sedikit lebih tinggi dibanding algoritma lainnya karena memerlukan alokasi array tambahan . Ini sesuai dengan sifatnya divide-andconquer sepenuhnya in-place. Sedangkan Quick Sort memiliki konsumsi memori yang efisien dan stabil, bahkan pada dataset besar. Meskipun menggunakan rekursi, implementasi penggunaan memori tetap terkendali. Heap Sort menunjukkan performa yang baik, berada di antara Merge Sort dan Insertion Sort, meskipun tidak secepat Quick Sort. Heap Sort menunjukkan efisiensi memori yang baik dan relatif konsisten di semua ukuran data. Kesimpulan Penelitian ini telah mengevaluasi performa enam algoritma pengurutan Bubble Sort. Selection Sort. Insertion Sort. Quick Sort. Merge Sort, dan Heap Sort berdasarkan waktu eksekusi dan konsumsi memori terhadap tiga skala data 100, 1. 000, dan 000 item, dan menghasilkan temuan bahwa Quick Sort memberikan performa paling optimal dengan waktu rata-rata tercepat sebesar 0,123 ms . , 1,243 ms . 000 dat. , dan 4,553 ms . 000 dat. , serta penggunaan memori yang efisien . ,30 KB pada 10. 000 dat. , menjadikannya sebagai algoritma paling layak diterapkan dalam sistem e-commerce berskala besar dan Merge Sort menunjukkan stabilitas performa dengan konsumsi memori yang konsisten dan waktu eksekusi yang relatif cepat . ,894 ms pada 10. 000 dat. , menjadikannya pilihan ideal saat kestabilan proses pengurutan lebih diutamakan, terutama untuk data yang telah sebagian Heap Sort menempati posisi menengah dengan efisiensi cukup baik, sementara Insertion Sort efektif hanya pada dataset kecil namun tidak efisien pada data Sebaliknya. Bubble Sort dan Selection Sort mencatatkan waktu eksekusi paling lambat dan konsumsi memori tertinggi, sehingga tidak direkomendasikan dalam implementasi praktis yang membutuhkan efisiensi tinggi. Dengan demikian, pemilihan algoritma sorting yang tepat, seperti Quick Sort, terbukti memberikan dampak signifikan terhadap kecepatan pencarian dan efisiensi pemrosesan data dalam sistem digital yang kompleks (Agustin, 2. Daftar Pustaka