快速排序的基本思路是:1. 从数列中挑出一个元素,称为"基准"(pivot);2. 重新排序数列,所有比基准值小的元素摆放在基准前面,所有比基准值大的元素摆在基准后面(相同的数可以到任何一边)。在这个分区结束之后,该基准就处于数列的中间位置。这个称为分区(partition)操作;3. 递归地(recursively)把小于基准值元素的子数列和大于基准值元素的子数列排序;4. 递归的最底部情形,是数列的大小是零或一,也就是永远都已经被排序好了。虽然一直递归下去,但是这个算法总会结束,因为在每次的迭代(iteration)中,它至少会把一个元素摆到它最后的位置去。
java的快速排序怎么写?
最新推荐文章于 2024-07-23 22:06:37 发布