北航第六次数据结构与程序设计作业(查找与排序)选填题

news2024/11/23 12:33:05

一、
在这里插入图片描述
顺序查找的平均查找长度ASL=(1 + 2 + …… + n)/ n = (n + 1)/ 2


二、
在这里插入图片描述
这半查找法的平均查找次数和判定树的深度有关系。若查找一个不存在的元素,说明进行了深度次比较。

注意,判定树不是满二叉树,因此深度和结点个数之间并不存在必然的数学关系。
但是我们可以根据满二叉树h=log(n+1)大概估计一下,如果是三层的满二叉树,那么n为7,如果是4层的满二叉树,则n为15。因此,本题的判定树一定是5层,因此最多比较五次。

判定树具体形态为:

在这里插入图片描述


三、
在这里插入图片描述ASL=每i层结点个数*i (累积和)/ 长度
判定树形态为:
在这里插入图片描述
则总的长度为:(1 * 1 + 2 * 2 + 4 * 3 + 2 * 4)=(1 + 4 + 12 + 8)=25


四、
在这里插入图片描述
判定树形态:
在这里插入图片描述要小心:题目中说了,是访问元素的下标,因此,访问路径的元素为10,16,12,下标为4,7,5


五、
在这里插入图片描述①显然不对,没有考虑到叶子结点
②对
③对
④只有当插入数据导致结点分裂,而且分裂至根结点的数据个数也超过m-1个的时候,树才长高一层


六、
在这里插入图片描述
19%13=6,84%13=6
14%13=1,1%13=1,27%13=1,79%13=1
23%13=10,10%13=10
68%13=3,55%13=3
20%13=7
11%13=11

因此,余数为1的有4个,也就是散列地址为1的链中有4个记录


七、
在这里插入图片描述原大堆为:
在这里插入图片描述插入18后:
在这里插入图片描述
注意注意,看看题目问的是:比较的次数,而不是18交换的次数,18先和10比较,发现18比10大。那就18和10交换位置,然后再和25比较,发现25比18大,因此不交换。


八、
在这里插入图片描述选择排序每次选一个最小的放在当前序列的最左边,位置确定。

冒泡先把最大的冒到最后,再把次大的冒到倒数第二,位置也是确定的。

归并大家先想一个这个情景:考试的时候,1班的第一名一定是全年级第一名吗?未必对吧?归并排序和这个情况一样,你是你子序列中的最值,但是和相邻子序列归并之后就未必是了

堆排序每次都把最大的元素即堆顶和当前堆的最后一个元素交换,因此位置也确定。


九、
在这里插入图片描述
我们发现,每次都是当前序列的最小元素和当前未排序序列第一个元素交换,很明显的选择排序


十、
在这里插入图片描述
冒泡的话,前两趟跑完之后,最大和次大,即23和13应该排在最后

插入排序,第i趟排序结束以后,前i+1个元素是有序的,此题满足

选择排序肯定先把最小的放到前面俩

归并肯定也不是,因为第三第四的大小关系不对,第七第八也不对


十一、
在这里插入图片描述选择排序,选最小的,放第一个,13和49交换,明显A


十二、
在这里插入图片描述
你猜猜qsort函数第一个参数为啥是数组名


十三、
在这里插入图片描述
考试问你时间复杂度,你就看ppt就行了。。。反正开卷


十四、
在这里插入图片描述第一次,16和6交换:
在这里插入图片描述
30和10交换:
在这里插入图片描述28和4交换:
在这里插入图片描述4和key12交换
在这里插入图片描述明显,选C


十五、
在这里插入图片描述找找,那一组里,没有两个元素,左边都比他小,右边都比他大
A.2的左边都比他大,9的左边都比他小,可以
B.同A
C.9到时可以,但找不出另一个
D.5的左边都比他小,右边都比他大;9的左边都比他小


十六、
在这里插入图片描述由题可知,前6个元素已经排好序,那么排好序的结果应该是:
13 38 49 65 76 97 47 50
第一次和49比,第二次和38比,第三次和13比


十七、
在这里插入图片描述查找每个元素,这个元素都要被比较,那就只能是判定树的根节点了
(1+99)/ 2 =50


十八、
在这里插入图片描述
看好了,是在序列中的位置,不是下标,位置从1开始,下标从0开始
判定树的根结点为第(1+12)/2=6,根结点右子树的根结点的位置为(7+12)/ 2=9。


十九、
在这里插入图片描述
发生冲突,说明余数一致,说明能整除,放眼观去,63,9,45都能整除,因此3个和18冲突


二十、
在这里插入图片描述
从arr[1]到arr[n-1],如果本身就递增,那么每个元素只跟自己的直接前驱元素比较一次就行,那么比较了n-1次。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1829184.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

生信分析进阶5 - 全外显子组变异检测和ANNOVAR注释Snakemake分析流程

基于yaml或ini配置文件,配置文件包含例如样本名称、参考基因组版本、exon capture bed文件路径、参考基因组路径和ANNOVAR注释文件等信息。 基于该流程可以实现全外显测序的fastq文件输入到得到最终变异VCF文件。 1. Snakemake分析流程基础软件安装 # conda安装 …

Vue3【二十一】Vue 路由模式(createWebHashHistory /createWebHistory )和RouterLink写法

Vue3【二十一】Vue 路由模式(createWebHashHistory /createWebHistory )和RouterLink写法 Vue3【二十一】Vue 路由模式和普通组件目录结构 createWebHistory history模式:url不带#号,需要后端做url适配 适合销售项目 利于seo crea…

pytorch学习笔记6

想要找一些官方的小工具数据集,可以进入pytorch官网,DOCS-》pytorch下拉至libraries,点击torchversion,调整版本至0.9.0就可以找到相应的一些数据集,训练集 ctrlp可以看一个函数中需要设置哪些参数 下载数据集可以参考…

C/C++中内存开辟与柔性数组

C/C中内存的开辟 在C中,我们都知道有三个区: 1. 栈区(stack):在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结 束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指…

云和运维(SRE)的半生缘-深读实证02

这个标题不算太夸张,云计算和很多IT岗位都有缘,但是和运维(SRE)岗位的缘分最深。 “深读实证”系列文章都会结合一些外部事件,点明分析《云计算行业进阶指南》书中的内容。本次分享介绍了下列内容: 我以运维…

Git学习记录v1.0

1、常用操作 git clonegit configgit branchgitt checkoutgit statusgit addgit commitgit pushgit pullgit loggit tag 1.1 git clone 从git服务器拉取代码 git clone https://gitee.com/xxx/studyJava.git1.2 git config 配置开发者用户名和邮箱 git config user.name …

数值分析笔记(二)函数插值

函数插值 已知函数 f ( x ) f(x) f(x)在区间[a,b]上n1个互异节点 { x i } i 0 n \{{x_i}\}_{i0}^{n} {xi​}i0n​处的函数值 { y i } i 0 n \{{y_i}\}_{i0}^{n} {yi​}i0n​,若函数集合 Φ \Phi Φ中函数 ϕ ( x ) \phi(x) ϕ(x)满足条件 ϕ ( x i ) y i ( i …

决策树概念

图例 概念 决策树基本上就是对经验的总结 决策树的构成,分为两个阶段。构造和剪枝 构造 概念 构造就是生成一颗完整的决策树。构造的过程就是选择什么属性作为节点的过程 构造过程,会存在3种节点 根节点:就是树的最顶端,最…

基于STM32和人工智能的自动驾驶小车系统

目录 引言环境准备自动驾驶小车系统基础代码实现:实现自动驾驶小车系统 4.1 数据采集模块4.2 数据处理与分析4.3 控制系统4.4 用户界面与数据可视化应用场景:自动驾驶应用与优化问题解决方案与优化收尾与总结 1. 引言 随着人工智能和嵌入式系统技术的…

竟然与 package-lock.json 更新有关!部分用户 H5 页面白屏问题!

一.问题 1 场景 现象 接到部分用户反馈进入xxx H5 页面空白; 研发测日志里问题用户的线上页面URL地址可以正常访问,没有复现问题!!! 定位问题 监控平台和客户端日志报错: SyntaxError: Unexpected toke…

pc repair

pc repair 修理电脑,换配件

数字化转型,不做是等死,做了是找死

“ 有不少人调侃说:数字化转型,不做是等死,做了是找死。如果你是一个老板,你会怎么选择呢,下面我来剖析一下。” 我按照“做正确的事,正确的做事”来分析数字化转型,再通过抓痛点和流程再造两项…

MySQL经典面试题:谈一谈你对事务的理解

文章目录 📑事务事务的基本概念回滚开启事务的sql语句 事务的基本特性总结一下涉及到的三个问题 ☁️结语 📑事务 事务的基本概念 事务是用来解决一类特定场景的问题的,在有些场景中,完成某个操作,需要多个sql配合完…

HCIA 16 构建 IPv6 网络基础配置

IPv6(Internet Protocol Version 6)也被称为 IPng(IP Next Generation)。由 Internet 工程任务组 IETF(Internet Engineering Task Force)设计,是 IPv4下一代版本。 相比较于 IPv4,I…

第 6 章: Spring 中的 JDBC

JDBC 的全称是 Java Database Connectivity,是一套面向关系型数据库的规范。虽然数据库各有不同,但这些数据库都提供了基于 JDBC 规范实现的 JDBC 驱动。开发者只需要面向 JDBC 接口编程,就能在很大程度上规避数据库差异带来的问题。Java 应用…

【Linux】进程间通信1——管道概念,匿名管道

1.进程间通信介绍 进程是计算机系统分配资源的最小单位(严格说来是线程)。每个进程都有自己的一部分独立的系统资源,彼此是隔离的。为了能使不同的进程互相访问资源并进行协调工作,才有了进程间通信。 进程间通信,顾名…

STM32CubeMX配置-看门狗配置

一、简介 MCU为STM32G070,LSI为32K,看门狗IWDG配置为4S溢出,则配置是设置分频为32分频,重装载值为3000。 二、IWDG配置 1.外设配置 2.时钟配置 3.生成代码 HAL_IWDG_Refresh(&hiwdg); //喂狗

ADS基础教程21 - 电磁仿真(EM)模型的远场和场可视化

模型的远场和场可视化 一、引言二、操作步骤1.定义参数2.执行远场视图(失败案例)3.重新仿真提取参数 三、总结 一、引言 本文介绍电磁仿真模型的远场和场可视化。 二、操作步骤 1.定义参数 1)在Layout视图,工具栏中点击EM调出…

Autosar诊断-FIM模块功能介绍

文章目录 前言一、FIM模块概述二、FID概念介绍Event ID和DTC之间的关系Event ID与FID之间的关系FIM数据结构三、FiM模块与SW-C模块交互关系四、FIM模块函数调用关系FiM功能模块作用过程前言 Autosar诊断的主体为UDS(Unified Diagnostic Services)协议,即统一的诊断服务,是…

力扣191. 位1的个数

Problem: 191. 位1的个数 文章目录 题目描述思路复杂度Code 题目描述 思路 题目规定数值的范围不会超过32位整形数 1.定义统计个数的变量oneCount;由于每次与给定数字求与的变量mask初始化为1 2.for循环从0~32,每一次拿mask与给定数字求与运算&#xff…