当前位置: 首页 > news >正文

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

一、
在这里插入图片描述
顺序查找的平均查找长度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次。

相关文章:

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

一、 顺序查找的平均查找长度ASL(1 2 …… n)/ n (n 1)/ 2 二、 这半查找法的平均查找次数和判定树的深度有关系。若查找一个不存在的元素,说明进行了深度次比较。 注意,判定树不是满二叉树,因此深…...

Optional详解和常用API

目录 一、Optional简介 二、构建Optional对象三种方式 2.1 Optional.of(value) 2.1.1 使用案例 2.2 Optional.ofNullable(value) 2.2.1 使用案例 2.3 Optional.empty() 2.3.1 使用案例 三、Optional常用的api解析和使用案例 3.1 isPresent 3.1.1 使用案例 3.2 ifPrese…...

Unity 3D 物体的Inspector面板

1、Transform:位置、旋转、大小 2、Mesh Filter:物体的形状 3、Mesh Renderer:物体渲染(物体的衣服) 4、Collider:碰撞体...

闪烁与常亮的符号状态判断机制(状态机算法)

背景说明 在视觉项目中,经常要判断目标的状态,例如:符号的不同频率闪烁、常亮等。然而常规的视觉算法例如YOLO,仅仅只能获取当前帧是否存在该符号,而无法对于符号状态进行判断,然而重新写一个基于时序的卷积…...

Hyper-V如何将文件复制到虚拟机?教您3个简单的方法!

需要将文件复制到虚拟机! “大家好,有谁知道Hyper-V怎么将文件复制到虚拟机吗?我有一些文件,想要从主机中复制进虚拟机中,但是我不知道该怎么操作,有谁可以帮帮我吗?谢谢。” Hyper-V虚拟机可…...

Vue主要使用-03

组件通讯 组件通讯也是我们需要了解的,在我们的实际开发中,我们使用的非常多,比如父组件内的数据传入到子组件,子组件的数据传入到父组件,什么是父组件什么是子组件?父组件内包含着我们的子组件,我们的父组件可以有多个子组件,父组件就是我们使用子组件拼接的。 …...

LoadBalance客户端负载均衡

1. 前言Ribbon Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端 负载均衡的工具。简单的说,Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法和服务调用。Ribbon客户端组件提供一系列完善的配置项如连接超时&#xff0…...

Burp Suite Professional 2024.5 (macOS, Linux, Windows) - Web 应用安全、测试和扫描

Burp Suite Professional 2024.5 (macOS, Linux, Windows) - Web 应用安全、测试和扫描 Burp Suite Professional, Test, find, and exploit vulnerabilities. 请访问原文链接:Burp Suite Professional 2024.5 (macOS, Linux, Windows) - Web 应用安全、测试和扫描…...

逢3必过报数游戏-第13届蓝桥杯省赛Python真题精选

[导读]:超平老师的Scratch蓝桥杯真题解读系列在推出之后,受到了广大老师和家长的好评,非常感谢各位的认可和厚爱。作为回馈,超平老师计划推出《Python蓝桥杯真题解析100讲》,这是解读系列的第84讲。 逢3必过报数游戏&…...

解决Qt的multimedia库在clion中依赖库补全的问题

解决Qt的multimedia库在clion中使用报错的问题 在clion中,使用Qt的multimedia库时会报如下错误: defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.mediaplayer" 我猜测出现这个错误的原因很可能是因为…...

图像处理:Python使用OpenCV进行图像锐化 (非锐化掩模、拉普拉斯滤波器)

文章目录 非锐化掩模 (Unsharp Masking)拉普拉斯滤波器 (Laplacian Filter)效果对比总结 在图像处理中,锐化操作用于增强图像的边缘和细节,使图像看起来更清晰。常见的图像锐化方法包括非锐化掩模(Unsharp Masking)和拉普拉斯滤波…...

windows用脚本编译qt的项目

mingw的 cd build ::设置jom环境 set PATHC:\Qt\Qt5.15.2\Tools\mingw810_32\bin;%PATH% set PATHC:\Qt\Qt5.15.2\5.15.2\mingw81_32\bin;%PATH% ::设置Qt环境 amd64_x86 或者 amd64 ::CALL "D:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\VC\Auxilia…...

mybatis-plus使用拦截器实现sql完整打印

shigen坚持更新文章的博客写手,擅长Java、python、vue、shell等编程语言和各种应用程序、脚本的开发。记录成长,分享认知,留住感动。 个人IP:shigen 在使用mybatis-plus(mybatis)的时候,往往需要…...

GPT-4并非世界模型,LeCun双手赞同!ACL力证LLM无法模拟真实世界

一直以来,支持LLM的观点之一是模型可以集成海量事实知识,作为通往「世界模拟器」的基础。虽然也有不少反对意见,但缺乏实证依据。那么,LLM能否作为世界模拟器? 最近,亚利桑那大学、微软、霍普金斯大学等机构…...

第 6 章: Spring 中的 JDBC

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

[C++ STL] vector 详解

标题:[C STL] vector 详解 水墨不写bug 目录 一、背景 二、vector简介 三、vector的接口介绍 (1)默认成员函数接口 i,构造函数(constructor) ii,析构函数(destructor&#xff0…...

PHP简约轻型聊天室留言源码

无名轻聊是一款phptxt的轻型聊天室。 无名轻聊特点: 自适应电脑/手机 数据使用txt存放,默认显示近50条聊天记录 采用jqueryajax轮询方式,适合小型聊天环境。 访问地址加?zhi进入管理模式,发送 clear 清空聊天记录。 修改在…...

代码随想录算法训练营day23|669.修剪二叉搜索树、108.将有序数组转换为二叉搜索树、538.把二叉搜索树转换为累加树

669.修剪二叉搜索树 这道题目需要考虑当前节点是否在[low,high]之间, 因为是平衡二叉树, 所以当当前节点值小于low时,那么其左节点肯定更小,因此删除该节点的方式是给root节点返回其右节点的递归,注意:这里…...

实时通信websocket和sse

microsoft/fetch-event-source是一个JavaScript库,用于处理服务器发送的事件(Server-Sent Events,简称SSE)。它提供了一个简单易用的API,使得客户端可以与服务器进行实时通信。这个库主要用于浏览器环境 安装依赖npm i…...

(超详细)基于动态顺序表实现简单的通讯录项目

前言: 我们在上一章节用c语言实现了线性表中的的动态顺序表,那么顺序表就只是顺序表吗?当然不是,使用顺序表结构可以实现很多项目,许多项目的数据结构都会用到顺序表,本章节我们就要使用顺序表实现一个简易…...

基于MCP协议实现AI助手个性化:Terminal Buddies项目实战解析

1. 项目概述:当你的终端伙伴遇见AI助手 如果你和我一样,每天有大量时间泡在终端和代码编辑器里,那么一个能带来些许乐趣和陪伴感的“数字伙伴”或许能点亮枯燥的编码时光。Terminal Buddies 正是这样一个巧妙结合了复古 ASCII 艺术、轻量级游…...

从SMP到NUMA:聊聊多核CPU时代Linux内存管理是怎么‘进化’的

从SMP到NUMA:多核CPU时代的内存管理演进之路 2000年代初,当单核CPU的主频竞赛逐渐触及物理极限时,计算机架构师们面临一个关键抉择:如何在芯片上堆叠更多晶体管?答案最终指向了多核设计。但随之而来的内存访问瓶颈&…...

大模型API响应延迟飙升470%,却查不到根因?SITS2026可观测性四象限诊断法,今天就落地

更多请点击: https://intelliparadigm.com 第一章:SITS2026可观测性框架的起源与核心范式 SITS2026(System Intelligence Telemetry Standard 2026)并非凭空诞生,而是源于云原生系统在超大规模微服务编排、边缘-中心协…...

十大类型学系统性阐释:自感痕迹论的发生学分类体系

十大类型学系统性阐释:自感痕迹论的发生学分类体系引言:类型学作为公理的微分展开一个完备的发生学体系,不应满足于对单一现象的孤立分类。它应当从少数基本公设出发,在不同分析层面自然衍生出互相关联又各具独立性的类型学。自感…...

计算机人别卷开发了!这个方向让我毕业年入_20_万,兼职还能赚8K

一、我那 “躺赢” 的同学:从找不到工作到 offer 拿到手软 去年毕业季,我们班一半人在死磕 LeetCode 求开发岗,月薪 8K 都要抢破头;而隔壁宿舍的阿凯,没卷一道算法题,却拿到了 3 家企业的安全岗 offer&…...

暗黑破坏神2存档编辑器:d2s-editor网页版深度体验指南

暗黑破坏神2存档编辑器:d2s-editor网页版深度体验指南 【免费下载链接】d2s-editor 项目地址: https://gitcode.com/gh_mirrors/d2/d2s-editor 想要自由定制暗黑破坏神2的角色成长路径,却苦于找不到合适的工具?d2s-editor作为一款基于…...

5分钟掌握ExplorerPatcher:Windows界面定制终极指南

5分钟掌握ExplorerPatcher:Windows界面定制终极指南 【免费下载链接】ExplorerPatcher This project aims to enhance the working environment on Windows 项目地址: https://gitcode.com/GitHub_Trending/ex/ExplorerPatcher 还在为Windows 11的新界面感到…...

哪个降AI软件好?2026年4款主流降AI工具按场景对位横评!

哪个降AI软件好?2026年4款主流降AI工具按场景对位横评! 「哪个降 AI 软件好」没有标准答案。学生最常踩的坑是把这个问题简化成「哪款最便宜」或者「哪款最有效」——其实好不好用看你的场景。学校送知网严标准、送维普重灾区、自媒体被判 AI、本科双重问…...

5分钟掌握暗黑破坏神2存档编辑:免费Web工具完整指南

5分钟掌握暗黑破坏神2存档编辑:免费Web工具完整指南 【免费下载链接】d2s-editor 项目地址: https://gitcode.com/gh_mirrors/d2/d2s-editor 还在为暗黑破坏神2中反复刷装备而烦恼吗?想快速体验不同职业的build却不想从头练级?d2s-ed…...

C++性能优化

C性能优化是个系统工程,不是靠一两个“奇技淫巧”就能搞定的。我把它拆成四个层次来讲,从最立竿见影的到最底层的,你面试或实战时按这个框架去思考,思路会非常清晰。 第一层:算法与数据结构(性价比最高&…...