数据结构与算法.docx
《数据结构与算法.docx》由会员分享,可在线阅读,更多相关《数据结构与算法.docx(11页珍藏版)》请在第一文库网上搜索。
1、数据结构与算法第一节数据结构及算法概述一、数据结构OOOOO树型结构线性结构(d)图形结构图、四类基本结构的示意图【要点】1 .数据元素是数据的基本单位。2 .数据结构是相互之间存在一种或多种特定关系的数据元素的集合。3 .4类基本的规律结构:集合、线性结构、树形结构和网状结构。4 .4种数据存储方式:挨次、链式、索引和散列。【例题单选题】(2022年义省信用社聘请考试真题)下列说法不正确的是()OA.数据元素是数据的基本单位B.数据项是数据中不行分割的最小标志单位C.数据可由若干个数据元素构成D.数据项可由若干个数据元素构成正确答案D答案解析数据元素是数据的基本单位,在计算机程序中通常被作为
2、一个整体进行考虑和处理。一个数据元素可由若干个数据项组成。数据项是不行分割的、含有独立意义的最小数据单位。因此D选项不正确。二、算法算法是对特定问题求解步骤的一种描述,它是指令的有限序列,其中每条指令表示一个或多个操作。算法的特性:有穷性、确定性、可行性、输入和输出。【要点】评价算法优劣标准:正确性、可读性、健壮性、高效率与低存储量需求。其次节线性表线性表是n (n0)个数据元素al, a2,,an组成的有限序列,n=0时称为空表。非空的线性表,有以下特征:L有且仅有一个开头结点al,没有直接前趋,有且仅有一个直接后继a2。2 .有且仅有一个终结结点an,没有直接后继,有且仅有一个直接前趋a-
3、。3 .其余的内部结点ai (2WiWnT)都有且仅有一个直接前趋a-和一个直接后继3i+ o线性表的链式存储包括单链表、循环链表和双链表。head 头结点 百结点尾结点【留意】与单链表的插入和删除操作不同的是,在双链表中插入和删除须同时修改两个方向上的指针。第三节栈和队列一、栈栈是一种“特别的”线性表,这种线性表中的插入和删除运算限定在表的某一端进行。不含任何数据元素的栈称为空栈。栈的基本运算:构造一个空栈InitStack (S)、判栈空StackEmpty (S)、判栈满 StackFull (S)、进栈 Push (S, x)、退栈 Pop (S) 取栈顶元素 StackTop (S)
4、。进栈(压入)退栈top(弹出)bottom【要点】栈的修改是按后进先出的原则进行。二、队列队列是只允许在一端进行插入,而在另一端进行删除的运算受限的线性表。当队列中没有元素时称为空队列。栈和队列一般有两种存储结构:挨次存储结构和链式存储结构。 o cr zq力- front【要点】队列的修改是依据先进先出的原则进行的。【例题单选题】(2007年X省信用社聘请考试真题)以下()不是栈的基本运算?A.删除栈顶元素B.删除栈底元素C.推断栈是否为空D.将栈置为空栈正确答案B答案解析栈是一种特别的线性表,这种线性表上的插入和删除运算限定在表的某一端进行。允许进行插入和删除的这一端称为栈顶,另一端称为
5、栈底。处于栈顶位置的数据元素称为栈顶元素。栈的修改是按后进先出的原则进行。栈的运算在栈顶进行。因此,删除栈底元素不属于栈的基本运算。第四节数组数组:把具有相同类型的若干变量按有序的形式组织起来的同类数据元素的集合。第五节树一、树(-)基本概念树是nlevellevellevelleveldepth = 3(1)有且仅有一个称为根的结点。(2)其余结点分为m (m20)个互不相交的非空集合Tl, T2,Tm,这些集合中的每一个都是一棵树,称为根的子树。森林是 (20)棵互不相交的树的集合。树中的一个结点拥有的子树数称为该结点的度。一棵树的度是指该树中结点的最大度数。树中某个结点的子树的根称为该结
6、点的孩子或儿子。树中结点的最大层数称为树的高度或深度。(二)树和森林的遍历1.树的遍历A(a)树先序遍历:若树不空,则先访问根结点,然后依次先序遍历各棵子树。BCDE后序遍历:若树不空,则先依次后序遍历各棵子树,然后访问根结点。BDCE层次遍历:若树不空,则自上而下自左至右访问树中每个结点。ABCED2.森林的遍历前序遍历森林:若森林非空,则:访问森林中第一棵树的根结点。前序遍历第一棵树中根结点的各子树所构成的森林。前序遍历除第一棵树外其他树构成的森林。右图前序遍历序列为ABCDEFIGJHo后序遍历森林:若森林非空,则:后序遍历森林中第一棵树的根结点的各子树所构成的森林。访问第一棵树的根结点
7、。后序遍历除第一棵树外其他树构成的森林。右图后序遍历序列为BDCAIFJGIlEo二、二叉树(-)基本概念二叉树是n (n20)个结点的有限集,它可以是空集(n=0),或者由一个根结点及两棵互不相交的、分别称作这个根的左子树和右子树的二叉树组成。二叉树的性质1 .二叉树的第i层上至多含有个结点(il) o2 .深度为k的二叉树上至多含有2-1个结点(kl) o3 .对任何一棵二叉树,若它含有n。个叶子结点、出个度为2的结点,则必存在关系式:n0=n2+l o深度为k (kl)且有2仁1个结点的二叉树称为满二叉树。假如在一棵深度为k (kl)的满二叉树上删去第k层上最右边的连续j(0Wj2Jl)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 算法