数据结构.

文章目录


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


🍊自我介绍

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的后继

相关推荐
7 9714 分钟前
C语言基础知识--文件的顺序读写与随机读写
java·数据结构·算法
☆璇1 小时前
【数据结构】排序
c语言·开发语言·数据结构·算法·排序算法
艾莉丝努力练剑4 小时前
【LeetCode&数据结构】单链表的应用——反转链表问题、链表的中间节点问题详解
c语言·开发语言·数据结构·学习·算法·leetcode·链表
_殊途6 小时前
《Java HashMap底层原理全解析(源码+性能+面试)》
java·数据结构·算法
秋说10 小时前
【PTA数据结构 | C语言版】顺序队列的3个操作
c语言·数据结构·算法
lifallen10 小时前
Kafka 时间轮深度解析:如何O(1)处理定时任务
java·数据结构·分布式·后端·算法·kafka
risc12345612 小时前
BKD 树(Block KD-Tree)Lucene
java·数据结构·lucene
kk_stoper12 小时前
如何通过API查询实时能源期货价格
java·开发语言·javascript·数据结构·python·能源
秋说13 小时前
【PTA数据结构 | C语言版】字符串插入操作(不限长)
c语言·数据结构·算法
遇见尚硅谷15 小时前
C语言:20250714笔记
c语言·开发语言·数据结构·笔记·算法