数据结构的个人理解

本文介绍了数据结构中的基本概念,包括无向图的定义,如道路、连通性、回路和环,以及树和链表的特点。树是连通且无环的无向图,链表可以视为一种特殊的树或图。文中还探讨了图、树和链表之间的关系,并提供了示例进行说明。
摘要由CSDN通过智能技术生成

一、数据结构

1.1 概述

数据结构,符合某种特定组织结构的相同类型的数据集合。

个人感觉,最基本的数据结构,其实是图,树和链表都是一种特殊类型的图。

所以图是什么,从数学的定义来说,图是由点集和边集组成的二元组。

略显抽象,一个一个说一下好了。

1.1.1 无向图

点集和边集组成的二元组。

几个重要的概念

  1. 道路,从一个点到另一个点的通路,比如说0-1-2是一条道路;
  2. 连通性,任何两点之间都存在一条道路,也就是选择任何一个点,都可以到达所有点;
  3. 回路,起点==终点的道路,比如说0-1-2-1-0是一个回路;
  4. 环,除了起点和终点,别的点都不同的回路,比如说0-1-3-0是一个环;
  5. 度,对无向图来说,度就是它相邻点的个数,比如说0的相邻点为1、3,0的度为2;

很明显,对上面这个图来说:

0

1

2

3

4

2

3

2

2

1

总结一下,上面这张图,连通有环图

1.1.2 

连通且无环的无向图,很明显,只要删除掉0和3的边,图就无环了,而这张图本身就是连通的,所以这就是一棵树了。

0

1

2

3

4

1

3

2

1

1

再来说个概念:

  1. 叶节点,度为1的结点,很容易理解吧,只和一个点相连,肯定是叶子呀;

这样看可能看的不明显,感觉不太像是树,但是任选一个非叶节点的结点当头结点,重新画一下看看,就很明显了:

1.1.3 链表

起点和终点的度为1,其余的点度为2的无环连通图;

所以从某一种角度上来说,链表也是一种特殊的树,因为它也满足树的定义;

删掉初始图1和3的边

0

1

2

3

4

2

2

2

1

1

拉直了就是链表:

也可以拉成树:

​​​​​​​1.1.4 总结

以上都是个人看到的教学视频和问答的理解总结,可能会有理解偏差的情况,仅供参考,推荐大家去b站看看基础的视频,很多优秀的老师都讲解的很好的,不过我有点忘记了,推荐一下最近看的教程,里面有几集关于图的,感觉收获很多:

https://www.bilibili.com/video/BV1ts4y1k7Yz?p=6

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值