美文网首页
原来你是这样的数据结构之线性表

原来你是这样的数据结构之线性表

作者: 雨飞飞雨 | 来源:发表于2017-10-22 15:04 被阅读16次

算法是一切程序设计的基础灵魂,更是一位程序员水平高低的集中体现.

这是<<java常用算法手册>>中页面话,也说明了算法的重要性,干程序员也有几年了,随着学习的工作的越来越多,越来越深入,
不知不觉中感觉到的自己的瓶颈,在学习很多知识的时候,发现自己很难继续深入学习下去.干程序员这个行业就好像在练功,而
我们所分各种程序员中,前端程序员,后端程序员,android程序员,iOS程序员...大家只是练的外功不同,而我们的内功却被我们
忽视掉了,数据结构与算法就是内功,只有内功高深了,什么招式,那都是手拿擒来!

我写的这些学习笔记都是出自<<java常用算法手册>>!

什么是线性表?

在现实生活中,我们可以找到很多的例子来说明什么是线性表,比如26个英文字母(A,B,C,...,Z)中,每个英文字符就是一个数据元素,也称为数据结点.那么具体的定义是什么呢?

线性表是由n个数据元素组成的有序序列.

  • 数据元素的个数为n,也称为表的程度,当n=0的时候称为空表;
  • 如果一个线性表非空,即n>0,则可以简单地记作(a1,a2,...,an);
  • 数据元素ai(1<=i<=n)表示各个元素,在不同的场合,其含义也不同;

其逻辑结构特征如下:

  • 有且仅有一个开始结点a1,没有直接前趋结点,有且仅有一个后趋结点a2;
  • 有且仅有一个终结结点an,没有直接后继结点,有且仅有一个直接前趋结点;
  • 其余的内部结点ai(2<=i<=n-1)都有且仅有一个直接前趋结点和一个后趋结点;
  • 对于同一线性表,各数据元素ai必须具有相同的数据类型,即同一线性表中各数据元素具有相同类型,每个数据元素的长度相同.

线性表的基本运算

  1. 初始化
    初始化表(InitList)即构造一个空的线性表L.
    2.计算表长
    计算表长(ListLength)即计算线性表L中的结点的个数.
    3.获取结点
    获取结点(GetNode)即取出线性表L中第i个结点的数据,这里1<=i<=ListLength(L)
    4.查找结点
    查找结点就是找到线性表中值为x的结点,并返回该结点在线性表L中结点的位置,如果没有找到则返回错误标示.
    如果有多个相同的结点,则返回第一个结点.
    5.插入结点
    插入结点就是在线性表第i个位置插入结点,使得其后的结点编号依次加1,插入新的结点后,线性表L的长度将变为n+1.
    6.删除结点
    删除结点就是删除线性表L中第i个结点,使得其后的所有节点编号依次减1,线性表L的长度将变为n-1.

线性表的储存结构

线性表的存储结构有两种,一种是顺序存储结构,一种是链式存储结构.
原来你是这样的数据结构之线性表

相关文章

  • 原来你是这样的数据结构之线性表

    算法是一切程序设计的基础和灵魂,更是一位程序员水平高低的集中体现. 这是<>中页面话,也说...

  • 数据结构之线性表

    数据结构之线性表 1. 什么是线性表 线性表是一种最常用,最简单的一种数据结构。它是n个数据元素的有限序列。n 为...

  • 数据结构探险之线性表篇(上):顺序表

    数据结构探险之线性表篇 将要学到得: 线性表(链表) 什么是线性表? 线性表是n个数据元素的有限序列 排列之后成线...

  • 重温:数据结构与算法 - 03数组

    数据结构与算法之美 - 数组 数据结构与算法之美-学习大纲 什么数组? 数组是一种 线性表 数据结构。它用一组 连...

  • 数据结构之线性表的链式存储结构

    之前写了线性表的顺序存储结构和有序线性表的顺序存储结构,今天接着写线性表的链式存储结构 数据结构之线性表的顺序存储...

  • 数据结构与算法02——线性表

    一、 线性表线性表是最基本、最简单、也是最常用的一种数据结构。线性表(linear list)是数据结构的一种,一...

  • iOS设计模式--迭代器

    学习迭代器之前,先看一种数据结构--线性表 线性表:线性表是最基本,最简单,也是最常用的一种数据结构。 线性表中数...

  • 【数据结构】线性表之单链表

    完整代码需结合前面一篇顺序表数据结构学习-线性表之顺序表各种操作网易云课堂小甲鱼课程链接:数据结构与算法 线性表的...

  • Java造轮子-数据结构-线性表

    数据结构-线性表 @(数据结构) 线性表是数据结构中的逻辑结构。可以存储在数组上,也可以存储在链表上。 顺序表(数...

  • JavaScript数据结构之队列

    接上篇-数据结构之栈 数据结构之---队列 1.队列的定义 队列是一种特殊的线性表,特殊之处在于它只允许在表的前端...

网友评论

      本文标题:原来你是这样的数据结构之线性表

      本文链接:https://www.haomeiwen.com/subject/ixiguxtx.html