记一次蚂蚁金服的面试经历( 十 )

6、堆内存和栈内存有什么区别

?堆内存是线程共享的,栈内存是线程私有的;?堆内存用来存放由new创建的对象和数组,栈内存中存放一些基本类型的变量和对象的引用变量;

7、堆排序时间复杂度

排序名称 稳定性 平均时间复杂度 最好时间复杂度 最坏时间复杂度

桶排序 不稳定 O(n) O(n) O(n)

基数排序 稳定 O(n) O(n) O(n)

归并排序 稳定 O(nlogn) O(nlogn) O(nlogn)

快速排序 不稳定 O(nlogn) O(nlogn) O(n^2)

堆排序 不稳定 O(nlogn) O(nlogn) O(nlogn)

冒泡排序 稳定 O(n^2) O(n) O(n^2)

选择排序 不稳定 O(n^2) O(n^2) O(n^2)

8、如果优化数据库的数据查询,另外应用层上还能如何优化?

1)数据库层面上:

推荐阅读