![](https://img-blog.csdnimg.cn/20190927151117521.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构与算法
文章平均质量分 79
本专栏主要介绍一些关于数据结构/算法的问题
谛凌
偶尔写一些感悟,水平有限,希望大佬能不吝赐教,也希望文章能给大家带来一些帮助。
展开
-
【PTA-C语言】实验一-顺序结构
PTA-C语言 实验一-顺序结构组 —— 共8题原创 2023-12-17 22:42:31 · 1101 阅读 · 0 评论 -
【PTA-C语言】实验二-选择结构
PTA-C语言 实验二-选择结构 —— 共8题原创 2023-12-20 15:58:07 · 1406 阅读 · 0 评论 -
【PTA-C语言】实验三-循环结构I
PTA-C语言 实验三-循环结构I —— 共8题原创 2023-12-02 21:38:04 · 1310 阅读 · 0 评论 -
【PTA-C语言】实验四-循环结构II
PTA-C语言 实验四-循环结构II —— 共7题原创 2023-12-02 22:16:26 · 1205 阅读 · 0 评论 -
【PTA-C语言】实验五-一维数组
PTA-C语言 实验五-一维数组 —— 共6题原创 2023-12-11 23:00:00 · 1579 阅读 · 0 评论 -
【PTA-C语言】实验六-二维数组与字符数组
PTA-C语言 实验六-二维数组与字符数组 —— 共6题原创 2023-12-20 15:58:43 · 1372 阅读 · 0 评论 -
【PTA-C语言】实验七-函数与指针I
PTA-C语言 实验七-函数与指针I —— 共8题原创 2024-01-01 12:05:41 · 2373 阅读 · 0 评论 -
【PTA-C语言】实验八-函数与指针II
PTA-C语言 实验八-函数与指针II —— 共7题原创 2024-01-03 00:30:00 · 1589 阅读 · 0 评论 -
【PTA-C语言】编程练习3 - 循环结构Ⅰ
PTA-C语言 编程练习3 - 循环结构 —— 1~8 题原创 2023-12-04 00:19:18 · 1266 阅读 · 0 评论 -
【PTA-C语言】编程练习3 - 循环结构Ⅱ
PTA-C语言 编程练习3 - 循环结构 —— 9~15 题原创 2023-12-04 00:19:35 · 1650 阅读 · 0 评论 -
【PTA-C语言】编程练习4 - 数组Ⅰ
PTA-C语言 编程练习4 - 数组 —— 1~7 题原创 2023-12-06 23:40:12 · 1737 阅读 · 0 评论 -
【PTA-C语言】编程练习4 - 数组Ⅱ
PTA-C语言 编程练习4 - 数组 —— 8~15 题原创 2023-12-06 23:40:15 · 1568 阅读 · 0 评论 -
【PTA-C语言】编程练习5 - 函数与指针
PTA-C语言 编程练习5 - 函数与指针 —— 共 6 题原创 2024-01-01 12:06:29 · 1333 阅读 · 0 评论 -
【PTA-C语言】编程练习6 - 结构体与共用体 - 编程题
PTA-C语言 编程练习6 - 结构体与共用体 - 编程题原创 2024-01-02 01:00:00 · 1884 阅读 · 0 评论 -
【PTA-C语言】编程练习6 - 结构体与共用体 - 函数题
PTA-C语言 编程练习6 - 结构体与共用体 - 函数题原创 2024-01-02 01:00:00 · 2012 阅读 · 0 评论 -
【实验笔记】C语言实验——降价提醒机器人
小 T 想买一个玩具很久了,但价格有些高,他打算等便宜些再买。但天天盯着购物网站很麻烦,请你帮小 T 写一个降价提醒机器人,当玩具的当前价格比他设定的价格便宜时发出提醒。原创 2023-11-23 15:24:31 · 11308 阅读 · 0 评论 -
【实验笔记】C语言实验——文本加密
其中第一行为原始英文字母,第二行为对应加密字母,其它字符不进行加密。编写一个程序,用这种密码加密文件。假定要加密的文件名为encrypt.txt及加密后的文件名为output.txt,并假定输入文件中字母全为小写字母,并且输入密也全为小写字母,从标准输入中输入密钥串,并从文件encrypt.txt中读入要加密的内容。加密后结果输出到文件output.txt中。原创 2023-11-23 15:19:34 · 11408 阅读 · 0 评论 -
【实验笔记】C语言实验——超长正整数的减法运算
输出只有一行,是长整数A减去长整数B的运算结果,从高到低依次输出各位数字。要求: 若结果为0,则只输出一个0;否则输出的结果的最高位不能为0,并且各位数字紧密输出。题目要求为超长正整数的减法运算,容易知道整型变量无法完成此操作,所以大体思路:考虑用两个字符数组储存,用两数组的ASCII码进行运算,然后判断符号,进行输出。进行两个正整数减法运算,234098 - 134098703578230056 = - 134098703577995958。编写程序实现两个超长正整数(每个最长80位数字)的减法运算。原创 2023-11-23 15:12:40 · 12061 阅读 · 0 评论 -
多项式相加(C语言版 链表版+数组版)
多项式相加【问题描述】编写一个程序用单链表存储多项式,并实现两个一元多项式A与B相加的函数。A,B刚开始是无序的,A与B之和按降序排列。例如:多项式A: 1.2X^0 2.5X^1 3.2X^3 -2.5X^5多项式B: -1.2X^0 2.5X^1 3.2X^3 2.5X^5 5.4X^10多项式A与B之和:5.4X^10 6.4X^3 5X^1【输入形式】任意两个多项式A和B【输出形式】多项式中某一项的系数与指数,系数保留一位小数【输入样例】1.2 0 2原创 2021-04-19 19:26:53 · 33056 阅读 · 20 评论 -
模式字符串查找(支持通配符‘*’)
模式字符串查找(支持通配符‘*’)【问题描述】在当前目录下的文件string.in中查找给定的字符串,并将查找到的字符串和行号输出到当前目录下的文件string.out中。要求:1)从键盘输入给定的字符串,该字符串中只包含大小写字母、数字字符、中括号字符'['和']'、'*',以及字符'^'。字符串的长度不超过20。2)字符'^'只能出现在中括号内,且只能作为中括号内的第一个字符出现。除了字符'^',中括号中至少包含一个以上的字母或数字。3)字符*不会出现在中括号内4)在给定字符串中,中括号最多原创 2021-04-13 10:32:22 · 40544 阅读 · 2 评论 -
在家谱中查找关系远近
在家谱中查找关系远近【问题描述】同姓氏中国人见面常说的一句话是“我们五百年前可能是一家”。从当前目录下的文件in.txt中读入一家谱,从标准输入读入两个人的名字(两人的名字肯定会在家谱中出现),编程查找判断这两个人相差几辈,若同辈,还要查找两个人共同的最近祖先以及与他(她)们的关系远近。假设输入的家谱中每人最多有两个孩子,例如下图是根据输入形成的一个简单家谱:通过该家谱,可以看到wangliang、wangguoping和wangguoan都有两个孩子,wangtian、wangxiang和wang原创 2021-03-29 16:32:45 · 40645 阅读 · 2 评论 -
最少布线(图)
最少布线(图)【问题描述】北航主要办公科研楼有新主楼、逸夫楼、如心楼、办公楼、图书馆、主楼、一号楼…。北航网络中心计划要给相关建筑物间铺设光缆进行网络连通,请给出用料最少的铺设方案。编写程序输入一个办公区域分布图及建筑物之间的距离,计算出用料最少的铺设方案(只有一组最优解,不用考虑多组解)。要求采用Prim或Kruskal算法实现。【输入形式】办公区域分布图的顶点(即建筑物)按照自然数(0,1,2,n-1)进行编号,从标准输入中首先输入两个正整数,分别表示线路图的顶点的数目和边的数目,然后在接下的原创 2021-03-29 16:16:49 · 40628 阅读 · 0 评论 -
计算器(表达式计算-后缀表达式实现)
计算器(表达式计算-后缀表达式实现)【问题描述】从标准输入中读入一个整数算术运算表达式,如24 / ( 1 + 2 + 36 / 6 / 2 - 2) * ( 12 / 2 / 2 )= ,计算表达式结果,并输出。要求:1、表达式运算符只有+、-、*、/,表达式末尾的=字符表示表达式输入结束,表达式中可能会出现空格;2、表达式中会出现圆括号,括号可能嵌套,不会出现错误的表达式;3、出现除号/时,以整数相除进行运算,结果仍为整数,例如:5/3结果应为1。4、要求采用逆波兰表达式来实现表达式计算。原创 2021-03-23 23:50:52 · 29440 阅读 · 5 评论 -
Huffman编码文件压缩
【问题描述】编写一程序采用Huffman编码对一个正文文件进行压缩。具体压缩方法如下:对正文文件中字符(换行字符’'除外,不统计)按出现次数(即频率)进行统计依据字符频率生成相应的Huffman树(未出现的字符不生成)依据Huffman树生成相应字符的Huffman编码依据字符Huffman编码压缩文件(即按照Huffman编码依次输出源文件字符)。说明:只对文件中出现的字符生成Huffman,注意:一定不要处理\n,即不要为其生成Huffman码。采用ASCII原创 2021-03-23 18:07:30 · 26268 阅读 · 0 评论 -
6-10 阶乘计算升级版 (20 分)(C语言版-pta)
本题要求实现一个打印非负整数阶乘的函数。目录函数接口定义裁判测试程序样例输入样例输出样例功能分析参考代码提交结果函数接口定义void Print_Factorial ( const int N );其中 N 是用户传入的参数,其值不超过1000。如果 N 是非负整数,则该函数必须在一行中打印出 N! 的值,否则打印“Invalid input”。裁判测试程序样例#include <stdio.h>void Print_Factorial ( const int N );in原创 2022-02-21 14:26:08 · 30855 阅读 · 12 评论 -
7-8 哈利·波特的考试(25 分)(C语言版)
7-8 哈利·波特的考试(25 分)(C语言版)问题描述哈利·波特要考试了,他需要你的帮助。这门课学的是用魔咒将一种动物变成另一种动物的本事。例如将猫变成老鼠的魔咒是haha,将老鼠变成鱼的魔咒是hehe等等。反方向变化的魔咒就是简单地将原来的魔咒倒过来念,例如ahah可以将老鼠变成猫。另外,如果想把猫变成鱼,可以通过念一个直接魔咒lalala,也可以将猫变老鼠、老鼠变鱼的魔咒连起来念:hahahehe。现在哈利·波特的手里有一本教材,里面列出了所有的变形魔咒和能变的动物。老师允许他自己带一只动物去考原创 2021-03-23 16:57:03 · 41493 阅读 · 1 评论 -
7-10 公路村村通 (30 分)(C语言)
7-10 公路村村通 (30 分)***(写在前面:Kruskal算法不够完善,跪求大佬指点怎么修改,拜托拜托)***????????????问题描述现有村落间道路的统计数据表中,列出了有可能建设成标准公路的若干条道路的成本,求使每个村落都有公路连通所需要的最低成本。输入格式:输入数据包括城镇数目正整数N(≤1000)和候选道路数目M(≤3N);随后的M行对应M条道路,每行给出3个正整数,分别是该条道路直接连通的两个城镇的编号以及该道路改建的预算成本。为简单起见,城镇从1到N编号。输出格式:输原创 2021-03-25 17:56:20 · 42105 阅读 · 0 评论 -
7-15 QQ帐户的申请与登陆 (25 分)(Python版)
实现QQ新帐户申请和老帐户登陆的简化版功能。最大挑战是:据说现在的QQ号码已经有10位数了。输入格式:输入首先给出一个正整数N(≤105),随后给出N行指令。每行指令的格式为:“命令符(空格)QQ号码(空格)密码”。其中命令符为“N”(代表New)时表示要新申请一个QQ号,后面是新帐户的号码和密码;命令符为“L”(代表Login)时表示是老帐户登陆,后面是登陆信息。QQ号码为一个不超过10位、但大于1000(据说QQ老总的号码是1001)的整数。密码为不小于6位、不超过16位、且不包含空格的字符串。原创 2021-04-12 00:27:47 · 40184 阅读 · 0 评论 -
7-17 汉诺塔的非递归实现 (25 分)(C语言版)
7-17 汉诺塔的非递归实现 (25 分)问题描述:借助堆栈以非递归(循环)方式求解汉诺塔的问题(n, a, b, c),即将N个盘子从起始柱(标记为“a”)通过借助柱(标记为“b”)移动到目标柱(标记为“c”),并保证每个移动符合汉诺塔问题的要求。输入格式:输入为一个正整数N,即起始柱上的盘数。输出格式:每个操作(移动)占一行,按柱1 -> 柱2的格式输出。输入样例:3输出样例:a -> ca -> bc -> ba -> cb -> a原创 2021-04-13 10:11:42 · 11724 阅读 · 0 评论 -
7-18 银行业务队列简单模拟 (25 分)
7-18 银行业务队列简单模拟 (25 分)(Python版)问题描述设某银行有A、B两个业务窗口,且处理业务的速度不一样,其中A窗口处理速度是B窗口的2倍 —— 即当A窗口每处理完2个顾客时,B窗口处理完1个顾客。给定到达银行的顾客序列,请按业务完成的顺序输出顾客序列。假定不考虑顾客先后到达的时间间隔,并且当不同窗口同时处理完2个顾客时,A窗口顾客优先输出。输入格式输入为一行正整数,其中第1个数字N(≤1000)为顾客总数,后面跟着N位顾客的编号。编号为奇数的顾客需要到A窗口办理业务,为偶数的顾客原创 2021-04-14 08:55:12 · 40301 阅读 · 2 评论 -
7-24 树种统计 (25 分) (Python版)
7-24 树种统计 (25 分)问题描述随着卫星成像技术的应用,自然资源研究机构可以识别每一棵树的种类。请编写程序帮助研究人员统计每种树的数量,计算每种树占总数的百分比。输入格式:输入首先给出正整数N(≤105 ),随后N行,每行给出卫星观测到的一棵树的种类名称。种类名称由不超过30个英文字母和空格组成(大小写不区分)。输出格式:按字典序递增输出各种树的种类名称及其所占总数的百分比,其间以空格分隔,保留小数点后4位。输入样例:29Red AlderAshAspenBasswood原创 2021-05-12 13:13:47 · 40259 阅读 · 0 评论 -
905. 按奇偶排序数组(力扣 - Python)
力扣-按照奇偶对数组进行排序,使得所有奇数都在偶数后面原创 2023-04-13 10:15:18 · 10852 阅读 · 1 评论