# ds101-pta **Repository Path**: yswift/ds101-pta ## Basic Information - **Project Name**: ds101-pta - **Description**: https://pintia.cn “101计划”核心课程实践教材《数据结构实验指导 - C语言版》题目集 解答 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-02-13 - **Last Updated**: 2025-03-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # ds101-pta #### 介绍 https://pintia.cn “101计划”核心课程实践教材《数据结构实验指导 - C语言版》题目集 解答 开始时没好好看提示,还做了部分练习和算法,后来发现已提供源码,就没再做。 代码主要使用c++编写,c缺的东西太多。 - .c 结尾的c代码,函数题 - .cpp 结尾的c++代码,编程题 ## 目录结构 - base 解答习题过程中积累的各数据结构的C++语言实现 - lx 练习代码 - sf 算法代码 - sy 实验代码 ## 实验 - [实验1-1 有序数组的插入.c]() - [实验1-2 爆气球.cpp]() - [实验2-1 求链式线性表的倒数第 m 项.c]() - [实验2-2 一元多项式的乘法运算.cpp]() - [实验2-3 线性表元素的区间删除.c]() - [实验2-4 单链表分段逆转.c]() - [实验2-5 约瑟夫问题.c]() - [实验2-6 判断两个广义表是否相等.c]() - [实验2-7 稀疏矩阵的链式结构构建.c]() - [实验3-1 在一个数组中实现两个栈.c]() - [实验3-2 出栈序列的合法性.cpp]() - [实验3-3 简单计算器.cpp]() - [实验3-4 取行李.cpp]() - [实验3-5 双端队列.c]() - [实验3-6 滑动窗口的极值.cpp]() - [实验4-1 吃火锅.cpp]() - [实验4-2 猜近似数字.cpp]() - [实验4-3 出院.cpp]() - [实验5-1 树的同构.cpp]() - [实验5-2 树的宽度.c]() 未通过测试数:2 - [实验5-3 二叉树直径.c]() - [实验5-4 根据后序和中序遍历输出前序遍历.cpp]() - [实验5-5 顺序存储的二叉树的最近的公共祖先问题.cpp]() - [实验5-6 修理牧场.cpp]() - [实验5-7 家谱处理.cpp]() - [实验5-8 我爱背单词.cpp]() - [实验6-1 是不是堆.cpp]() - [实验6-2 关于堆的判断.cpp]() - [实验6-3 Windows消息队列.cpp]() - [实验6-4 D 度完全树.cpp]() - [实验6-5 对顶堆维护中位数.c]() - [实验7-1 汉密尔顿回路.cpp]() - [实验7-2 列出连通集.cpp]() - [实验7-3 诈骗电话检测.cpp]() - [实验7-4 是否有回路.c]() - [实验7-5 社交网络图中结点的“重要性”计算.cpp]() - [实验8-1 城市间紧急救援.cpp]() 未通过测试数:2 - [实验8-2 最短路的交点.cpp]() - [实验8-3 打怪升级.cpp]() - [实验8-4 最小生成树的唯一性.cpp]() - [实验8-5 拆积木.cpp]() - [实验8-6 爱之匹配.cpp]() - [实验9-1 部落.cpp]() - [实验9-2 两个序列的故事.cpp]() - [实验10-1 分类排序.c]() - [实验10-2 德才论.cpp]() - [实验10-3 插入排序还是堆排序.cpp]() - [实验10-4 统计工龄.cpp]() - [实验10-5 清点代码库.cpp]() - [实验11-1 集合相似度.cpp]() - [实验11-2 查找树判断.cpp]() - [实验11-3、实验12-1 树种统计.cpp]() - [实验11-4 笛卡尔树.cpp]() - [实验11-5 新浪微博热门话题.cpp]() 未通过测试数:2 - [实验12-2 染成红黑树.cpp]() 未完成 - [实验12-3 逆序对.cpp]() - [实验13-1 文件排序.cpp]() 未完成 - [实验14-1 3阶B+树.cpp]() 未通过测试数:1 - [实验14-2 迷你搜索引擎.cpp]() 未完成 - [实验15-1~2 0-1背包问题.c]() - [实验15-3 拼题A打卡奖励.cpp]() - [实验15-4 有多少红黑树.cpp]() 未完成 - [实验15-5 代金券.cpp]() ## 练习 - [练习1-1 二分查找.c]() - [练习1-2 两枚硬币.cpp]() - [练习2-1 带空头结点的单链表操作.c]() - [练习2-2 线性表循环右移.cpp]() - [练习2-3 一元多项式求导.cpp]() - [练习2-4 最长连续递增子序列.cpp]() - [练习3-1 仅有头指针的队列.c]() - [练习3-2 栈操作的合法性.cpp]() - [练习3-3 用两个栈实现队列.cpp]() - [练习3-4 符号配对.cpp]() - [练习5-1 顺序存储的二叉树的遍历.c]() - [练习5-4 转换树的表示法.c]() - [练习7-2 判断两点是否连通.c]() - [练习7-3 判断广度优先遍历序列.c]() - [练习10-2 正负数分类.c]() - [练习11-2 是否二叉查找树.c]() - [练习14-1 B+树的查找.c]() - [练习15-1 分书问题.c]() - [练习15-2 n皇后问题-2.c]() - [练习15-2 n皇后问题.c]() - [练习15-3 旅行商问题.c]() - [练习15-4 最长公共子序列.c]() - [练习15-5 带权的活动安排问题.c]() - [练习15-6 教室安排问题.c]() ## 算法 - [算法0-0 求两个非负整数的最大公约数.cpp]() - [算法1-1~2 求数组与整数乘积的最大值.cpp]() - [算法1-3~4 将数组中元素反转存放.cpp]() - [算法1-5 计算1~n平方的和加上1~n的和.cpp]() - [算法1-6 计算1~n与1~m每一项相互乘积的和.cpp]() - [算法1-7~9 连续子序列最大和.cpp]() - [算法1-10~11 输出 1 ~ n.cpp]() - [算法2-1 在顺序表 list 中查找元素 x.cpp]() - [算法2-2 在顺序表 list 的第 i 个位置上插入元素 x.cpp]() - [算法2-3 从顺序表 list 中删除第 i 个元素.cpp]() - [算法2-4 求单链表list中的元素个数,即表长.cpp]() - [算法2-5 返回单链表 list 中第 i 个元素值.cpp]() - [算法2-6 在单链表 list 中查找元素 x 所在结点.cpp]() - [算法2-7 在单链表 list 的第 i 个位置上插入元素 x.cpp]() - [算法2-8 从单链表 list 中删除第 i 个元素.cpp]() - [算法2-9 一元多项式加法运算.cpp]() - [算法2-10 大整数相加运算.cpp]() - [算法2-11 大整数相乘运算.cpp]() - [算法3-14 阶乘的递归实现.cpp]() - [算法3-15 车厢重排.cpp]() - [算法3-1~3 顺序栈的3个操作.cpp]() - [算法3-4~6 链式栈的3个操作.cpp]() - [算法3-7~9 顺序队列的3个操作.cpp]() - [算法3-10~12 链式队列的3个操作.cpp]() - [算法3-13 后缀表达式求值.cpp]() - [算法4-1 字符串插入操作.cpp]() - [算法4-2&7 字符串删除操作.cpp]() - [算法4-3&8 字符串截取子串操作.cpp]() - [算法4-4 字符串连接操作.cpp]() - [算法4-5&10 字符串比较操作.cpp]() - [算法4-6 字符串插入操作(不限长).cpp]() - [算法4-9 字符串连接操作(不限长).cpp]()