数据结构.

文章目录


你的点赞评论就是对博主最大的鼓励
当然喜欢的小伙伴可以:点赞+关注+评论+收藏(一键四连)哦~


🍊自我介绍

  Hello,大家好,我是小珑也要变强(也是小珑),我是易编程·终身成长社群的一名**"创始团队·嘉宾"** 和**"内容共创官"** ,现在我来为大家介绍一下有关物联网-嵌入式方面的内容。


🍊数据结构基础概念

简介

  1968年美国克务特教授开创了数据结构的最初体系;数据结构指的是数据的逻辑结构和存储结构及其操作;数据结构是一门综合性的专业课程,是是一门介于数学、计算机硬件、计算机软件之间的一门核心课程。是设计和实现编译系统、操作系统、数据库系统及其他系统程序和大型应用程序的基础。

  逻辑结构:表示数据运算之间的抽象关系(如邻接关系、从属关系等),按每个元素可能具有的直接前趋数和直接后继数将逻辑结构分为**"线性结构"和"非线性结构"**两大类。

  存储结构:逻辑结构在计算机中的具体实现方法,分为顺序存储方法、链接存储方法等。

  数据运算:对数据进行的操作,如插入、删除、查找、排序等

  我们嵌入式学习的数据结构的一些基础知识和用法,不会深究,所以小伙伴们不用过于担心会很难。

示例

图书管理员中的数据,如下表所示:

编号 书名 作者 出版社 出版日期 ...
a1 001 C语言 张三 科教 1998.7 ...
a2 002 数据结构 李四 国防 2002.2 ...
... ... ... ... ... ... ...

用代码来表示这些信息的话,我们可以使用结构体来进行:

c 复制代码
struct library
{
	int id;
	char book_name[];
	char author_name[];
	char publish_name[];
	struct date
	{
		int year;
		int month;
	}dt;
};

struct library lb;

lb.id;//查询编号
lb.author_name[20];//查询作者名
lb.dt.year;//查询出版年份

上表(List)中每一行为一个数据元素(或记录),记为ai(1≤i≤n),元素之间呈现的是一种线性关系。此表可表示为:

list = (a1,a2,...,an)

对其进行操作(或运算)也不是加,减,乘,除等数学运算,而是诸如:
查询,插入,修改,删除(俗称增删改查),分类

线性结构和非线性结构

线性结构

本质:一个对一个(一对一)

非线性结构

树形结构:(一对多)

图形结构:(多对多)

前驱和后继

若将线性表 记为(a1,a2,a3,...,ai-1,ai,ai+1,...an),表中ai-1领先于ai,ai领先于ai+1,则称ai-1为ai的前驱,ai+1为ai的后继。

相关推荐
INGNIGHT4 小时前
91 · 最小调整代价(序列dp)
数据结构·算法·leetcode
从小白到软工9 小时前
5-2 从查表到控件:造按钮
c语言·开发语言·数据结构·经验分享·ai编程
David猪大卫11 小时前
【C++修炼】STL容器—stack与queue
c语言·开发语言·数据结构·c++·经验分享·笔记·学习
瑶池酒剑仙11 小时前
C++变量初始化五法完全指南:默认/拷贝/直接/列表/值初始化与窄化转换陷阱(青云之志)
c语言·开发语言·数据结构·c++·算法·visual studio
秋天的怀念_David12 小时前
听故事学语言 · 数据结构篇 · 序章一 算法之问
数据结构·程序人生·算法
-dzk-13 小时前
【链表】LC 25.K 个一组翻转链表
数据结构·链表
careathers13 小时前
【数据结构】基于比较的排序算法 - 插入排序
java·数据结构·排序算法
MicrosoftCloud14 小时前
数据结构 07(上)|查找:顺序、折半、分块,ASL 到底怎么
数据结构·查找·顺序查找·折半查找·分块查找·平均查找长度·asl
Mortalbreeze14 小时前
0 - 1 BFS 算法详解:从基本原理到经典题目建模
数据结构·c++·算法·图论·宽度优先
shehuiyuelaiyuehao1 天前
算法56,重排链表
数据结构·算法·链表