数据结构与算法基础

数组

稀疏矩阵

题目

代入法选A

数据结构的定义

线性表

顺序存储和链式存储的对比

队列与栈

题目

答案选:D

广义表

树与二叉树

二叉树遍历

图中前序遍历结果是?

1,2,4,5,7,8,3,6

图中中序遍历结果是?

4,7,8,5,2,1,3,6

图中后序遍历结果是?

4,8,7,5,2,6,3,1

图中层次遍历结果是?

1,2,3,4,5,6,7,8

反向构造二叉树

需要中序搭配前序和后序遍历才能反向的构造出二叉树

树转二叉树

  • 孩子结点变为左子树结点

  • 兄弟结点变为右孩子结点

查找二叉树

最优二叉树(哈夫曼树)

线索二叉树

平衡二叉树

图的基本概念级存储

  • 在无向图中,若每对顶点之间都有一条边相连,则称该图为完全图( completegraph )。

  • 在有向图中若每对顶点之间都有二条有向边相互连接,则称该图为完全图。

邻接矩阵
邻接表

树的遍历

拓扑排序

最小生成树

算法

算法的特性

  • 有穷性:执行有穷步之后结束
  • 确定性:算法中每一条指令都必须有确切的含义,不能含糊不清。
  • 一个算法有零个或多个输入,以刻画运算对象的初始情况,所谓零个输入是指算法本身给定了初始条件。
  • 一个算法有一个或多个输出。没有输出的算法毫无意义。
  • 有效性:算法的每个步骤都能有效执行并能得到确定的结果。例如 a =0, b / a 就无效

算法的复杂度

查找

顺序查找

二分查找

折半查找在查找成功时关键字的比较次数最多为 log ⁡ 2 n \log_2 n log2n + 1 次。折半查找的时间复杂度为伏O( log ⁡ 2 n \log_2 n log2n) 。

散列表

排序

插入排序

希尔排序

直接选择排序

堆排序

冒泡排序

快速排序法

归并排序法

基数排序

复杂度

来源于软件设计师学习视频(仅供学习参考,附历年真题及详解)_哔哩哔哩_bilibili的网课记

相关推荐
宵时待雨几秒前
优选算法专题12:队列
算法·leetcode·职场和发展
tianyu2349 分钟前
双指针循环匹配金额——打款记录与账单的自动对账算法
java·算法·双指针循环·匹配金额
旖旎夜光1 小时前
LeetCode 738:单调递增的数字(贪心算法) —— 题解
数据结构·c++·算法·leetcode·贪心算法
青山木1 小时前
Hot 100 --- 搜索二维矩阵
java·算法·leetcode·矩阵
旖旎夜光1 小时前
LeetCode 1262:可被三整除的最大和 (贪心算法)—— 题解
数据结构·c++·算法·leetcode·贪心算法
心运软件1 小时前
基于机器学习的智能邮件分类系统:从数据采集到模型部署全流程实战
人工智能·python·算法·随机森林·机器学习·分类·scikit-learn
晚风叙码2 小时前
C++ 模板深度解析:类型模板、非类型模板、特化与分离编译
开发语言·c++·算法
依然鸣2 小时前
蓝桥杯多校模拟赛(第二场)题解
数据结构·c++·经验分享·学习·算法·图论
依然鸣2 小时前
蓝桥杯多校模拟赛 题解
数据结构·c++·经验分享·学习·算法·蓝桥杯
AKA__Zas3 小时前
芝士算法(位运算)
java·开发语言·算法·leetcode·学习方法