数据结构习题

前言:以下为数据结构慕课中配套的习题,强力建议学完后进行练习,然后融会贯通

原博指路:MOOC浙大数据结构课后题记录——PTA数据结构题目集(全)

为了记录学习数据结构时做的题集,若代码有疏漏欢迎指出! 也相当于是一个数据结构的总结了~

ps:因为已经学过c++了所以都用c++写了,但也有很多c语言的东西。 MOOC传送门

第一周——最大子列和算法、二分查找

代码及其思路指路博客:PTA数据结构题目集 第一周——最大子列和算法、二分查找

01-复杂度1 最大子列和问题 (20分)

01-复杂度2 Maximum Subsequence Sum (25分)

01-复杂度3 二分查找 (20分)

第二周——线性结构

学习笔记指路博客 线性表堆栈 课后习题代码及其思路指路博客:PTA数据结构题目集 第二周——线性结构

02-线性结构1 两个有序链表序列的合并 (15分)

02-线性结构2 一元多项式的乘法与加法运算 (20分)

02-线性结构3 Reversing Linked List (25分)

02-线性结构4 Pop Sequence (25分)

第三周——栽树(二叉树等)

学习笔记指路博客 二叉树队列 课后习题代码及其思路指路博客:PTA数据结构题目集 第三周——栽树(二叉树等)

03-树1 树的同构 (25分)

03-树2 List Leaves (25分)

03-树3 Tree Traversals Again (25分)

第四周——二叉搜索树&二叉平衡树

学习笔记指路博客 二叉搜索树与平衡二叉树 课后习题代码及其思路指路博客:PTA数据结构题目集 第四周——二叉搜索树&二叉平衡树

04-树4 是否同一棵二叉搜索树 (25分)

04-树5 Root of AVL Tree (25分)

04-树6 Complete Binary Search Tree (30分)

04-树7 二叉搜索树的操作集 (30分)

第五周——堆&哈夫曼树&并查集

学习笔记指路博客 堆与哈夫曼树与并查集 课后习题代码及其思路指路博客:PTA数据结构题目集 第五周——堆&哈夫曼树&并查集

05-树7 堆中的路径 (25分)

05-树8 File Transfer (25分)

05-树9 Huffman Codes (30分)

第六周——图(上)

学习笔记指路博客 课后习题代码及其思路指路博客:PTA数据结构题目集 第六周——图(上) 涉及知识有图的基本表示与遍历方法(BFS、DFS)

06-图1 列出连通集 (25分)

06-图2 Saving James Bond - Easy Version (25分)

06-图3 六度空间 (30分)

第七周——图(中)

学习笔记指路博客 图论 课后习题代码及其思路指路博客:PTA数据结构题目集 第七周——图(中) 涉及知识有图的单源最短路算法(Floyed算法、Dijkstra算法)

07-图4 哈利·波特的考试 (25分)

07-图5 Saving James Bond - Hard Version (30分)

07-图6 旅游规划 (25分)

第八周——图(下)

学习笔记指路博客 解决最小生成树问题(Kruskal算法&Prim算法)数据结构学习笔记<8> 排序 课后习题代码及其思路指路博客:PTA数据结构题目集 第八周——图(下) 涉及知识有图的最小生成树、拓扑排序求解关键路径等问题

08-图7 公路村村通 (30分)

08-图8 How Long Does It Take (25分)

08-图9 关键活动 (30分)

第九周——排序(上)

学习指路博客 数据结构学习笔记<8> 排序归并排序循环实现(存用) 课后习题代码及其思路指路博客:PTA数据结构题目集 第九周——排序(上) 涉及各种排序算法(插入排序、归并排序、堆排序等)

09-排序1 排序 (25分)

09-排序2 Insert or Merge (25分)

09-排序3 Insertion or Heap Sort (25分)

第十周——排序(下)

学习指路博客 数据结构学习笔记<8> 排序 课后习题代码及其思路指路博客:PTA数据结构题目集 第十周——排序(下) 涉及各种排序算法的应用、结构体的排序、表排序中的环判断等

10-排序4 统计工龄 (20分)

10-排序5 PAT Judge (25分)

10-排序6 Sort with Swap(0, i) (25分)

第十一周——散列查找

学习指路博客 数据结构学习笔记<9> 散列查找 课后习题代码及其思路指路博客:PTA数据结构题目集 第十一周——散列查找 涉及散列查找的应用、KMP等

11-散列1 电话聊天狂人 (25分)

11-散列2 Hashing (25分)

11-散列3 QQ帐户的申请与登陆 (25分)

Kmp 串的模式匹配 (25分)

总结

做这些题的时候,有些特意用了慕课教的数据结构的定义,有些则是用STL代替偷懒了,因为有方便的东西不用真的很心塞嗷(比如优先队列代替小顶堆大顶堆,map代替散列查找,STL的东西可好使)。 不管咋样咕咕咕到了最后一刻总算是做完了,这个超 ~ 漫长的暑假算没白过23333,寒假再接再厉加把劲准备学java~完结撒花【bushi】

最后更新于