Data Structure
文章平均质量分 68
法海你懂不
梦想每个人都有,但不是每个人都有勇气去坚信...
展开
-
第4章第1节练习题15 判断两颗二叉树是否相似
试设计判断两颗二叉树是否相似的算法。 所谓二叉树T1和T2相似,指的是T1和T2都是空的二叉树或都只有一个根节点;或T1的左子树和T2的左子树是相似的且T1的右子树和T2的右子树是相似的原创 2016-08-25 12:05:40 · 3055 阅读 · 0 评论 -
第2章第1节练习题2 判断是否中心对称
试写一算法来判断单链表的前n个字符是否中心对称。原创 2016-01-14 17:45:03 · 2829 阅读 · 0 评论 -
第3章第1节 数组的存储结构
数组的存储结构,非压缩存储方式和压缩存储方式...原创 2016-03-04 16:48:49 · 4629 阅读 · 1 评论 -
第3章线性表的推广
线性表的推广。数组,广义表的定义和基本操作原创 2016-03-04 16:47:12 · 1818 阅读 · 0 评论 -
第2章第3节练习题3 串的模式匹配(BM)
设有主串S和子串T,子串T的定位就是要在主串S中找到一个与子串T相等的子串。原创 2016-02-29 13:55:17 · 723 阅读 · 0 评论 -
第2章第3节练习题2 串的模式匹配(KMP)
设有主串S和子串T,子串T的定位就是要在主串S中找到一个与子串T相等的子串。原创 2016-01-23 22:49:54 · 5258 阅读 · 0 评论 -
第2章第1节练习题1 判断栈的操作次序是否合法
假设I和O分别表示入栈和出栈操作。栈的初状和终态均为空,入栈和出栈的操作序列可表示仅由I和O组成的序列,可以操作的序列称为合法序列,否则称为非法序列。试写一个算法完成对于输入序列的合法性的判断。原创 2016-01-14 17:27:36 · 4942 阅读 · 2 评论 -
第2章第1节 栈
简单介绍了栈的三种不同表现形式——顺序栈;共享栈;链栈 的概念以及基本操作...原创 2016-01-14 16:16:23 · 1036 阅读 · 0 评论 -
第1章线性表
线性表的定义,特点,分类,基本操作等...原创 2016-01-05 12:31:20 · 1102 阅读 · 3 评论 -
第1章第3节 线性表的比较
线性表的总结,简单的比较了顺序表和单链表的基本特点,以及现实生活中的选择原则...原创 2016-01-14 10:06:19 · 1260 阅读 · 0 评论 -
第1章第1节练习题8 顺序表循环移位
将数组(a_1,a_2,a_3,...,a_m,b_1,b_2,b_3,...,b_n)变为(b_1,b_2,b_3,...,b_n,a_1,a_2,a_3,...,a_m)原创 2016-01-07 14:09:23 · 2225 阅读 · 0 评论 -
第1章第2节练习题19 判断循环双链表对称
设计一算法用于判断带头结点的循环双链表是否对称原创 2016-01-13 15:28:25 · 2950 阅读 · 1 评论 -
第1章第2节练习题20 连接两个循环单链表
有两个循环单链表,链表头指针分别为h1和h2,编写一个函数将链表h2连接到链表h1之后,要求链表后的链表仍保持循环链表的形式原创 2016-01-13 15:43:12 · 1790 阅读 · 0 评论 -
第1章第2节练习题21 输出并删除最小值结点
设有一个带头结点的循环单链表,其结点值均为正整数。设计一个算法,反复找出单链表中结点值的最小的结点并输出,然后将该结点从中删除,直到单链表空为止,最后删除头结点原创 2016-01-13 15:52:49 · 1024 阅读 · 0 评论 -
第1章第2节练习题22 按结点访问频度排序
设头指针为L的带有表头结点的非循环双向链表,在链表被启用前,其值均初始化为零。每当在连表中进行一次Locate(L,x)运算时,令元素值为x的结点中freq域的值增1,并使此链表中结点保持按访问频度非递增的顺序排列,同时最近访问的结点排在频度相同的结点的前面,以便使频繁访问的结点总是靠近表头。原创 2016-01-13 16:05:31 · 1921 阅读 · 0 评论 -
第1章第2节练习题18 求两个单链表的交集
已知两个链表A和B分别表示两个集合,其元素递增排列。编写函数,求A与B的交集,并存放于A链表中原创 2016-01-13 15:03:25 · 3823 阅读 · 8 评论 -
第2章第2节练习题3 使用队列模拟渡口管理
汽车轮渡口,过江渡船每次能载10辆车过江。过江车分为客车和货车类,上渡船有如下规定:1).同类车先到先上船; 2).客车先于货车上渡船,其每上4辆客车,才允许放上一辆货车;3).若等待客车不足4辆,则以货车代替; 4).若无货车等待,允许客车都上船。试设计一个算法模拟渡口管理。原创 2016-01-16 15:10:16 · 4159 阅读 · 0 评论 -
第3章第1节练习题2 回形矩阵
打印回型数组...原创 2016-04-27 21:48:33 · 3681 阅读 · 2 评论 -
第4章树与森林
树与森林的基本概念...原创 2016-05-08 21:06:07 · 1042 阅读 · 1 评论 -
第4章第1节练习题14 满二叉树已知先序序列求解后序序列
设有一颗满二叉树(所有节点值均不同),已知其先序序列pre,设计一个算法求其后序序列post原创 2016-08-25 11:50:03 · 4078 阅读 · 5 评论 -
第4章第1节练习题13 根据先序序列和中序序列建立二叉树
假设一颗二叉树中各节点的值互不相同,其先序遍历序列和中序遍历序列分别存于两个一维数组A[⋯]和B[⋯]中,试编写算法建立该二叉树的二叉链表原创 2016-08-25 10:16:52 · 2190 阅读 · 0 评论 -
第4章第1节练习题12 删除以指定节点为根节点的所有子树
已知二叉树以二叉链表存储,编写算法完成对于树中每一个元素值为x的节点,删去以它为根的子树,并释放相应空间原创 2016-08-24 10:33:22 · 5324 阅读 · 2 评论 -
第4章第1节练习题11 查找最近公共祖先节点
假设指针p和指针q分别指向二叉树中任意两个节点的指针,试编写算法找到p和q的最近公共祖先节点r原创 2016-08-23 13:40:05 · 1708 阅读 · 2 评论 -
第4章第1节练习题8 打印指定节点的祖先节点
在二叉树中查找值为x的节点,试编写算法打印值为x的节点的所有祖先节点,假设值为x的节点不多于一个原创 2016-08-09 09:36:53 · 2445 阅读 · 1 评论 -
第4章第1节练习题10 判断某二叉树是否为完全二叉树
试写一算法,完成判定某二叉树是否为完全二叉树的功能原创 2016-08-19 08:07:03 · 800 阅读 · 0 评论 -
第4章第1节练习题9 反向层次遍历算法
试给出二叉树的自下而上,从右到左的层次遍历算法原创 2016-08-19 08:05:11 · 797 阅读 · 0 评论 -
第4章第1节练习题5 二叉树查找第k个结点的值
求二叉树先序遍历中第k个结点的值...原创 2016-07-02 12:24:54 · 2954 阅读 · 0 评论 -
第4章第1节练习题7 交换二叉树所有节点左右子树
试编写一算法,实现将二叉树中所有节点的左右子树进行交换...原创 2016-07-12 21:52:30 · 4192 阅读 · 0 评论 -
第4章第1节练习题4 二叉树高度和宽度统计
采用递归和非递归的方式统计二叉树的高度,并且对传值过程进行了简单分析。采用非递归方式统计二叉树的宽度,并对思想简单进行了说明。原创 2016-06-25 11:11:07 · 1162 阅读 · 0 评论 -
第4章第1节练习题6 二叉树叶子节点链接成单链表
将二叉树的叶子节点按从左到右的顺序连成一个单链表,表头指针为head。链接时用叶子节点的右指针来存放单链表指针...原创 2016-07-10 10:23:32 · 6280 阅读 · 1 评论 -
第4章第1节练习题3 二叉树特殊节点个数统计
分别采用递归与非递归的方式实现对二叉树中度为0的节点,度为1的结点,度为2的结点的个数统计,并且简单分析了递归传值的过程。原创 2016-06-18 23:38:54 · 3173 阅读 · 0 评论 -
第4章第1节练习题2 二叉树的基本操作(非递归实现)
二叉树的基本操作,使用非递归方式实现...原创 2016-05-29 13:10:36 · 2810 阅读 · 0 评论 -
第4章第1节练习题1 二叉树的基本操作(递归实现)
二叉树的基本操作,使用递归方式实现...原创 2016-05-29 11:57:49 · 2779 阅读 · 0 评论 -
第4章第1节 二叉树的基本概念
二叉树的基本定义,性质,以及存储结构...原创 2016-05-20 23:05:22 · 999 阅读 · 0 评论 -
第3章第1节练习题1 蛇形矩阵
打印蛇形数组...原创 2016-04-24 23:12:37 · 3803 阅读 · 0 评论 -
第1章第2节练习题17 使用相同值结形成新单链表
设A和B是两个单链表(带头结点),其中元素按递增有序。设计一个算法从A和B中公共元素产生单链表C,要求不破坏A,B的结点原创 2016-01-13 14:48:56 · 1174 阅读 · 0 评论 -
第1章第2节练习题16 归并并逆序单链表
假设有两个按元素值递增次序排列的线性表,均以单链表形式存储。试编写算法将这两个单链表归并为一个按元素值递减次序排列的单链表,并要求利用原来的两个单链表结点存放归并后的单链表原创 2016-01-13 14:35:20 · 1756 阅读 · 0 评论 -
第1章第2节练习题15 拆分并逆序单链表
设C={a1,b1,a2,b2,...,an,bn}为线性表,采用带头结点的hc单链表存放,设计一个就地算法,将其拆分为两个线性表,使得A={a1,a2,a3,...an}, B={bn,...,b2,b1}原创 2016-01-13 14:22:13 · 1696 阅读 · 0 评论 -
第1章第1节练习题7 顺序表的归并
将两个有序的顺序表合并成一个新的有序顺序表,由函数返回结果顺序表原创 2016-01-07 13:57:26 · 1632 阅读 · 0 评论 -
第1章第1节练习题6 删除重复值
从有序表中删除所有其值重复的元素,使表中所有的元素的值均不同。原创 2016-01-07 13:48:09 · 955 阅读 · 0 评论