开篇:数据结构是程序应用里基础的学科。 官方来说,数据结构是计算机存储、组织数据的方式。
数据结构有着非常重要的重用,如果理解并且掌握它,在我们的学习或者工作中的开发会事半功倍。
接下来,开始我们的数据结构学习之路吧。(代码为C#形式)
1.什么是线性表?
线性表是最基本、最简单、也是最常用的一种数据结构。例如我们开发中最常用的关系型数据库。
例如这张学生表。
学号 姓名 性别 年龄1 阿黄 男 22
2 阿虎 女 23
3 阿蛋 男 24
在这张学生表中,这里的表为典型的线性表,由a1,a2......an组成的有限序列,在这张表中有3个数据元素,也称纪录,(学校,姓名..)这些称为数据项。
由此可见:线性表有如下特征:
1.有且仅有一个为开始元素的(在这里,阿黄是首个开始数据),它没有前趋,仅有一个后继元素(这里为阿虎)。
2.有且仅有一个为结束元素的(在这里,阿蛋是结束数据),它没有后继,仅有一个直接前趋势(这里为阿虎)。
3.除去首尾的两个元素,其余的为内部元素,有且仅有一个直接前趋势和直接后继元素(这里为阿虎)。
2.线性表的基本运算?
对于线性表,有这几种基本的运算:
1.增加元素 。2.查元素 。3.插入元素。4.删除元素等等。
接下来我会使用C# 来构建一个最基本的线性表类型(数组),大家也可以使用自己的语言来改写。
3.代码片段
我们先新增个Array类,初始化的时候我们默认给容量Capacity为20。
1 public class Array 2 { 3 private int[] Data; 4 private int Size; 5 private readonly int Capacity; 6 private bool IsFull => this.Capacity == this.Size; 7 public Array(int capacity = 20) 8 { 9 this.Capacity = capacity; 10 this.Data = new int[this.Capacity]; 11 } 12 }