2017年某高校848数据结构真题复习

news2024/12/23 15:23:29
  1. 数据是对客观事物的符号表示

  2. 元素之间的关系不同,通常由四类基本结构————集合,线性结构,树形结构,图状结构

  3. 算法的五个特性——出入确可穷

     1个或多个输出
     0个或多个输入
     确定性
     可行性
     有穷性
    
  4. 求下列程序段的时间复杂度

     for(i=1;i<=n;i++)
     	for(j=1;j<=n;j++)
     	{
     		C[i][j]=0;
     		for(k=1;k<=n;k++)
     			C[i][j]+=a[i][k]*B[k][j]	
     	}	
    

我的理解:外圈有效循环n次,中圈执行n次,内圈执行n次,就是O(n^3)

  1. 再长度为n的顺序表的第i个元素a之前插入一个元素,需要移动n/2个元素

  2. 入栈顺序位abcdefg,出栈第一个元素是g,则出栈第五个元素是?

     我的理解:
     g第一个出来,那abcdef也就都进去了,
     所以第五个出来的只能是c
    
  3. 深度为10的满二叉树,有几个节点

     (2^10)-1
    
  4. 二叉树中有100个度为2的节点,则该二叉树有几个叶子节点

     性质3,叶子节点=度为2的节点数+1=101
    
  5. 无向图有20个顶点,当有多少条边时,称为完全无向图

    我的理解:完全无向图:该图中每条边都没有方向,任意两个顶点间都存在边 ,三个顶点,第一个顶点射出两条边,第二个顶点射出一条边,所以20个顶点就是1+2+3+4+5+…+19=190

  6. 不稳定的排序:快希选堆

  7. 稳定的排序:冒泡,插入,排序

  8. 循环队列的最大长度为6,队列中已有3个元素,对头元素是a,队尾元素是c,依次进行三个步骤,d入队,e入队,一个元素出队。求front,rear下标
    请添加图片描述
    我的理解:循环队列,入队是rear+1,出队是front+1
    d入队,e入队,队列的r+2到1了,一个元素出队f+1到3

  9. 二叉树的后序遍历为DCBFJIHGEA,中序为BCDAFEHJIG,画出二叉树求先序
    我的理解:根据后序遍历得到A为根,看A在中序哪里,是不是在中间,就说明,根的左边有BCD,根的右边有FEHJIG。再看后序遍历的,后序遍历的是从右向左看噢,所以看完了根,再看E,中序里E再A的左边,也就是说E是A的右孩子,记住先看根节点是谁,怎么看根节点是谁呢,先序的第一个元素就是根节点,因为先序遍历时是根左右嘛,后序遍历的最后一个节点是根节点,因为后序遍历的是左右根。找到根节点是谁之后,根据中序遍历看看其他节点大致的分布在根节点的两边,再根据先序从左往右,后序从右往左的一个一个找元素,找到一个元素拿到中序里看他在父节点的哪边。再写出他的先序遍历,先序是根左右,ABCDEFGHIJ请添加图片描述

  10. 关键字序列为12,25,36,80,66,72构造二叉排序树,求平均查找长度
    我的理解:第一个关键字为根,大于他的为右孩子,小于它的为左孩子,画出来就行了,平均查找长度,关键字分布的层数相乘 (1+2+3+4+5+6)/6=21/6=3.5
    请添加图片描述

  11. 12,8,6,20,36,25,5画出哈夫曼树,求带权路径长度
    我的理解:每次选最小的两个数相加加完后,整理一下树,再看每个叶子节点的权长,最后相加,权就是边嘛,全部相加就是[(20+25+36)x2+12x3+8x4+(5+6)x5]/7=285/7
    请添加图片描述
    16.无向图的邻接表请添加图片描述
    E到1,2,3,4,5然后为空,1,2,3,4,5分别表示ABCDF,这么画就ok了
    求A的度,就是看A有几条边呗,A的度为2,以B出发求深度优先,B-A-E-F-C-D,深度优先就是一条路走到低,到低了再返回上一步,举个例子,B先到的A,再就从A开始走,A走到E,E可以随便走一个没有走过的,比如E-F,F再走C,C下一步没有未被访问的点了,就回退到F,再退到E,E发现D没被访问,于是就去访问D。书顺序就是B-A-E-F-C-D。广度优先呢,举个例子,E的广度优先搜索就是E-A-B-F-C-D也可以是E-D-C-F-B-A还几种都可以的,那B的广度优先搜索遍历呢B-A-E,B到了A,E,E可以到-F-C-D。所以结果可以是B-A-E-F-C-D

  12. 直接插入排序
    我的理解:直接插入排序是从第二个数开始,依次和前面的数比较,前面的数如果大于它,前面的数就后移,这就是大概思路

     int sort(int A[],int length)
     {
     	int i,j,temp;
     	for(i=1;i<length;i++) #这里的i表示下标
     	{	
     		temp=A[i];
     		for(j=i-1;j>=0&&A[j]>A[I];j--)
     		{
     				A[j+1]=A[j]; 
     				#前面存在一个大于A[i]的数就把大于A[i]的数后移
     				#不用担心是否存在这样一种情况 9,2,3 
     				#A[i]为3,2小于3,则不动,j--,A[j]=9,9>3就要后移
     				#注意哈,不存在以上这种情况,9,2早就被循环给调正了,
    		}
    		A[j+1]=temp;
    		#假如是1,2,3这种情况
    		#A[i]=2,A[j]=1,1不小于2,所以j不--,跳出循环,再执行A[j+1]=temp,还是把2赋值给了2,也没有影响噢。
    	}
     }
    
  13. 简单选择排序
    我的理解:从第一个数开始,与自己和其他数比较,存在一个小于自己的数时,记住他的下标,再从该下标往后找一个小于该下标的数,记住新的小数的下标,直到找到结尾,找到结尾以后,就找到了最小的数的下标,利用temp与一个数交换位置,最小的数就去了头。再从第二个数开始,与自己和其他数比较,一旦找到一个小于自己的数,就记住他的下标,从该下标往后找一个更小的数,又记住更小的数的下标直到找到尾巴。再利用temp把最小的数放在第二个位置。再从第3个数开始…

    int select(int A[],int length)
    {
    	int i,j,temp,min;
    	for(i=0;j<length;i++)
    	{
    		min=i;
    		for(j=i;j<=length&&A[j]<A[min];j++)
    		{	
    			min=j;
    		}
    		temp=A[i];
    		A[i]=A[min];
    		A[min]=temp;
    	} 
    }
    
  14. 输出1000以内的质数
    我的理解:用一个for循环去让n除2到n-1,等于==0就不是

    int prime(int n) #传入一个n进来
    {
    	int j;
    	for(j=2;j<n;i++)
    		if(n%j==0)
    			return 0;
    	return 1;
    }
    int main()
    {
    	int i,a=0;
    	for(i=2;i<1001;i++)
    	{
    		if(prime(i))
    		{	
    			printf(“%d”,i);
    			a++;
    			if(a%10==0&&a!=0)
    				printf(“/n”);
    		}
    	}
    }
    

我的理解:传入一个n到prime,就需要j从2开始到n-1,n一个一个除,需要从2除到n-1都不为0,则n为质数,当n为质数时prime返回1,if真,执行:打印i,且a++,a加到10或者20,30之类的,就打印一个换行符,

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

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

相关文章

html制作一个酷炫的记事本(源码)

文章目录1.记事本风格和灵感1.1 设计灵感1.2 整体风格2.代码展示1.1 酷炫的记事本效果图1.2 主代码源码下载html制作一个酷炫的记事本&#xff08;源码&#xff09; 平时上班总有很多事要弄&#xff0c;到了下班以为都弄好了&#xff0c;结果缺忘记了几个。于是整了一个便签记事…

是德/安捷伦E5062A网络分析仪的常用技术及性能参数

网络分析仪作为一种测量网络参数的新型测试测量的仪器&#xff0c;直接测量有源或无源、可逆或不可逆的双口和单口网络的复数散射参数&#xff0c;以扫频方式输出各散射参数的幅度、相位频率特性&#xff0c;以供进行信号比较和再次利用&#xff0c;随着科技的发展&#xff0c;…

2.1.5操作系统之线程概念与多线程模型

文章目录为什么要引入线程什么是线程引入线程带来的变化及进程与线程的比较线程的属性线程的实现方式用户线程内核线程特殊的组合方式及重点注意多线程模型多对一模型一对一模型多对多模型为什么要引入线程 引入进程是为了让程序能够并发的执行&#xff0c;因为进程只能而引入线…

python每日学4:vscode的安装与基础使用

python开发常用的编辑器就是vscode, pycharm, 其他文本编辑器&#xff0c;我以前一直使用pycharm和国产的everedit. 但是&#xff0c;pycharm有点太笨重&#xff0c;everedit又太轻了&#xff0c;编译时经常出现字符编码集的错误&#xff0c;于是我就想换着使用下vscode. 首先是…

FLINK 基于1.15.2的Java开发-Watermark是怎么解决延迟数据唯一正确的生产级解决方案-目前市面上的例子都有问题

至此篇&#xff0c;已经完成高级生产应用&#xff0c;至此只剩“码需求”了。 开篇 Watermark这一块国内中文相关资料没有一篇是写完整或者写对的。源于&#xff1a;官网的watermark理论是对的&#xff0c;中文相关博客的代码和公式是错的。 很有可能是写第一篇Watermark中文…

【模电实验】【验证性实验——基本差动放大电路实验】

实验4-1 验证性实验——基本差动放大电路实验 1. 静态工作点的测试 按照下图连接电路&#xff0c;检查无误后将A, B两端短接&#xff0c;接通电源12 V&#xff0c; 分别测量三极管各极对地的电压值&#xff0c;推算静态电流&#xff0c;记入下表&#xff0c;并与仿真结果&…

【JavaWeb】之富文本编辑器

【JavaWeb】富文本编辑器前言一、富文本编辑器介绍二、富文本编辑器使用1.引入编辑器&#xff08;多种引入方式&#xff09;2.使用编辑器三、主流富文本编辑器推荐1.TinyMCE2.CKEditor3.UEditor4.wangEditor5.kindeditor6.simditor7.bootstrap-wysiwyg8.summernote9.Froala10.Q…

C++ Reference: Standard C++ Library reference: C Library: cstdlib: wctomb

C官网参考链接&#xff1a;https://cplusplus.com/reference/cstdlib/wctomb/ 函数 <cstdlib> wctomb int wctomb (char* pmb, wchar_t wc); 宽字符wc被转换为其等效多字节&#xff0c;并存储在pmb指向的数组中。函数在调用后返回由pmb指向的等效多字节序列的字节长度。…

倡议“1024区块链活动日”第三系列活动在京主会场和全球21个分会场成功举办

10月24日下午&#xff0c;倡议“1024区块链活动日”第三次系列活动暨乡村产业链改大会乡村振兴链改助农大会通过线上的形式&#xff0c;在北京主会场和全球21个分会场&#xff0c;1024个视频直播节点联动成功举办&#xff0c;本次活动由中国通信工业协会区块链专业委员会&#…

关于蓝桥杯单片机组自学的经验分享

这篇文章主题如标题所示。先说一下经验分享&#xff0c;文章末再写一些碎碎念。 蓝桥杯单片机组 客观题 程序设计题 数模电 C语言 单片机。 先说第一个等式&#xff0c;是从考题结构看的&#xff0c;程序设计题只要好好练&#xff0c;基本都能实…

SpringBoot常用注解

文章目录组件添加SpringBootApplicationConfigurationBeanConditionImprotImportSelectorImportBeanDefinitionRegistrar原生配置文件引入ImportResource配置绑定Component ConfigurationPropertiesConfigurationProperties EnableConfigurationProperties自动配置原理入门引…

SCI论文降重技巧盘点 - 易智编译EaseEditing

要想顺利发布SCI论文&#xff0c;首先就是要保证论文的原创性和创新性。要知道论文写作当中对于文献和资料的引用是必不可少的&#xff0c;所以论文的重复率很有可能会超标&#xff0c;对于这点要留意。 免费的查重网站有PaperYY、百度学术查重、Freecheck、Paperpass等等&…

上市公司信息透明度数据(1991-2019年)包含stata源代码和数据

上市公司信息透明度数据&#xff08;1991-2019年&#xff09;包含stata源代码和数据 1、数据来源&#xff1a;附在文件内 2、时间跨度&#xff1a;1991-2019年 3、区域范围&#xff1a;全国 4、指标说明&#xff1a; 股价同步性&#xff08;SYNCH&#xff09;&#xff0c;S…

自学网络安全的三个必经阶段(含路线图)

一、为什么选择网络安全&#xff1f; 这几年随着我国《国家网络空间安全战略》《网络安全法》《网络安全等级保护2.0》等一系列政策/法规/标准的持续落地&#xff0c;网络安全行业地位、薪资随之水涨船高。 未来3-5年&#xff0c;是安全行业的黄金发展期&#xff0c;提前踏入…

jquery导航图片全屏滚动、首页全屏轮播图,各式相册

1.目录结构 源码 project cssjsimageindex1index2index3index4index.html index1到index4分为四个iframe标签引入的可单独分离的主页&#xff0c;相当于组件的原理&#xff0c;其中index作为主页&#xff0c;index1是首页全屏轮播图&#xff0c;其他都是单独的相册风格&…

图形学-反走样/抗锯齿

1.反走样 1.1 什么是走样 在上一篇文章中&#xff0c;我们通过采样的方式把一个三角形变成离散的点显示在屏幕上。在采样过程中&#xff0c;我们会产生很多锯齿&#xff0c;这些锯齿的学名就叫做走样 1.2 反走样 如何消除锯齿(走样),我们就要引入反走样技术&#xff0c;之所…

UNet详细解读(一)论文技术要点归纳

UNet 论文技术要点归纳UNet摘要简介Over-tile策略网络架构训练数据增强小结UNet 摘要 2015年诞生&#xff0c;获得当年的ISBI细胞追踪挑战比赛第一名&#xff0c;在GPU上推理512x512的图像不到1秒钟&#xff0c;开创图像分割的先河。 简介 在当时&#xff0c;卷积神经网络是主…

Win10-GPU服务器-深度学习从零配置环境

1.装anaconda 下载安装anaconda&#xff08;conda也一并装了&#xff09; https://www.anaconda.com/products/distribution 配系统变量 将类似这个位置放进path里面“C:\ProgramData\Anaconda3” 2.安装1.5.0版本的pytorch GPU版 2.1确定的你的显卡型号 https://jingyan.…

Redis持久化之AOF

AOF&#xff08;Append Only File&#xff09; 将我们所有的命令记录下来, history, 恢复的时候就把这个文件全部执行一遍 以日志的形式来记录每个写操作, 将redis执行过的所有指令记录下来(读操作不记录), 只许追加文件但不可以改写文件, 启动之初会读取该文件重新构建数据…

木犀草素修饰人血清白蛋白(Luteolin-HSA),山柰酚修饰人血清白蛋白(Kaempferol-HSA)

产品名称&#xff1a;木犀草素修饰人血清白蛋白 英文名称&#xff1a;Luteolin-HSA 用途&#xff1a;科研 状态&#xff1a;固体/粉末/溶液 产品规格&#xff1a;1g/5g/10g 保存&#xff1a;冷藏 储藏条件&#xff1a;-20℃ 储存时间&#xff1a;1年 温馨提醒&#xff1a;仅供科…