PTA数据结构(C++)
文章平均质量分 62
中国大学MOOC-陈越、何钦铭-数据结构-2021春
欲摘星辰
新手
展开
-
06-图3 六度空间 (30 分)(C++)
06-图3 六度空间 (30 分)(C++)题目六度空间”理论又称作“六度分隔(Six Degrees of Separation)”理论。这个理论可以通俗地阐述为:“你和任何一个陌生人之间所间隔的人不会超过六个,也就是说,最多通过五个人你就能够认识任何一个陌生人。”如图1所示。图1图1 六度空间示意图“六度空间”理论虽然得到广泛的认同,并且正在得到越来越多的应用。但是数十年来,试图验证这个理论始终是许多社会学家努力追求的目标。然而由于历史的原因,这样的研究具有太大的局限性和困难。随着当代人的联络原创 2021-04-13 19:48:18 · 239 阅读 · 0 评论 -
06-图1 列出连通集 (25 分)(C++)
06-图1 列出连通集 (25 分)(C++)题目给定一个有N个顶点和E条边的无向图,请用DFS和BFS分别列出其所有的连通集。假设顶点从0到N−1编号。进行搜索时,假设我们总是从编号最小的顶点出发,按编号递增的顺序访问邻接点。输入格式:输入第1行给出2个整数N(0<N≤10)和E,分别是图的顶点数和边数。随后E行,每行给出一条边的两个端点。每行中的数字之间用1空格分隔。输出格式:按照"{ v1 v2 v3…vk }"的格式,每行输出一个连通集。先输出DFS的结果,再输出BFS的结果。原创 2021-04-13 15:30:23 · 307 阅读 · 0 评论 -
05-树9 Huffman Codes (30 分)(C++)
05-树9 Huffman Codes (30 分)(C++)#题目In 1953, David A. Huffman published his paper “A Method for the Construction of Minimum-Redundancy Codes”, and hence printed his name in the history of computer science. As a professor who gives the final exam problem on原创 2021-04-12 20:37:48 · 231 阅读 · 0 评论 -
05-树8 File Transfer (25 分) C++实现
05-树8 File Transfer (25 分) C++实现#题目We have a network of computers and a list of bi-directional connections. Each of these connections allows a file transfer from one computer to another. Is it possible to send a file from any computer on the network to a原创 2021-04-11 23:17:07 · 105 阅读 · 0 评论 -
05-树7 堆中的路径 (25 分) C++实现
05-树7 堆中的路径 (25 分) C++实现#题目将一系列给定数字插入一个初始为空的小顶堆H[]。随后对任意给定的下标i,打印从H[i]到根结点的路径。输入格式:每组测试第1行包含2个正整数N和M(≤1000),分别是插入元素的个数、以及需要打印的路径条数。下一行给出区间[-10000, 10000]内的N个要被插入一个初始为空的小顶堆的整数。最后一行给出M个下标。输出格式:对输入中给出的每个下标i,在一行中输出从H[i]到根结点的路径上的数据。数字间以1个空格分隔,行末不得有多余空格。输原创 2021-04-11 21:25:30 · 233 阅读 · 0 评论 -
04-树6 Complete Binary Search Tree (30 分)C++实现
04-树6 Complete Binary Search Tree (30 分)C++实现#题目A Binary Search Tree (BST) is recursively defined as a binary tree which has the following properties:The left subtree of a node contains only nodes with keys less than the node’s key.The right subtree of原创 2021-04-11 17:50:14 · 96 阅读 · 0 评论 -
04-树5 Root of AVL Tree (25 分)(C++)
04-树5 Root of AVL Tree (25 分)(C++)#题目An AVL tree is a self-balancing binary search tree. In an AVL tree, the heights of the two child subtrees of any node differ by at most one; if at any time they differ by more than one, rebalancing is done to restore原创 2021-04-11 16:29:20 · 155 阅读 · 0 评论 -
04-树4 是否同一棵二叉搜索树 (25 分)(C++)
04-树4 是否同一棵二叉搜索树 (25 分)(C++)#题目给定一个插入序列就可以唯一确定一棵二叉搜索树。然而,一棵给定的二叉搜索树却可以由多种不同的插入序列得到。例如分别按照序列{2, 1, 3}和{2, 3, 1}插入初始为空的二叉搜索树,都得到一样的结果。于是对于输入的各种插入序列,你需要判断它们是否能生成一样的二叉搜索树。输入格式:输入包含若干组测试数据。每组数据的第1行给出两个正整数N (≤10)和L,分别是每个序列插入元素的个数和需要检查的序列个数。第2行给出N个以空格分隔的正整数,作原创 2021-04-11 10:46:44 · 120 阅读 · 0 评论 -
树3 Tree Traversals Again(C++)
树3 Tree Traversals Again(C++)#题目An inorder binary tree traversal can be implemented in a non-recursive way with a stack. For example, suppose that when a 6-node binary tree (with the keys numbered from 1 to 6) is traversed, the stack operations are: push原创 2021-04-10 23:37:50 · 126 阅读 · 0 评论 -
树2 List Leaves (C++)
树2 List Leaves (C++)#题目Given a tree, you are supposed to list all the leaves in the order of top down, and left to right.Input Specification:Each input file contains one test case. For each case, the first line gives a positive integer N (≤10) which is原创 2021-04-10 21:40:27 · 100 阅读 · 0 评论 -
树1 树的同构 C++实现
树1 树的同构 C++实现#题目给定两棵树T1和T2。如果T1可以通过若干次左右孩子互换就变成T2,则我们称两棵树是“同构”的。例如图1给出的两棵树就是同构的,因为我们把其中一棵树的结点A、B、G的左右孩子互换后,就得到另外一棵树。而图2就不是同构的。 图1 图2现给定两棵树,请你判断它们是否是同构的。输入格式:输入给出2棵二叉树树的信息。对于每棵树,首先在一行中给出一个非负整数N (≤10),即该树的结点数(此时假设结点从0到N−1编号);随原创 2021-04-10 14:46:06 · 259 阅读 · 0 评论 -
线性结构4 Pop Sequence C++实现
线性结构4 Pop Sequence C++实现#题目Given a stack which can keep M numbers at most. Push N numbers in the order of 1, 2, 3, …, N and pop randomly. You are supposed to tell if a given sequence of numbers is a possible pop sequence of the stack. For example, if原创 2021-04-10 12:28:49 · 116 阅读 · 0 评论