貌似现在接触到的快速排序都使用递归方法,无可厚非在这个算法中递归确实是很不错的方法。但是纠结的算法老师要让我们实现非递归的方法来实现快速排序。上过数据结构的应该都知道递归的方法在程序执行的时候其实是通过栈来实现递归的现场保护(不知道是不是应该这么说)。所以还是使用了栈来实现这个算法,45 行代码应该很好理解。
本文介绍了一种非递归方式实现快速排序算法的方法。通常快速排序采用递归来实现,但这里通过使用栈来模拟递归的过程,从而避免了直接使用递归。这种方式不仅有助于理解递归的本质,而且在某些情况下可能更为高效。
貌似现在接触到的快速排序都使用递归方法,无可厚非在这个算法中递归确实是很不错的方法。但是纠结的算法老师要让我们实现非递归的方法来实现快速排序。上过数据结构的应该都知道递归的方法在程序执行的时候其实是通过栈来实现递归的现场保护(不知道是不是应该这么说)。所以还是使用了栈来实现这个算法,45 行代码应该很好理解。
1212
6314
2615
2565

被折叠的 条评论
为什么被折叠?