【中级软件设计师】—数据结构与算法基础考点总结篇(八)

【中级软件设计师】—数据结构与算法基础考点总结篇(八)

课程大纲
在这里插入图片描述

1.1 数组

在这里插入图片描述

按行存储:a+(2*5+3)*2 其中a表示的就是a[0][0]

1.2 稀疏矩阵

在这里插入图片描述

在这里插入图片描述

本题采用代入法,首先代入A0,0A0,0存入的位置是M【1】,把i=0,j=0分别代入A、B、C和D选项中,
在这里插入图片描述
代入之后我们排除了B和C,在代入A1,1,存储在M【3】中,在A和D选项中我们得知A符合题意,选A

1.2 数据结构的定义

在这里插入图片描述

1.3 线性表的定义

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.4线性表—顺序存储与链式存储对比

在这里插入图片描述

1.5 线性表—队列与栈

在这里插入图片描述

1.6 广义表

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

1.7 树与二叉树

在这里插入图片描述
在这里插入图片描述

1.8 二叉树的遍历

在这里插入图片描述
前序遍历根左右(前就是根在前,左右在后面)。中序遍历左根右(中就是根在中间,左右在旁)。后序遍历左右根(因为有后,就是根在后面,那左右就在前面了。)

前:12457836 根:42785136 后:48752631 层:12345678

在这里插入图片描述

1.9 树与二叉树—反向构造二叉树

在这里插入图片描述

2.0 树转二叉树

在这里插入图片描述

2.1 查找二叉树

在这里插入图片描述

2.2 树与二叉树—哈夫曼树(最优二叉树)

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
构成哈夫曼树的步骤:

1)从小到大进行排序, 将每一个数据,每个数据都是一个节点 , 每个节点可以看成是一颗最简单的二叉树

2)取出根节点权值最小的两颗二叉树

3)组成一颗新的二叉树, 该新的二叉树的根节点的权值是前面两颗二叉树根节点权值的和

4)再将这颗新的二叉树,以根节点的权值大小 再次排序, 不断重复 1-2-3-4 的步骤,直到数列中,所有的数据都被处理,就得到哈夫曼树
在这里插入图片描述

2.3 线索二叉树

在这里插入图片描述
在这里插入图片描述

无左孩子,前趋,无右孩子,后继

在这里插入图片描述

在这里插入图片描述

2.4 树与二叉树—平衡二叉树

在这里插入图片描述

2.5 图的基本概念

在这里插入图片描述

图的存储—邻接矩阵

在这里插入图片描述

图的存储—邻接表

在这里插入图片描述

2.6 图的遍历

在这里插入图片描述

2.7 图— 拓扑排序

在这里插入图片描述
拓扑排序:找入度为0的结点,由该入度为0的结点也删除掉,重复以上操作。
在这里插入图片描述
上图的拓扑排序为:
在这里插入图片描述

2.8 图的最小生成树—普里姆算法

🎈生成树

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

图中ABCDEF一共有六个节点,连接起来,最少需要n-1条边。如果选的五条边是最短的五条边,并且没有形成环路。因此,最少需要1300长的线路,才能保持城市的通信连通。

普里姆算法

在这里插入图片描述

克鲁斯卡尔算法


在这里插入图片描述
在这里插入图片描述

2.9 算法基础—算法的特性

在这里插入图片描述

算法基础—时间复杂度

在这里插入图片描述

3.0 查找—顺序查找

在这里插入图片描述

3.1 二分查找

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.2 散列表

在这里插入图片描述

3.3 排序

常见的排序有:

在这里插入图片描述

排序算法的稳定性

在这里插入图片描述
在这里插入图片描述

3.4 直接插入排序

在这里插入图片描述

在这里插入图片描述

3.5 希尔排序

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.6 直接选择排序

在这里插入图片描述

3.7 堆排序

在这里插入图片描述

  • 大顶堆:每个结点的值都大于或等于其左右孩子结点的值。
  • 小顶堆:每个结点的值都小于或等于其左右孩子结点的值。
    在这里插入图片描述
    在这里插入图片描述

3.8 冒泡排序

在这里插入图片描述

3.9 快速排序

在这里插入图片描述

4.0 归并排序

在这里插入图片描述

4.1 基数排序

在这里插入图片描述

4.2 排序算法总结

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

[网络原理] TCP 协议的相关特性

TCP和UDP都是传输层的协议. 文章目录1. TCP协议格式2. TCP连接及断开连接管理2.1 三次握手2.2 四次挥手3. TCP可靠性机制3.1 确认应答3.2 超时重传4. 滑动窗口5. 流量控制6. 拥塞控制7. 延迟应答8. 捎带应答9. 面向字节流10. 异常情况1. TCP协议格式 TCP的特点是有连接,可靠性…

Ceres 自动求导解析-从原理到实践

Ceres 自动求导解析-从原理到实践 文章目录Ceres 自动求导解析-从原理到实践1.0 前言2.0 Ceres求导简介3.0 Ceres 自动求导原理3.1 官方解释3.2 自我理解4.0 实践4.1 Jet 的实现4.2 多项式函数自动求导4.3 BA 问题中的自动求导Reference1.0 前言 Ceres 有一个自动求导功能&…

Java 读取Excel模板中的数据到实体类

目录一. 前提条件1.1 需求1.2 分析二. 准备2.1 自定义注解2.2 封装Excel的实体类三. 前台四. Controller层五. Service层💪💪💪六. 效果一. 前提条件 1.1 需求 从指定的Excel模板中读取数据,将读取到的数据存储到数据库中。 1.2…

VBA定位文本框控件中光标位置

实例需求:用户窗体中有如下4个TextBox控件,TextBox1中已经有文字内容,点击【定位】按钮,统计TextBox1中段落数量,并定位TextBox1中光标位置(箭头处),如下图所示。 示例代码如下。 P…

谈谈你对ThreadLocal的理解

谈谈你对ThreadLocal的理解 ThreadLocal是Java中的一个线程本地变量,它可以在多线程环境下,为每个线程提供独立的变量副本,保证了线程之间的数据隔离。ThreadLocal通常用于解决多线程共享变量的线程安全问题。 ThreadLocal通过一个ThreadLo…

第03章_基本的SELECT语句

第03章_基本的SELECT语句 🏠个人主页:shark-Gao 🧑个人简介:大家好,我是shark-Gao,一个想要与大家共同进步的男人😉😉 🎉目前状况:23届毕业生,…

【Redis】十大数据类型(上篇)

文章目录概述命令官网Key命令Redis 的过期时间设置有四种形式:redis字符串(String)最最常用 set key value常用命令图示多值设置 mset、mget获取指定区间范围内的值 getrange、setrange数值增减 INCR key、DECR key获取内容长度及内容追加 STRLEN key、APPEND key x…

基于Android的停车场车位预约系统app-动态计算停车时长-公告-反馈

在设计时,用现代多媒体技术对 进行存储、加载智能码、调用、对比及识别,使得进出的车辆同时处于该系统电脑的监控之下,创建车库管理与车牌识别两者完美结合的管理流程。 智能停车场收费管理系统是一种高效快捷、公正准确、科学经济的停车场管理手段,是停…

工具:dumpbin.exe : COFF DLL 动态库依赖库 :VS工具

摘要: 速度快,不会像depend.dll 那样卡顿。但是无法查看调用dll 调用的dll,所以不如depend.exe 好用。查看方式不如depend.exe 直观。 总结:** 可能不怎么用** 介绍: dumpbin.exe是微软二进制文件转储器。显示有关…

字节跳动软件测试岗,前两面过了,第三面被面试官吊打,结局我哭了

阎王易见,小鬼难缠。我一直相信这个世界上好人居多,但是也没想到自己也会在阴沟里翻船。我感觉自己被字节跳动的HR坑了。 在这里,我只想告诫大家,offer一定要拿到自己的手里才是真的,口头offer都是不牢靠的&#xff0…

Uni-Mol: A Universal 3D Molecular Representation Learning Framework

Uni-Mol: 一个通用的三维分子表示学习框架 ICLR 2023 Uni-Mol 论文:Uni-Mol: A Universal 3D Molecular Representation Learning Framework | OpenReview Uni-Mol 代码::GitHub - dptech-corp/Uni-Mol: Official Repository for the Uni-Mo…

Python:《寻找整数》

问题描述 本题为填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。 有一个不超过 1017 的正整数 n,知道这个数除以 2 至 49 后的余数如下表所示,求这个正整数最小是多少。 运行限制 最大运行时间:…

辉煌优配|人民币将可直接买港股 多家港股公司申请 增设人民币柜台

3月以来,多家港股公司发布公告称,已正式提交有关增设人民币货台的请求。这意味着港交所力推的港股“港币-人民币双货台形式”进入实质性推进阶段,离岸人民币行将迎来愈加丰富的出资标的。 多位业内人士表明,树立双货台形式是港交所…

Java设计模式(十七)—— 组合模式

组合模式的定义如下:将对象组合成树形结构以表示“部分-整体”的层次结构,让用户对单个对象和组合对象的使用具有一致性。 适用组合模式的情景如下: 希望表示对象的“部分—整体”层次结构希望用户用一致方式处理个体和组合对象一、问题的提…

这是一篇能够教会你运营阿里巴巴国际站的文章

对于很多跨境人来说,运营真的是一个让人头疼的大事情。不知道要从哪个方面下手,不知道要往哪方面努力等等问题都是很常见的,所以今天龙哥就解剖一下阿里巴巴国际站的运营方法,简单地给大家讲一下要掌握哪些方面的知识。运营这条路…

【数据结构篇C++实现】- 哈希表

文章目录🚀一、哈希表的原理精讲🚢(一)概念🚢(二)常见哈希函数的构造方法1.直接定址法2.数字分析法3.平方取中法4.除留余数法5.随机数法🚢(三)哈希冲突与处理…

web服务器—nginx

一、nginx介绍Nginx(“engine x”)是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的 Web和 反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。和apache一样,都是web服务器软件,因为其性能优异,所以被广大运维喜欢。又因…

【python】【protobuf】逆向还原protobuf结构

文章目录一、前言二、示例三、python demo一、前言 在很多场景,都有一个需求: 得到了一个编码后的protobuf数据(比如竞品调研的的数据包),需要逆向还原其proto结构文件。 有3种方案去做这件事情: 从编码入…

Linux常用文件管理命令

Linux常用文件管理命令 目录Linux常用文件管理命令前言常用命令练习题创建文件夹题目代码复制题目代码移动题目代码删除题目代码系列操作题目代码前言 本文将讲解我们在使用Linux操作系统时经常需要使用的命令,也可以当成是一篇笔记的记录,当然光看这些…

Ubuntu安装交叉编译器gcc

1.创建文件并把压缩包复制到文件夹下 2.解压到文件夹下 先找到放置的目录 也可以直接找到文件夹右键-在终端打开 通过-C选项指定解压后的目标目录 tar -jxvf gcc-linaro-arm-linux-gnueabihf-4.9-2014.09_linux.tar.bz2 -C /opt 注意:输入文件名时可以Tab键自动补齐 输入…