代码改变世界

[数据结构]基本概念2

2014-05-19 01:27  hellenism  阅读(195)  评论(0编辑  收藏  举报

逻辑结构:数据之间的关系。常见的逻辑结构只有两种,即【线性结构】和【非线性结构】

物理结构:在计算机中的存储方法。常见的物理结构只有两种,即【顺序存储】和【链式存储】

 

常见数据结构:

一.线性表

1.线性表的逻辑结构:

  a.有且只有一个开始结点a1,没有直接前驱,有唯一的直接后继a2

  b.有且只有一个终端结点an,没有直接后继,有唯一的直接前驱an-1

  c.剩余的内部结点都有唯一的直接前驱和直接后继

2.线性表的操作:

  a.创建线性表

  b.获取元素个数

  c.随机获取某一个元素

  d.插入

  e.删除

  (操作结束之后,需要保持逻辑结构的正确性)

3.线性表的物理结构:

  a.顺序存储

  b.链式存储

4.常见线性表:

  a.顺序表 ArrayList

  b.链表 LinkedList

 

二.栈

1.栈的逻辑结构:

  与线性表一致,只是在操作上有限制:后进先出

2.栈的操作:

  a.判断栈是否为空

  b.进栈和出栈

  c.取栈顶元素

3.栈的物理结构:

  a.顺序存储

  b.链式存储

4.常见栈

 

三.队列

1.队列的逻辑结构:

  与线性表一致,只是在操作上有限制:先进先出

2.队列的操作:

  a.判断队列是否为空

  b.进队列

  c.出队列

  d.获取队头元素

3.队列的物理结构:

  a.顺序存储

  b.链式存储

4.常见队列:


 

非线性结构:

一.树

1.树的逻辑结构

  a.树中任意一个结点都可以有0个或者多个直接后继,至多能有一个直接前驱

  b.树中只有根结点无前驱,它是开始结点

  c.叶子结点无后继

2.树的操作

  a.遍历树中的所有结点

  b.求树的高度

  c.求树的度

  d.求叶子结点数

  e.输出一棵树

3.树的物理结构:

  a.顺序存储

  b.链式存储

 

二.图