自写的比较简单通俗的冒泡和快速排序的js代码
// 冒泡排序let testArr = [85, 24, 63, 45, 17, 31, 96, 50];let testResult = bubbleSort(testArr);console.log("testResult : ", testResult);function bubbleSort(arr) { arr.forEach((element, index) => { for(let i=index+1; iarr[i]) { [arr[index], arr[i]] = [arr[i], arr[index]]; } } }); return arr;}复制代码
// 快速排序let quickSort = function(arr) { if (arr.length <= 1) { return arr; }; let mid = arr[Math.round(arr.length/2) - 1]; let arrLeft = []; let arrRight = []; for (let i=0; imid) { arrRight.push(arr[i]); }; }; console.log(quickSort(arrLeft).concat([mid], quickSort(arrRight))); // 必须有return,不然会报错,查了一下好像说是递归函数的问题 return quickSort(arrLeft).concat([mid], quickSort(arrRight));};let testArr = [85, 24, 63, 45, 17, 31, 96, 50];let testResult = quickSort(testArr);console.log("testResult", testResult);复制代码