- 博客(8)
- 收藏
- 关注
原创 练习4.3 堆中的路径 (25 分)
堆(Heap)是层次遍历的完全二叉树。父结点比子结点大或小。MaxHeap最大堆(大顶堆)根结点最大,MinHeap最小堆(小顶堆)根结点最小。浙大版《数据结构(第2版)》题目集https://pintia.cn/problem-sets/434/problems/6104练习4.3 堆中的路径 (25 分)将一系列给定数字插入一个初始为空的小顶堆H[]。随后对任意给定的下标i,打印从H[i]到根结点的路径。输入格式:每组测试第1行包含2个正整数N和M(≤1000),分别是插
2021-07-09 21:31:17 116 4
原创 AVL树的建立和调整 练习4.2 平衡二叉树的根 (25 分)(C语言实现)
代码主要参考了这篇博文:https://www.cnblogs.com/snzhong/p/12416429.html原文对平衡二叉树的调整讲的很清楚。AVL树的插入函数: 1.递归出口:如果是空树,新建结点。 2.根据数值大小,递归插入到左右子树。(用if把左右子树分开处理) 3.判断左右子树的高度差是否达到2,若插入左子树,左减右,反之亦然。 4.高度差达到2则需调整。插入左子树,小于左子结点,左单旋,大于左子结点,左右...
2021-07-09 18:40:38 474
原创 数据结构 习题4.3 是否二叉搜索树 (25 分)(C语言实现)
二叉搜索树的特点是在每个子树中左子树的所有结点都比根结点小,右子树的所有结点都比根节点大。中序遍历的话是递增的。下面转载了两个方法,均采用中序遍历。本题要求实现函数,判断给定二叉树是否二叉搜索树。函数接口定义:bool IsBST ( BinTree T );其中BinTree结构定义如下:typedef struct TNode *Position;typedef Position BinTree;struct TNode{ ElementType Data
2021-07-09 14:17:28 313
转载 习题3.10 汉诺塔的非递归实现 (25分)(转载)
本文转载至CSDN博主。本题考点,一个是用递归解决经典的汉诺塔问题,另一个是把递归转化成堆栈的方式,达到非递归实现。版权声明:本文为CSDN博主「王佳Jia Wong」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/weixin_45454137/article/details/106455480问题描述借助堆栈以非递归(循环)方式求解汉诺塔的问题(n, a, b, c),即将N个盘子从起始柱(标记为
2021-07-08 16:45:00 259
原创 习题3.6 一元多项式的乘法与加法运算 (20 分)(C语言实现)
浙大的数据结构课上讲过这道题,用动态数组做更简单,所以讲解了单链表的方法。写了130行,是目前为止写的最长的代码了。浙大版《数据结构(第2版)》题目集https://pintia.cn/problem-sets/434/problems/5865设计函数分别求两个一元多项式的乘积与和。输入格式:输入分2行,每行分别先给出多项式非零项的个数,再以指数递降方式输入一个多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。输出格式:输出分2行,分别以指数递
2021-07-07 20:43:52 222
原创 全排列问题的递归算法 (C语言实现)(习题2.8 输出全排列 (20 分))
这个问题很头疼。学到这里的时候,课程上并没有教全排列问题的解法。这道题相比同时期的其他题目,我觉得要难得多。看了全排列问题的一个递归算法的讲解之后,记个笔记。可能是个经典算法吧。浙大版《数据结构(第2版)》题目集https://pintia.cn/problem-sets/434/problems/5811请编写程序输出前n个正整数的全排列(n<10),并通过9个测试用例(即n从1到9)观察n逐步增大时程序的运行时间。输入格式:输入给出正整数n(<10)。输出格式:
2021-07-07 16:26:09 1188
原创 1003 我要通过! (20 分)(C语言实现)
PAT (Basic Level) Practice (中文)PAT乙级。https://pintia.cn/problem-sets/994805260223102976/problems/994805323154440192“答案正确”是自动判题系统给出的最令人欢喜的回复。本题属于 PAT 的“答案正确”大派送 —— 只要读入的字符串满足下列条件,系统就输出“答案正确”,否则输出“答案错误”。得到“答案正确”的条件是:字符串中必须仅有P、A、T这三种字符,不可以包含其它字符...
2021-06-29 18:40:31 51
原创 习题11-7 奇数值结点链表 (20 分)
PTA:浙大版《C语言程序设计(第3版)》题目集https://pintia.cn/problem-sets/12/problems/365本题要求实现两个函数,分别将读入的数据存储为单链表、将链表中奇数值的结点重新组成一个新的链表。链表结点定义如下:struct ListNode { int data; ListNode *next;};函数接口定义:struct ListNode *readlist();struct ListNode *getodd( s
2021-06-29 15:05:17 64
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人