দ্রুত সাজান
দ্রুত বাছাই হল জাভাস্ক্রিপ্টের সবচেয়ে গুরুত্বপূর্ণ বাছাই পদ্ধতিগুলির মধ্যে একটি। এটি একটি অ্যারে থেকে একটি পিভট মান (একটি এলোমেলো মান) নেয়। অ্যারের অন্যান্য সমস্ত উপাদান দুটি বিভাগে বিভক্ত। সেগুলি পিভট মানের থেকে কম এবং পিভট মানের থেকে বেশি হতে পারে।
তারপরে প্রতিটি বিভাগ (পিভটের চেয়ে কম এবং পিভটের চেয়ে বড়) একই পদ্ধতির অধীনে একটি পিভট বেছে নেওয়া হয় তারপর প্রতিটি বিভাগকে উপ-বিভাগে ভাগ করা হয় (পিভটের চেয়ে কম এবং পিভটের চেয়ে বড়) .
অবশেষে, উপ-শ্রেণীগুলিকে এমনভাবে বিভক্ত করা হয়েছে যাতে তুলনা করার মতো আর কোনো উপাদান না থাকলে সেগুলিতে একটি উপাদান বা কোনো উপাদান থাকতে পারে। বাকি মানগুলিকে পূর্ববর্তী কিছু পয়েন্টে একটি পিভট হিসাবে চিহ্নিত করা হবে এবং এই সর্বনিম্ন সাব শ্রেণীতে ঠেকেনি৷
উদাহরণ
<html>
<body>
<script>
function quickSort(originalArr) {
if (originalArr.length <= 1) {
return originalArr;
} else {
var leftArr = [];
var rightArr = [];
var newArr = [];
var pivot = originalArr.pop(); // Take a pivot value
var length = originalArr.length;
for (var i = 0; i < length; i++) {
if (originalArr[i] <= pivot) { // using pivot value start comparing
leftArr.push(originalArr[i]);
} else {
rightArr.push(originalArr[i]);
}
}
return newArr.concat(quickSort(leftArr), pivot, quickSort(rightArr)); // array will be //returned untill sorting occurs
}
}
var myArray = [9, 0, 2, 7, -2, 6, 1 ];
document.write("Original array: " + myArray);
var sortedArray = quickSort(myArray);
document.write("Sorted array: " + sortedArray);
</script>
</body>
</html> আউটপুট
Original array: 9,0,2,7,-2,6,1 Sorted array: -2,0,1,2,6,7,9