好吧,我刚刚在学校开始学习排序算法。我想我非常了解快速排序的概念,因为我可以在一张纸上执行它。然而,有了一张纸,我就知道何时停止,也就是何时对数组进行排序。但是,如果我一直检查数组以查看它是否已排序,那就违背了快速排序的目的,快速排序(我认为)不是通过递归检查它是否已排序很多次。当按照定义排序时,我是否必须继续递归到数组中只剩下 1 个元素时,还是有其他方法来终止它?
最佳答案
Do I have to just keep recursing it down to when there is only 1 element left in the array when it is by definition sorted or is there some other way to terminate it?
是的,这正是快速排序应该终止的方式。
关于java - 我如何告诉快速排序算法它应该终止?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58985511/