随笔分类 -  考研数据结构

考研党。力争把书上的代码都跑一遍。且供复习使用。 参考资料(王道,天勤,严蔚敏教材)
考研数据结构-二叉树
摘要:本篇不想写什么了,后续想到什么再更上吧。 注:本代码二叉树的构建是按照二叉排序树来构建的。后续的测试等都用到此二叉树。 代码大部分来源于《数据结构考研复习指导》,即王道单科。 层次遍历: 求某一层的结点个数,树的高度,每一层结点个数,树的最大宽度 中序遍历: 判断是否二叉排序树 后序遍历: 判断是否 阅读全文
posted @ 2018-07-30 22:00 TinyRick 阅读(832) 评论(0) 推荐(0)
考研数据结构-单链表(综合应用2)
摘要:本节题目来自王道单科37页。说不定哪天就放弃了在电脑上敲代码了,好费时啊啊啊啊。 6、有一个带头结点的单链表L,设计一个算法使其递增有序。 分析:排序问题。如果没有说不能用辅助数组的话,可以把它复制进数组,快排后再尾插法插入链表中。 这里我们直接在链表中用直接插入排序,即先把前面的一个元素先看作有序 阅读全文
posted @ 2018-06-05 14:39 TinyRick 阅读(585) 评论(0) 推荐(0)
考研数据结构-单链表(综合应用1)
摘要:本节题目来自王道单科37页。说不定哪天就放弃了在电脑上敲代码了,好费时啊啊啊啊。 1、设计一个递归算法,删除不带头结点的单链表L中所有值为x的结点 终止条件:F(L,x)不做任何事情; 若L为空表 递归主体:F(L,x)删除*L结点;并递归下一层F(L->next,x) 若L->data==x 递归 阅读全文
posted @ 2018-06-03 22:48 TinyRick 阅读(1225) 评论(0) 推荐(0)
考研数据结构-单链表(基本操作)
摘要:这次和以往不同,我们先放出全部代码,之后再慢慢分析。 阅读全文
posted @ 2018-06-03 12:34 TinyRick 阅读(836) 评论(0) 推荐(0)
考研数据结构-顺序表(综合应用4)
摘要:本节代码主要来自王道单科18页的综合应用题。 八、已知在一维数组A[m+n]中依次存放着两个线性表(a1,a2,a3,....am)和(b1,b2,b3,...bn)。试编写一个函数,将数组中 两个顺序表的位置互换,即将(b1,b2,b3,...bn)放在(a1,a2,a3,....am)前面。 要 阅读全文
posted @ 2018-06-02 19:55 TinyRick 阅读(411) 评论(0) 推荐(0)
考研数据结构-顺序表(综合应用3)-合并顺序表
摘要:本节代码主要来自王道单科18页的综合应用题。 七、将两个有序顺序表合并成一个新的有序顺序表,并由函数返回结果顺序表 易忘点:合并以前需要先判断一下是否大于C的最大长度。 核心代码: 全部代码: 阅读全文
posted @ 2018-06-02 18:51 TinyRick 阅读(661) 评论(0) 推荐(0)
考研数据结构-顺序表(综合应用2)
摘要:本节代码主要来自王道单科18页的综合应用题。 四、从有序顺序表中删除其值在给定值s与t之间(要求s<t)的所有元素。如果s与t不合理或者顺序表为空则显示出错信息并退出运行 找到第一个比s大的元素的位置。(和下面那道题的区别就是是否有序) 核心代码: 也可以不用count统计个数,不用新定义k来遍历。 阅读全文
posted @ 2018-06-02 16:20 TinyRick 阅读(554) 评论(0) 推荐(0)
考研数据结构-顺序表(综合应用1)
摘要:本节代码主要来自王道单科18页的综合应用题。 二、18页第2题。设计一个高效的算法,将顺序表的所有元素逆置,要求算法的空间复杂度为O(1) 核心代码: 可以有两种方式: 第一种:定义两个循环指针i,j,其中i向后遍历,j向前遍历,这种更好记忆。 第二种:j没有定义出来,用i和L.length(即L. 阅读全文
posted @ 2018-06-02 13:58 TinyRick 阅读(870) 评论(0) 推荐(0)
考研数据结构-顺序表(基本操作)
摘要:1、本代码实现与王道和严蔚敏老师的教材基本保持一致。此代码主要用于考研用,为简化代码,顺序表并没有像严蔚敏老师的教材上那样使用动态分配。 2、注意本代码中元素的位置i=(元素的下标+1)。即线性表中元素的位置是从1开始的,而数组中元素的下标是从0开始的。 所以插入位置的范围是(1=<i<=L.len 阅读全文
posted @ 2018-06-02 11:03 TinyRick 阅读(1254) 评论(0) 推荐(0)