记录找工作的过程中遇到的和看别人面经过程中看到的比较有意思的面试题。
————————————————————————————————————————————
一、排序
1、快排
快排的基本思想是分治,每次选取一个基准元素,把大于该元素值的所有数据移到一遍,小于其的移到另一边,然后递归对左右两边元素执行相同排序操作。
(1)不用递归去实现快排,这种情况下,可以采用一个辅助栈保存需要继续排序的数组段,详细介绍参照 :http://www.cnblogs.com/fickleness/archive/2013/06/27/3159194.html
(2)单链表实现快排,因为单链表不能向后检索数据,因此在实现过程中,设定两个指针,p,q,依次向前遍历,p之前的所有数据都是小于选定元素的,之后的数据都是大于选定元素的,还有一个tips,即采用交换元素的值代替链表结构的变化,详细介绍参照:http://blog.csdn.net/wumuzi520/article/details/8078322