前言
控制流程和数据结构是计算机程序的两大要素。数据结构就是数据的组织方式。线性数据结构样例:数组和链表。
1. 数组
? 定义:数组是一种由若干元素组成的集合,每个元素被至少一个索引(Index)或者关键字(Key)标识,每个元素的位置都可以通过计算索引得到。
? 维度分类:一维数组、二维数组、三维数组、多维数组。
? 特点:一个(一维)数组一旦被创建出来,它的长度(可容纳元素的个数)就是固定的,访问其中任意一个元素都要使用该元素的索引(又称下标)。数组的下标是从0开始计算的(例如:0,1,2,3,4,5,6,7,8,9)。
2. 链表
? 定义:链表(Linked List)是一种线性表,通常由一连串节点组成,每个节点包含数据和一个或两个用来指向上一个或下一个节点位置的连接(Links)。
? 分类:链表又分为非循环链表和循环链表。
? 非循环链表是一种由若干元素组成的有限序列,存在一个唯一的没有前驱的元素(头元素);存在一个唯一的没有后继的元素(尾元素)。每个元素都有一个直接前驱元素和一个直接后继元素。
? 循环链表(Circularly Linked List)是有些链表的头节点和尾节点连在一起,从任何一个节点开始都可以走遍链表的每个节点,有头无尾的链表。也有单向和双向之分。
? 数组与数链最基本的区别是静态和动态区别
? 数组适合只需要进行访问(读取操作)
? 数链适合增添元素或删除元素(更新操作)
本文暂时没有评论,来添加一个吧(●'◡'●)