当前位置: 首页 > 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;是进程中的实际运作单位。 简单理解:应用软件中互相独立&…...

在软件开发中正确使用MySQL日期时间类型的深度解析

在日常软件开发场景中&#xff0c;时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志&#xff0c;到供应链系统的物流节点时间戳&#xff0c;时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库&#xff0c;其日期时间类型的…...

智慧工地云平台源码,基于微服务架构+Java+Spring Cloud +UniApp +MySql

智慧工地管理云平台系统&#xff0c;智慧工地全套源码&#xff0c;java版智慧工地源码&#xff0c;支持PC端、大屏端、移动端。 智慧工地聚焦建筑行业的市场需求&#xff0c;提供“平台网络终端”的整体解决方案&#xff0c;提供劳务管理、视频管理、智能监测、绿色施工、安全管…...

聊聊 Pulsar:Producer 源码解析

一、前言 Apache Pulsar 是一个企业级的开源分布式消息传递平台&#xff0c;以其高性能、可扩展性和存储计算分离架构在消息队列和流处理领域独树一帜。在 Pulsar 的核心架构中&#xff0c;Producer&#xff08;生产者&#xff09; 是连接客户端应用与消息队列的第一步。生产者…...

376. Wiggle Subsequence

376. Wiggle Subsequence 代码 class Solution { public:int wiggleMaxLength(vector<int>& nums) {int n nums.size();int res 1;int prediff 0;int curdiff 0;for(int i 0;i < n-1;i){curdiff nums[i1] - nums[i];if( (prediff > 0 && curdif…...

P3 QT项目----记事本(3.8)

3.8 记事本项目总结 项目源码 1.main.cpp #include "widget.h" #include <QApplication> int main(int argc, char *argv[]) {QApplication a(argc, argv);Widget w;w.show();return a.exec(); } 2.widget.cpp #include "widget.h" #include &q…...

【android bluetooth 框架分析 04】【bt-framework 层详解 1】【BluetoothProperties介绍】

1. BluetoothProperties介绍 libsysprop/srcs/android/sysprop/BluetoothProperties.sysprop BluetoothProperties.sysprop 是 Android AOSP 中的一种 系统属性定义文件&#xff08;System Property Definition File&#xff09;&#xff0c;用于声明和管理 Bluetooth 模块相…...

反射获取方法和属性

Java反射获取方法 在Java中&#xff0c;反射&#xff08;Reflection&#xff09;是一种强大的机制&#xff0c;允许程序在运行时访问和操作类的内部属性和方法。通过反射&#xff0c;可以动态地创建对象、调用方法、改变属性值&#xff0c;这在很多Java框架中如Spring和Hiberna…...

OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别

OpenPrompt 和直接对提示词的嵌入向量进行训练有什么区别 直接训练提示词嵌入向量的核心区别 您提到的代码: prompt_embedding = initial_embedding.clone().requires_grad_(True) optimizer = torch.optim.Adam([prompt_embedding...

RNN避坑指南:从数学推导到LSTM/GRU工业级部署实战流程

本文较长&#xff0c;建议点赞收藏&#xff0c;以免遗失。更多AI大模型应用开发学习视频及资料&#xff0c;尽在聚客AI学院。 本文全面剖析RNN核心原理&#xff0c;深入讲解梯度消失/爆炸问题&#xff0c;并通过LSTM/GRU结构实现解决方案&#xff0c;提供时间序列预测和文本生成…...

HybridVLA——让单一LLM同时具备扩散和自回归动作预测能力:训练时既扩散也回归,但推理时则扩散

前言 如上一篇文章《dexcap升级版之DexWild》中的前言部分所说&#xff0c;在叠衣服的过程中&#xff0c;我会带着团队对比各种模型、方法、策略&#xff0c;毕竟针对各个场景始终寻找更优的解决方案&#xff0c;是我个人和我司「七月在线」的职责之一 且个人认为&#xff0c…...