数据结构练习
创始人
2025-01-15 13:06:47
0

1.

快速排序的非递归是通过栈来实现的,则前序与层次可以通过控制入栈的顺序来实现,因为递归是会一直开辟栈区空间,所以非递归的实现只需要一个栈的大小,而这个大小是小于递归所要的,

非递归与递归的时间复杂度是一样的,本质没有变化 

 

2.

直接插入排序:是把元素从前先后一个一个插入进去,若是相同值的相对位置也不会改变,所以稳定性好

归并排序: 实现方法是分成多组,但是合并的时候还是要比较大小来合,所以相同值的相对位置也不会改变

选择排序:每次选出一个最值,若是最大值有多个会有稳定性不好的情况,但是可以控制变成稳定性好

冒泡排序:冒泡排序是每趟俩俩排序,相同值的相对位置是不会改变的

 

3.

选择排序:每次会选出一个最大值或者最小值,可以确定位置

快速排序:每次的基准值位置可以确定

堆排序:每次堆顶的元素是可以确定的

归并排序:是分组进行排序的,不能确定一个准确的位置 

 

4.

题目给的序列接近有序的,插入排序在这里的时间复杂度接近为O(n),而快排在这种情况接近O(n^2),归并排序和堆排序都是O(nlogn) 

 

5.

快速排序:初始顺序影响大,如果为有序,则性能最差

插入排序:如果初始为有序,则性能最好

希尔排序:希尔是插入排序的优化,而在有序的情况下插入反而更快

堆排序与归并排序对初始数据的顺序不怎么影响 

 

6.

从题目来看25,21,47,68这些数字位置被确定了,而选择排序确定的最值,所以是希尔排序,

第一次的基准值为25,左边都比25小,右边都比25大,第二次的基准值为20,47(因为第一行的左边与右边的数字是21与47),则第三次的基准值就为15,21,35,68  

7.

这里的辅助空间就是空间复杂度为多少,快速排序递归过程中会开辟栈的空间,递归的深度为二叉树的深度为logn,而非递归实现是通过栈来实现 ,最大空间也就是把从头到叶结点,因为每次是成对放入栈里面,所以最大为数的高度俩倍,2*logn

所以空间复杂度就为logn 

8.

快速排序会确定基准值的位置 ,所以找满足基准值,因为第二趟所以需要找到俩个基准值,若没有俩个则就不可能为快速排序的第二趟,

a:第一趟可以为2,第二趟可以为3,满足情况

b:第一趟可以为2,第二趟可以为9

c:第一趟基准值只能是9(基准值的位置跟排序好的位置是一样的),则第二趟没有基准值了

d:第一趟可以为9,第二趟可以为5

 

9.

归并排序需要用到格外辅助空间,要开辟一个跟原数据一样大的空间

归并排序是一种二分排序算法,每次给n个元素排序(理想),排序的过程中深度为logn,所以时间复杂度为nlongn

因为操作是在左右子树排完序之后,进行合并,合并是在遍历完左右子树的情况下,所以就是左右根,所以是后序、

归并排序相同值的相对位置不会改变,稳定性好 

10.

因为要通过堆排序来进行降序,所以要建小堆,而满足情况只用a为小堆 

 

 

 

 

相关内容

热门资讯

教你透视!wepoker有用吗... 教你透视!wepoker有用吗!分享实测辅助app(新版有挂)-哔哩哔哩1、操作简单,无需wepok...
围绕透视问题!wepoker私... 围绕透视问题!wepoker私人局辅助器怎么用(透视)切实真的有辅助安装(有挂存在)-哔哩哔哩wep...
关于透视!德州之星扫描器!玩家... 关于透视!德州之星扫描器!玩家必备教程辅助脚本(真的有挂)-哔哩哔哩1、下载好德州之星扫描器透视辅助...
现场直击!wepoker怎么看... 现场直击!wepoker怎么看底牌(透视)一直存在有辅助安装(有挂规律)-哔哩哔哩1、wepoker...
详细透视!werplan免费挂... 详细透视!werplan免费挂下载!技术分享辅助app(真是有挂)-哔哩哔哩1、werplan免费挂...
据悉!德普之星辅助工具如何打开... 据悉!德普之星辅助工具如何打开(透视)真是存在有辅助平台(有挂秘籍)-哔哩哔哩1、德普之星辅助工具如...
据公告内容!aapoker免费... 据公告内容!aapoker免费透视脚本(透视)一直是真的辅助神器(真是有挂)-哔哩哔哩1、任何aap...
解迷透视!hhpoker德州作... 解迷透视!hhpoker德州作弊!新手必备辅助技巧(有挂教程)-哔哩哔哩1、每一步都需要思考,不同水...
推荐透视!哈糖大菠萝有挂吗5个... 推荐透视!哈糖大菠萝有挂吗5个常用方法!一分钟教你辅助软件(有挂讲解)-哔哩哔哩1、这是跨平台的哈糖...
透视透视!wepoker黑侠辅... 透视透视!wepoker黑侠辅助器正版下载(透视)切实真的是有辅助神器(有挂猫腻)-哔哩哔哩1、每一...