题解 | #快速排序#
快速排序
https://www.nowcoder.com/practice/38da660199d0400580ac3905c05f5bd6
快速排序的思想就是分治,主要思路就是,找到一个基准值(pivot),然后把整个数组切分成两个数组,左边数组的值都比基准值小,右边数组的值都比基准值大,然后递归对子数组进行排序。(相当于每一个切分下来的数组都是用的快速排序)
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <style> /* 填写样式 */ </style> </head> <body> <!-- 填写标签 --> <script type="text/javascript"> // 填写JavaScript const _quickSort = array => { if(array.length<=1) return array const len = array.length let left = [] let right = [] let pivot = array[0] for(let i=1;i<len;i++){ if(array[i]<pivot){ left.push(array[i]) }else if(array[i]>pivot){ right.push(array[i]) } } return [..._quickSort(left),pivot,..._quickSort(right)] } </script> </body> </html>
手撕题题库 文章被收录于专栏
这是我开卷的第一步!!