随笔分类 - 数据结构
白露飞鸟
摘要:所谓队列 队列是有序集合,添加操作发生在“尾部”,移除操作则发生在“头部”。 新元素从尾部进入 队列,然后一直向前移动到头部,直到成为下一个被移除的元素。 新添加的元素必须在队列的尾部等待,在队列中时间长的元素则排在前面。 这种排序 原则被称作 FIFO(first-in first-out),即先
阅读全文
摘要:栈抽象数据类型由下面的结构和操作定义。栈是元素的有序集合,添加操作与移除操作都发生在其顶端。栈的操作顺序是 LIFO,它支持以下操作: Stack() 创建一个空栈。它不需要参数,且会返回一个空栈。 push(item) 将一个元素添加到栈的顶端。它需要一个参数 item,且无返回值。 pop()
阅读全文
摘要:1. 图的定义 定义 图(Graph)是由顶点的有穷非空集合和顶点之间边的集合组成,通常表示为:G(V,E) G 表示一个图,V 是图 G 中顶点的集合,E 是图 G 中边的集合 线性表中我们把数据元素叫元素,树中将数据元素叫结点,在图中数据元素,我们则称之为顶点(Vertex) 在图结构中,不允许
阅读全文
摘要:1. 树的定义 定义 树(Tree)是 n(n>=0)个结点的有限集。n=0 时称为空树 在任意一颗非空树中: (1)有且仅有一个特定的称为根(root)的结点; (2)当 n>1 时,其余结点可分为 m(m>0)个互不相交的有限集 T1、T2、······、Tm,其中每一集合本身又是一棵树,并且称
阅读全文
摘要:1. 串的定义 串(string)是由零个或多个字符组成的有限序列,又叫字符串 一般记为 s = "a1a2······an"(n>=0) 串中的字符数目 n 称为串的长度 零个字符的串称为空串(null string) 空格串:只包含空格的串,有内容有长度 子串:串中任意个数的连续字符组成的子序列
阅读全文
摘要:1. 栈的定义 栈(stack):是限定仅在表尾进行插入和删除操作的线性表 栈顶(top)允许插入和删除的一端称为栈顶;另一端称为栈底(bottom) 空栈:不包含任何数据元素的栈 栈又被称为后进先出(Last In First Out)的线性表,简称 LIFO 结构 栈的插入操作,叫做进栈,也称压
阅读全文
摘要:1. 线性表的定义 线性表(List):零个或多个数据元素的有限序列 线性表元素的个数 n(n>=0)定义为线性表的长度,当 n=0 时,称为空表 在较复杂的线性表中,一个数据元素可以由若干个数据项组成 2.线性表的抽象数据类型 ADT 线性表(List) Data 线性表的数据对象集合为{a1,a
阅读全文
摘要:1. 定义 算法是解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示一个或多个操作 2. 五个基本特性 输入和输出 算法具有零个或多个输入 算法至少有一个或多个输出 有穷性 指算法在执行有限的步骤后,自动结束而不会出现循环,并且每一个步骤在可接受的时间内完成 实际应用中合理
阅读全文
摘要:1. 起源 具体问题中,抽象出适当的数据模型,设计对应解的算法,再编写程序,得到实际的软件 数据结构是研究非数值计算的程序设计问题中的操作对象,以及它们之间的关系和操作 程序设计 = 数据结构 + 算法 2. 基本概念和术语 数据 描述客观事物的符号,计算机中可操作的对象 数值类型:整型,实型等 非
阅读全文

浙公网安备 33010602011771号