自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 收藏
  • 关注

原创 浙大数据结构慕课课后题(03-树3 Tree Traversals Again)

【代码】浙大数据结构慕课课后题(03-树3 Tree Traversals Again)

2024-09-09 22:27:55 298

原创 浙大数据结构慕课课后题(07-图6 旅游规划分数 25)

有了一张自驾旅游路线图,你会知道城市间的高速公路长度、以及该公路要收取的过路费。现在需要你写一个程序,帮助前来咨询的游客找一条出发地和目的地之间的最短路径。如果有若干条路径都是最短的,那么需要输出最便宜的一条路径。

2024-09-05 16:19:52 403

原创 浙大数据结构慕课课后题(04-树6 Complete Binary Search Tree)

思路如注释所示,可通过所有测试点。

2024-08-14 20:17:58 630

原创 浙大数据结构慕课课后题(07-图4 哈利·波特的考试)

哈利·波特要考试了,他需要你的帮助。这门课学的是用魔咒将一种动物变成另一种动物的本事。例如将猫变成老鼠的魔咒是 haha,将老鼠变成鱼的魔咒是 hehe 等等。反方向变化的魔咒就是简单地将原来的魔咒倒过来念,例如 ahah 可以将老鼠变成猫。另外,如果想把猫变成鱼,可以通过念一个直接魔咒 lalala,也可以将猫变老鼠、老鼠变鱼的魔咒连起来念:hahahehe。现在哈利·波特的手里有一本教材,里面列出了所有的变形魔咒和能变的动物。

2024-08-13 19:13:11 391

原创 浙大数据结构慕课课后题(06-图3 六度空间)

1. vector二维数组的声名格式有两种:假设数组名为sds。(1)如果我们提前知道了数组的大小可以这样定义:MAX_N=1005;(2)如果不知道数组大小,又需要全局声名就要在main函数外这样定义:然后在main函数里面这样确定数组大小:...cin>>N;//resize()函数...

2024-08-13 15:53:22 736

原创 浙大数据结构慕课课后题(06-图2 Saving James Bond - Easy Version)(拯救007)

1.用pair型数据存储一个坐标点,因为它可以包含两个元素。2.每次开始DFS搜索时,注意先看起始点是否已经被其他路径包含过,我第一次做时单纯遍历了每一个能跳到的起始点,上交时出现段错误,后来查阅资料发现这种情况可能会使DFS递归困在一个环形结构中,导致一直申请空间,从而爆栈,这是不对的。3.这个题包含了一些数学几何方面的知识,在找第一个起始点时,把起始点与湖心岛圆心的距离与D比较,其实就是圆外一点到圆周上距离的计算。(图上这种情况是可以作为起始点的)

2024-08-12 17:55:02 1321

原创 浙大数据结构慕课课后题(06-图1 列出连通集)

这题用到了很多stl函数,我也是刚学它们的性质,所以这道题很有参考价值。1.vector<int> 型数组对此题使用很方便可以直观的存储每个结点的邻接表,而且可以动态的改变大小,太牛了。2.fill函数可以直接把数组的给定下标范围统一修改成一个设定值,这题里用来初始化visited[]数组。3.sort函数默认从小到大排序,在存储每一个连通集时可以保证题目中所要求的连通性。4.“for(int v:component) ”表达式,这是一个输出容器中元素的简洁方法。把每个元素的值赋值给v进行操作。

2024-08-09 17:39:21 700

原创 浙大数据结构慕课课后题(03-树2 List Leaves)

给定一棵树,您应该按照从上到下、从左到右的顺序列出所有叶子。

2024-08-09 11:34:17 756

原创 浙大数据结构慕课课后题(02-线性结构4 Pop Sequence)

给定一个可以保持的堆栈M最多数字。推N1、2、3、...,N并随机弹出。您应该判断给定的数字序列是否是堆栈的可能的弹出序列。例如,如果M是 5 和N是 7,我们可以从堆栈中得到 1、2、3、4、5、6、7,但不能得到 3、2、1、7、5、6、4。

2024-08-08 18:36:16 298

原创 浙大数据结构慕课课后题(04-树5 Root of AVL Tree)

AVL 树是一种自平衡的二叉搜索树。在 AVL 树中,任何节点的两个子子树的高度最多相差一;如果在任何时候它们相差不止一,则进行重新平衡以恢复此属性。图 1-4 说明了旋转规则。图1图2图3图4现在给定一系列插入,您应该分辨生成的 AVL 树的根。

2024-08-07 17:56:14 634

原创 浙大数据结构慕课课后题(02-线性结构3 Reversing Linked List)

因为我本身不是专业参加竞赛选手,自己编码能力暂时有限,我本身想用陈姥姥上课方法实现此题。理解了她讲的大概思路,但是总是细节处理不当,也没有找到很清晰的题解,故而换了一种思路求解,可能实现过程更加简单一点,也能解出来题,但是对编码能力锻炼不强,点到即止吧。1. 对链表的存储,使用了结构数组的方法,这样可以直接存储并操作其地址,这样我们在进行逆转时直接交换两个节点的地址即可。2.使用result数组对链表中的元素进行一个有序的存储,这样可以在交换个别节点地址时保证链表本身的有序性。

2024-07-31 10:10:28 921

原创 浙大数据结构慕课课后题(05-树8 File Transfer)

3.使用了路径压缩的算法优化方式,把每一个节点的父节点设置为根节点,这样的话查找两个节点是否相连只需查看他们的根节点是否相同,减少算法函数执行次数。此系列为作者记录数据结构学习文章,由于能力所限,难免有细节处理不当之处,恳请读者谅解并指正。2.使用了按秩归并的连接方式,避免了极端情况下二叉树退化成一个链表大大增加时间复杂度。1.该题用数组存储一个并查集,没有用到结构体,比较节省空间和便于理解。思路如注释所示,可通过所有测试点。

2024-07-16 17:19:02 1029

原创 浙大数据结构慕课课后题(05-树7 堆中的路径)

将一系列给定数字插入一个初始为空的最小堆 h。随后对任意给定的下标 i,打印从第 i 个结点到根结点的路径。

2024-07-15 17:41:38 843

原创 浙大数据结构慕课课后题(01-复杂度2 Maximum Subsequence Sum)

这题的输出格式感觉有点奇怪,不知道是我理解问题还是翻译问题...提交后发现只有0和负数的那个测试点没过,按我的想法是应该输出第一个0的位置(就是假如说第一个0的数组下标为3,就应该输出0 3 3,意思是最大和为0,首尾位置都为3),跑了下别人的ac代码发现这种情况应该输出0 0 0(?这题用到了上一个题的在线处理方法,在此基础上记录最大子列和的首位位置,如果有相同的则输出最小的下标号,我用的方法是只在最大值发生改变的时候更新一系列的值,所以后续相等的情况可以直接忽略,以达到目的。

2024-07-12 16:39:48 1326

原创 浙大数据结构慕课课后题(04-树4 是否同一棵二叉搜索树)

给定一个插入序列就可以唯一确定一棵二叉搜索树。然而,一棵给定的二叉搜索树却可以由多种不同的插入序列得到。例如分别按照序列{2, 1, 3}和{2, 3, 1}插入初始为空的二叉搜索树,都得到一样的结果。于是对于输入的各种插入序列,你需要判断它们是否能生成一样的二叉搜索树。

2024-07-12 10:43:06 938 4

原创 浙大数据结构慕课课后题(03-树1 树的同构)

给定两棵树 T1​ 和 T2​。如果 T1​ 可以通过若干次左右孩子互换就变成 T2​,则我们称两棵树是“同构”的。例如图1给出的两棵树就是同构的,因为我们把其中一棵树的结点A、B、G的左右孩子互换后,就得到另外一棵树。而图2就不是同构的。图一图二。

2024-07-10 17:35:11 850 1

原创 浙大数据结构慕课课后习题(02-线性结构2 一元多项式的乘法与加法运算)

设计函数分别求两个一元多项式的乘积与和。

2024-07-09 19:24:48 546 1

原创 浙大数据结构课后题(01-复杂度1 最大子列和问题)

给定K个整数组成的序列{ N1​, N2​, ..., NK​ },“连续子列”被定义为{ Ni​, Ni+1​, ..., Nj​ },其中 1≤i≤j≤K。“最大子列和”则被定义为所有连续子列元素的和中最大者。例如给定序列{ -2, 11, -4, 13, -5, -2 },其连续子列{ 11, -4, 13 }有最大的和20。现要求你编写程序,计算给定整数序列的最大子列和。本题旨在测试各种不同的算法在各种数据情况下的表现。

2024-07-09 10:46:22 723 1

原创 浙大数据结构课后习题(04-树7 二叉搜索树的操作集)

本题要求实现给定二叉搜索树的5种常用操作。

2024-07-08 17:03:36 592

原创 浙大数据结构课后习题(02-线性结构1 两个有序链表序列的合并)

本题要求实现一个函数,将两个链表表示的递增整数序列合并为一个非递减的整数序列。

2024-07-08 11:29:07 279

原创 浙大数据结构慕课课后习题(01-复杂度3 二分查找)

L是用户传入的一个线性表,其中元素可以通过>、==、<进行比较,并且题目保证传入的数据是递增有序的。函数要查找X在Data中的位置,即数组下标(注意:元素从下标1开始存储)。找到则返回下标,否则返回一个特殊的失败标记NotFound。

2024-07-08 10:13:01 429

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除