数据结构
有理想的懒羊羊
这个作者很懒,什么都没留下…
展开
-
贪心算法解决TSP问题
利用贪心问题解决TSP问题整体思路用的最近点策略,也就是说第一次以原点为起点,对其他点挨个遍历,找到最短的边对应的终点就是我们找的点,也是下一回遍历的起点。(当然,每次得到的终点以及最开始的原点,只能使用一次)#include<cstdio>#include<stdlib.h>constexpr int max_length = 10; //编译时就能确定的常量struct stack { //构造栈 int* pre, * ord; int length;原创 2020-05-17 12:01:46 · 2269 阅读 · 0 评论 -
7-2 二叉搜索树的插入序列
7-2 二叉搜索树的插入序列二叉搜索树定义为:左子树仅包含小于根结点的元素;右子树仅包含大于根结点的元素;左右子树均为二叉搜索树。一棵二叉搜索树可以有不同的插入顺序。例如,对于如下的二叉搜索树插入序列可以是 3 2 1 4 6 5, 也可以是 3 2 4 1 6 5 但不可以是 3 2 4 5 6 1。下面给出一棵二叉搜索树的先序遍历序列,请编写程序求出该树的插入序列个数。考虑到总...原创 2019-12-08 14:56:41 · 2051 阅读 · 2 评论 -
7-1 六度空间
还是老规矩,咱们先上题目六度空间”理论又称作“六度分隔(Six Degrees of Separation)”理论。这个理论可以通俗地阐述为:“你和任何一个陌生人之间所间隔的人不会超过六个,也就是说,最多通过五个人你就能够认识任何一个陌生人。”如图1所示。图1 六度空间示意图“六度空间”理论虽然得到广泛的认同,并且正在得到越来越多的应用。但是数十年来,试图验证这个理论始终是许多社会学家努力...原创 2019-12-01 20:25:29 · 1133 阅读 · 0 评论 -
7-1 哈夫曼编码
同样首先先上题目描述给定一段文字,如果我们统计出字母出现的频率,是可以根据哈夫曼算法给出一套编码,使得用此编码压缩原文可以得到最短的编码总长。然而哈夫曼编码并不是唯一的。例如对字符串"aaaxuaxz",容易得到字母 ‘a’、‘x’、‘u’、‘z’ 的出现频率对应为 4、2、1、1。我们可以设计编码 {‘a’=0, ‘x’=10, ‘u’=110, ‘z’=111},也可以用另一套 {‘a’=1...原创 2019-11-30 21:46:30 · 4762 阅读 · 3 评论 -
7-2 银行排队问题之单队列多窗口服务
假设银行有K个窗口提供服务,窗口前设一条黄线,所有顾客按到达时间在黄线后排成一条长龙。当有窗口空闲时,下一位顾客即去该窗口处理事务。当有多个窗口可选择时,假设顾客总是选择编号最小的窗口。本题要求输出前来等待服务的N位顾客的平均等待时间、最长等待时间、最后完成时间,并且统计每个窗口服务了多少名顾客。输入格式:输入第1行给出正整数N(≤1000),为顾客总人数;随后N行,每行给出一位顾客的到达时...原创 2019-11-20 11:25:48 · 522 阅读 · 0 评论 -
求树的宽度
5-2下列代码的功能是计算给定二叉树T的宽度。二叉树的宽度是指各层结点数的最大值。函数Queue_rear和Queue_front分别返回当前队列Q中队尾和队首元素的位置。typedef struct TreeNode *BinTree;struct TreeNode{int Key;BinTree Left;BinTree Right;};int Width( BinTre...原创 2019-11-02 17:24:48 · 1558 阅读 · 0 评论 -
7-1 列车厢调度
7-1 列车厢调度1 ====== <–移动方向/3 =====2 ====== -->移动方向大家或许在某些数据结构教材上见到过“列车厢调度问题”(当然没见过也不要紧)。今天,我们就来实际操作一下列车厢的调度。对照上方的ASCII字符图,问题描述如下:有三条平行的列车轨道(1、2、3)以及1-3和2-3两段连接轨道。现有一列车厢停在1号轨道上,请利用两条连接...原创 2019-10-18 16:51:05 · 2004 阅读 · 0 评论 -
7-2 符号配对
7-2 符号配对 (20 分)请编写程序检查C语言源程序中下列符号是否配对:/与/、(与)、[与]、{与}。输入格式:输入为一个C语言源程序。当读到某一行中只有一个句点.和一个回车的时候,标志着输入结束。程序中需要检查配对的符号不超过100个。输出格式:首先,如果所有符号配对正确,则在第一行中输出YES,否则输出NO。然后在第二行中指出第一个不配对的符号:如果缺少左符号,则输出?-右符号...原创 2019-10-02 18:01:39 · 2360 阅读 · 0 评论 -
数据结构测试--表达式转换(中缀转化为后缀)
7-1 表达式转换 (25 分)算术表达式有前缀表示法、中缀表示法和后缀表示法等形式。日常使用的算术表达式是采用中缀表示法,即二元运算符位于两个运算数中间。请设计程序将中缀表达式转换为后缀表达式。输入格式:输入在一行中给出不含空格的中缀表达式,可包含+、-、*、\以及左右括号(),表达式不超过20个字符。输出格式:在一行中输出转换后的后缀表达式,要求不同对象(运算数、运算符号)之间以空格...原创 2019-10-02 15:14:15 · 1190 阅读 · 0 评论