数据结构,及分类(存储分类、逻辑分类)介绍

数据是软件开发核心,合理使用数据结构至关重要。数据结构是计算机存储和操作数据的方式,包含数组、链表等具体结构。它可按存储结构分为顺序、链式、索引、散列表存储结构,也可按逻辑分为线性、树形、图形结构,每种结构各有优缺点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、数据结构:

        数据是软件开发的核心。在软件开发过程中基本上就是对数据的新增、删除、修改、查看的操作。

        如何合理存储数据,如何有效提升数据操作开发效率,都是软件开发中的重中之重。使用合理的数据结构是非常重要的。

1.1简介:

        数据结构(Data Structure):计算机存储数据、操作数据的方式。将这些数据按照特定结构组成一个集合。

        数据结构是一种宏观概念,其中包含很多具体的数据结构。

        例如:数组、链表、堆、栈、队列、树、图、散列表等,每一种数据结构都有自己的优缺点。

1.2分类介绍:

数据结构可以按照存储结构分类,也可以按照逻辑进行分类;

1.2.1存储分类:

顺序存储结构:

        数据存储到一块连续的空间。例如:数组,List集合(底层数组)

        优点:地址连续,遍历效率高;可以随机访问

        缺点:插入或删除的效率低(需要移动数组,如果数据量大效率很低)

链式存储结构:

        数据存储到非连续的空间中。每个数据存储者后面数据的地址,形成链式结构。

        优点:插入或删除效率高。只需要修改存储的地址。

        缺点:地址非连续,遍历效率低。丧失随机访问数据能力。

索引存储结构:

        除存储的数据之外,还存储索引表存储数据的索引信息。MySQL数据库、MongoDB数据库等存储工具都支持索引。

散列表(Hash)存储结构:

        散列表存储结构是对数据进行计算,直接得到数据存储时的内存地址。使用顺序结构和链式结构共同实现(数组+链表)。

1.2.2 逻辑分类

        逻辑分类是程序员认为的结构,在计算机中还是按照存储结构分类进行存储的;

        逻辑分类按照前一个数据 和 后一个数据数量对应关系进行的分类。

线性结构(一对一)

        数据与数据之间是线性结构。除首尾不相连其他都是由顺序的。而且是一对一关系。

        线性结构有:数组、链表、堆、栈、队列等都是线性结构

树形结构(一对多)

        数据之间由层次关系。数据是一对多展示的,一个数据后面可以由多个数据,但每个数据前只能有一个数据。

        树形结构有:普通树、二叉树、二叉搜索树、平衡二叉搜索树、红黑树、B树、B+树等

图形结构(多对多)

        数据之间是网状关系结构。数据之间是多对多的关系,也就是说一个数据后面有多个数据,这个数据前面也有多个数据。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值