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

《零基础入门数据结构与算法》专栏介绍

目录

前言 

第一部分:重点 

第二部分:题库

第三部分:测试

第四部分:实验

第五部分:试卷

总结 


前言 

本专栏主要分为五个部分:
① 重要知识点详解

② 近百道练习题解析

③ 数据结构与算法章节测试

④ 数据结构与算法章节实验

⑤ 数据结构与算法试卷

第一部分:重点 

1.顺序表的十个基本操作(全)

2.单链表的十三个基本操作(全)

3.四种创建单链表的方法

4.约瑟夫环问题(三种方法)

5.两个有序表的合并(三种方法)

6.一元多项式相加问题(两种方法)

7.删除重复元素(顺序表、单链表)

8.顺序栈与链栈

9.顺序循环队列与链队列

10.后缀表达式的转换(栈的运用)

11.简单表达式的计算(两种方法)

12.next数组(详细求法)

13.BF算法(具体应用)

14.串的模式匹配相关问题(BF算法、KMP算法)

15.二叉树的遍历(七种方法)

第二部分:题库

Part 1:顺序表

1.C语言实现顺序表的插入、删除

2.顺序表基本练习-初始化、插入和输出

3.顺序表基本练习-删除元素

4.顺序表基本操作-查找

5.顺序表删除重复元素

6.顺序表实现集合并集

7.顺序表元素循环左移(new)

8.删除顺序表中最小值

9.递增顺序表插入

10.将顺序表非零元素依次移到表的前端

11.删除顺序表中第一个值等于x的元素

12.在顺序表中,输入一个元素插入到原表的最小元素之前

Part 2:链表 

13.单链表基本练习-初始化、插入和输出

14.单链表基本操作-查找

15.单链表基本练习-删除

16.建立带头结点的单链表

17.统计不带头结点的单链表长度(循环方法)

18.单链表插入

19.单链表删除

20.在带头结点的单链表的最大值前面插入一个新的结点

21.有头结点单链表中查找值等于指定值的结点

22.在带头单链表中查找倒数第k个结点(参数传出)

23.删除链表中的重复元素

24.删除带头结点的单链表中值重复的元素

25.删除带头结点单链表中倒数第k个结点

26.删除带头结点的单链表中值小于x的所有元素

27.在带头结点单链表中查找最大值,将其与最后一个元素交换(交换值)

28.链表字符统计

29.有头结点单链表逆置

30.双向循环链表修复

31.双向循环链表中插入结点并输出

32.连接两个循环单链表

33.按奇偶位序改造带头结点的单链表

34.合并零之间非零结点

35.两个整数求和(链表)

36.一元多项式相加(单链表)

37.编写一个程序实现两个一元多项式相加的运算

38.约瑟夫环问题(顺序表实现)

39.约瑟夫环问题(循环单链表)

Part 3:栈与队列 

40.栈的基本操作

41.函数:判断表达式括弧是否匹配

42.栈的应用-判断表达式括弧是否匹配(()、[]、{})

43.数制转换(十进制转二进制)

44.纸条解密-栈的应用

45.简单表达式计算

46.浏览器中访问网页、回退及前进模拟

47.舞伴配对模拟

48.判断序列是否为正确的出栈序列

49.链队列基本操作

50.顺序循环队列的基本操作

51.用尾指针标识的单循环链表实现队列r

Part 4:串 

52.串的表示及基本操作

53.字符串中删除子串

54.替换字符串中所有子串

55.串的模式匹配(BF算法)

56.BF算法之输出子串在主串中的位置

57.具有通配符?的模式匹配算法(BF)

58.串的模式匹配(KMP算法)

59.编写程序将一个子串插入到主串中

Part 5:矩阵 

60.稀疏矩阵的三元组存储及快速转置

61.稀疏矩阵的压缩存储

62.对称矩阵的压缩存储

Part 6:树 

63.二叉树的建立与遍历

64.层次遍历二叉树

65.计算二叉树的最大宽度

66.查找二叉树指定结点,并输出以该结点为根的子树的深度

67.计算二叉树的深度和叶子结点数

68.交换二叉树中所有结点的左右结点

69.非递归方式实现二叉树的四种遍历

70.利用非递归遍历统计二叉树的结点数

71.函数:先序输出叶结点

72.哈夫曼树和哈夫曼编码

73.哈夫曼的编码和解码过程

Part 7:图 

74.图的邻接矩阵创建

75.图的邻接表存储

76.图的邻接矩阵与搜索

77.图邻接表和拓扑排序

78.图的最小生成树-Prim算法

79.图的最小生成树-Kruskal算法

80.计算有向图点的入度与出度

81.单源点最短路径(输出路径)

Part 8:查找 

82.查找-顺序查找

83.查找-折半查找

84.查找-二叉排序树

Part 9:排序 

85.简单排序(排序过程)

86.快速排序算法

87.排序-选择类排序

88.排序-交换类排序

89.排序-插入类排序

90.排序-堆排序

第三部分:测试

1.【数据结构】测试1 绪论

2.【数据结构】测试2 线性表

3.【数据结构】测试3 栈和队列

4.【数据结构】测试4 串

5.【数据结构】测试5 数组和广义表

6.【数据结构】测试6 树和二叉树

7.【数据结构】测试7 图

8.【算法】测试1 查找

9.【算法】测试2 排序

第四部分:实验

1.【数据结构】实验1 预备实验

2.【数据结构】实验2 顺序表与链表

3.【数据结构】实验3 栈和队列(万字总结)

4.【数据结构】实验4 串(基本操作、BF、next数组、KMP)

5.【数据结构】实验5 数组和特殊矩阵

6.【数据结构】实验6 树(二叉树与哈夫曼树)

7.【数据结构】实验7 图(详细)

8.【数据结构】实验1 查找

9.【数据结构】实验2 排序

第五部分:试卷

1.【数据结构与算法】试卷1

2.【数据结构与算法】试卷2

3.【数据结构与算法】试卷3

4.【数据结构与算法】试卷4

5.【数据结构与算法】试卷5

总结 

祝大家更上一层楼!

相关文章:

《零基础入门数据结构与算法》专栏介绍

目录 前言 第一部分:重点 第二部分:题库 第三部分:测试 第四部分:实验 第五部分:试卷 总结 前言 本专栏主要分为五个部分: ① 重要知识点详解 ② 近百道练习题解析 ③ 数据结构与算法章节测试 …...

测试开发之Django实战示例 第九章 扩展商店功能

第九章 扩展商店功能在上一章里,为电商站点集成了支付功能,然后可以生成PDF发票发送给用户。在本章,我们将为商店添加优惠码功能。此外,还会学习国际化和本地化的设置和建立一个推荐商品的系统。本章涵盖如下要点:建立…...

【Spring】一文带你吃透AOP面向切面编程技术(下篇)

个人主页: 几分醉意的CSDN博客_传送门 上节我们介绍了什么是AOP、Aspectj框架的前置通知Before传送门,这篇文章将继续详解Aspectj框架的其它注解。 文章目录💖Aspectj框架介绍✨JoinPoint通知方法的参数✨后置通知AfterReturning✨环绕通知Ar…...

【java】Spring Boot --40 个 Spring Boot 常用注解(建议收藏)

本文目录一、Spring Web MVC 注解Spring Web MVC 注解RequestMappingRequestBodyGetMappingPostMappingPutMappingDeleteMappingPatchMappingControllerAdviceResponseBodyExceptionHandlerResponseStatusPathVariableRequestParamControllerRestControllerModelAttributeCross…...

《游戏学习》| 微信对话模拟生成器源码分析

简介微信对话生成器,是一款在线微信聊天对话制作的工具,它可以设置苹果或安卓状态栏,包括手机电量、手机时间等,还可以设置不同用户的角色,然后发送文字、语音、红包、转账等多种好玩的功能,可谓是一款娱乐…...

剑指 Offer 10- I. 斐波那契数列[c语言]

目录题目思路代码结果该文章只是用于记录考研复试刷题题目 力扣斐波那契数列 写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项(即 F(N))。斐波那契数列的定义如下: F(0) 0, F(1) 1 …...

【C#基础】C# 数据类型总结

序号系列文章0【C#基础】初识编程语言C#1【C#基础】C# 程序通用结构2【C#基础】C# 基础语法解析文章目录前言数据类型一. 值类型(Value types)二. 引用类型(Reference types)三. 指针类型(Pointer types)结…...

再创荣誉 | Softing工业荣获CAIMRS 2023 数字化创新奖

在刚刚结束的中国工控-第二十一届“自动化及数字化”年度评选(CAIMRS 2023)中,Softing凭借edgeAggregator产品荣获“数字化创新奖”! 经层层筛选,Softing edgeAggregator边缘聚合服务器从中脱颖而出,摘得C…...

Multi Paxos

basic paxos 是用于确定且只能确定一个值,“只确定一个值有什么用?这可解决不了我面临的问题,例如每个用户都要多次保存数据.” 你心中可能有这样的疑问。 原simple paxos论文里有提到一连串个instance of paxos [4] 但没有提出 multi paxos的概念&…...

Android - dimen适配

一、分辨率对应DPIDPI名称范围值分辨率名称屏幕分辨率density密度(1dp显示多少px)ldpi120QVGA240*3200.75(120dpi/1600.75px)mdpi160(基线)HVGA320*4801(160dpi/1601px)hdpi240WVGA4…...

深度学习网络模型——RepVGG网络详解

深度学习网络模型——RepVGG网络详解0 前言1 RepVGG Block详解2 结构重参数化2.1 融合Conv2d和BN2.2 Conv2dBN融合实验(Pytorch)2.3 将1x1卷积转换成3x3卷积2.4 将BN转换成3x3卷积2.5 多分支融合2.6 结构重参数化实验(Pytorch)3 模型配置论文名称: RepVGG: Making V…...

仓库拣货标签应用案例

使用场景:富士康成都仓库 解决问题:仓库亮灯拣选, 提高作业效率和物料明晰展示仓库亮灯拣选使用场景:京东仓库 解决问题:播种墙分拣,合单拣货完成后按订单播种播种墙分拣使用场景:和尔泰智能料…...

介绍一款HCIA、HCIP、HCIE的刷题软件

华为认证考试分为三个等级,分别为工程师HCIA、高级工程师HCIP、专家HCIE,等级越高,考试难度越大。 本篇带大家详细了解华为数通题库刷题工具的详细操作步骤。 操作须知:本款刷题工具为一款刷题小程序,无需安装即可在线…...

线程池整理汇总

它山之石,可以攻玉。借鉴整理线程池相关文章,以及自身实践。 文章目录1. 线程池概述2. 线程池UML架构3. Executors创建线程的4种方法3.1 newSingleThreadExecutor3.2 newFixedThreadPool3.3 newCachedThreadPool3.4 newScheduledThreadPool小结4. 线程池…...

华为OD机试真题Python实现【最短木板长度】真题+解题思路+代码(20222023)

🔥系列专栏 华为OD机试(Python)真题目录汇总华为OD机试(JAVA)真题目录汇总华为OD机试(C++)真题目录汇总华为OD机试(JavaScript)真题目录汇总文章目录 🔥系列专栏题目输入输出示例一输入输出说明示例二输入输出说明...

VMware安装CentOS7

个人简介:云计算网络运维专业人员,了解运维知识,掌握TCP/IP协议,每天分享网络运维知识与技能。个人爱好: 编程,打篮球,计算机知识个人名言:海不辞水,故能成其大;山不辞石…...

力扣24.两两交换链表中的节点

文章目录力扣24.两两交换链表中的节点题目描述方法1:非递归方法2:递归力扣24.两两交换链表中的节点 题目描述 给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题&…...

AtCoder Regular Contest 137 题解(A~C)

A-Coprime Pair 思路 我们知道两个质数之间并不会相隔太远&#xff0c;于是我们直接用暴力就可以通过这题。 先从大到小枚举答案&#xff0c;并且枚举所有可能的起点&#xff0c;当枚举到的两个值满足条件输出并结束程序即可。 代码 #include <bits/stdc.h> using n…...

【C语言】预处理指令

C语言预处理指令一、什么是预处理指令二、预处理指令特点三、文件包含四、C标准库<stdio.h>一、什么是预处理指令 C语言的源文件&#xff08;.c文件&#xff09;需要经过编译生成可执行程序&#xff0c;编译操作会将源文件转换成目标文件&#xff0c;对于 VC、VS&#x…...

Java基础之多线程JUC全面学习笔记

目录初识多线程多线程的实现方式常见的成员方法线程安全的问题死锁生产者和消费者线程池自定义线程池初识多线程 什么是多线程? 线程 线程是操作系统能够进行运算调度的最小单位。线程被包含在进程之中&#xff0c;是进程中的实际运作单位。 简单理解:应用软件中互相独立&…...

Java - Mysql数据类型对应

Mysql数据类型java数据类型备注整型INT/INTEGERint / java.lang.Integer–BIGINTlong/java.lang.Long–––浮点型FLOATfloat/java.lang.FloatDOUBLEdouble/java.lang.Double–DECIMAL/NUMERICjava.math.BigDecimal字符串型CHARjava.lang.String固定长度字符串VARCHARjava.lang…...

工程地质软件市场:发展现状、趋势与策略建议

一、引言 在工程建设领域&#xff0c;准确把握地质条件是确保项目顺利推进和安全运营的关键。工程地质软件作为处理、分析、模拟和展示工程地质数据的重要工具&#xff0c;正发挥着日益重要的作用。它凭借强大的数据处理能力、三维建模功能、空间分析工具和可视化展示手段&…...

Java 加密常用的各种算法及其选择

在数字化时代&#xff0c;数据安全至关重要&#xff0c;Java 作为广泛应用的编程语言&#xff0c;提供了丰富的加密算法来保障数据的保密性、完整性和真实性。了解这些常用加密算法及其适用场景&#xff0c;有助于开发者在不同的业务需求中做出正确的选择。​ 一、对称加密算法…...

鱼香ros docker配置镜像报错:https://registry-1.docker.io/v2/

使用鱼香ros一件安装docker时的https://registry-1.docker.io/v2/问题 一键安装指令 wget http://fishros.com/install -O fishros && . fishros出现问题&#xff1a;docker pull 失败 网络不同&#xff0c;需要使用镜像源 按照如下步骤操作 sudo vi /etc/docker/dae…...

实现弹窗随键盘上移居中

实现弹窗随键盘上移的核心思路 在Android中&#xff0c;可以通过监听键盘的显示和隐藏事件&#xff0c;动态调整弹窗的位置。关键点在于获取键盘高度&#xff0c;并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...

使用LangGraph和LangSmith构建多智能体人工智能系统

现在&#xff0c;通过组合几个较小的子智能体来创建一个强大的人工智能智能体正成为一种趋势。但这也带来了一些挑战&#xff0c;比如减少幻觉、管理对话流程、在测试期间留意智能体的工作方式、允许人工介入以及评估其性能。你需要进行大量的反复试验。 在这篇博客〔原作者&a…...

Scrapy-Redis分布式爬虫架构的可扩展性与容错性增强:基于微服务与容器化的解决方案

在大数据时代&#xff0c;海量数据的采集与处理成为企业和研究机构获取信息的关键环节。Scrapy-Redis作为一种经典的分布式爬虫架构&#xff0c;在处理大规模数据抓取任务时展现出强大的能力。然而&#xff0c;随着业务规模的不断扩大和数据抓取需求的日益复杂&#xff0c;传统…...

倒装芯片凸点成型工艺

UBM&#xff08;Under Bump Metallization&#xff09;与Bump&#xff08;焊球&#xff09;形成工艺流程。我们可以将整张流程图分为三大阶段来理解&#xff1a; &#x1f527; 一、UBM&#xff08;Under Bump Metallization&#xff09;工艺流程&#xff08;黄色区域&#xff…...

FTXUI::Dom 模块

DOM 模块定义了分层的 FTXUI::Element 树&#xff0c;可用于构建复杂的终端界面&#xff0c;支持响应终端尺寸变化。 namespace ftxui {...// 定义文档 定义布局盒子 Element document vbox({// 设置文本 设置加粗 设置文本颜色text("The window") | bold | color(…...

Python异步编程:深入理解协程的原理与实践指南

&#x1f49d;&#x1f49d;&#x1f49d;欢迎莅临我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 持续学习&#xff0c;不断…...