下列四种排序中()的空间复杂度最大
A.快速排序
B.冒泡排序
C.希尔排序
D.堆
正确答案是 A
快速排序,正常为O(log2n),这也是递归的深度,如果基准值选择不好为O(n),当然,即使非递归结果也是如此
冒泡排序属于简单排序,只需要几个辅助循环变量,因此为O(1) 希尔排序,只是将直接插入排序进行修改,一般不设置特别的缩小增量序列,也是O(1)
快速排序有递归深度的空间,归并O(N)
时间和空间是矛盾的,时间好的算法,空间就不会太好,并归和快排时间好,空间就花的多
快速排序需要用到递归,递归本身就是耗内存的,对于快速排序一般空间复杂度O(Nlogn)
请写出以下代码执行输出:(构造函数、静态块执行顺序)
一棵具有n个结点的二叉树,若它有m个叶子结点,则该二叉树中度为1的结点个数是多少?
北京有一条1公里长的街道,你认为一天能收多少钱的停车费?
基于TCP协议建立连接和结束连接的过程
快速排序有递归深度的空间,归并O(N)
时间和空间是矛盾的,时间好的算法,空间就不会太好,并归和快排时间好,空间就花的多
快速排序需要用到递归,递归本身就是耗内存的,对于快速排序一般空间复杂度O(Nlogn)