![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C语言实现数据结构经典例题
用C语言实现的数据结构经典例题,通过实践深入学习数据结构。
迪迪卷
这个作者很懒,什么都没留下…
展开
-
C语言实现数据结构之哈夫曼编码
哈夫曼树就是带权路径长度最小的二叉树。构造的思路是将文件中的每一个字符构造成结点对象,然后把每一个结点当成一棵树,将所有结点当成一片森林。然后每次从所有结点中取两个最小的结点,比较小的作为左子结点,比较大的作为右子结点,它们的和作为父结点构成一颗二叉树,然后把取出的这两个结点删除,将父结点放入剩下的结点中再重复以上过程直到最后只剩下一个结点,该结点即为哈夫曼树的根结点。树的每个结点代表一个集合元素。根据给定的若干权值来构造哈夫曼树,实现对应的哈夫曼编码以及译码。原创 2024-01-22 20:03:22 · 503 阅读 · 0 评论 -
C语言实现数据结构之二叉树
建立二叉树,并实现二叉树的先序、中序、后序、层序遍历,求二叉树的宽度,统计二叉树中度为1的结点的个数,求根结点到指定结点的路径。层上的节点,接着是第三层的节点,以此类推,自上而下,自左至右逐层访问树的结点的过程就是层序遍历。,层序遍历就是从所在二叉树的根节点出发,首先访问第一层的树根节点,然后从左到右访问第。中序遍历:首先访问左子树,再访问根节点,最后访问右子树。后序遍历:首先访问左子树,再访问右子树,最后访问根节点。首先访问根节点,再访问左子树,再访问右子树。原创 2024-01-22 19:56:25 · 414 阅读 · 1 评论 -
C语言实现数据结构之文章编辑(KMP算法)
使用结构体存储文章,结构体成员包含每一行的字符串结点以及指向下一行结点的指针,采用链式存储。对于统计字符串使用KMP算法。静态存储一页文章,每行最多不超过80个字符,共N行。统计文中所出现的英文字母的个数、数字的个数、空格的个数、总字数等。原创 2024-01-22 19:52:38 · 496 阅读 · 0 评论 -
C语言实现数据结构之运动会分数统计
参加运动会有n个学校,学校编号为1……比赛分成m个男子项目,和w个女子项目……项目编号为男子1……不同的项目取前五名或前三名积分。取前五名的积分分别为:7、5、3、2、1,前三名的积分分别为:5、3、2。哪些取前五名或前三名由学生自己设定。(n原创 2024-01-22 19:48:41 · 1595 阅读 · 0 评论 -
C语言实现数据结构之八皇后求解
进入下一行,摆放下一个皇后,逐个位置摆放,若该行所有位置都被其他皇后占领,那么就回溯到上一行重新摆放上一行皇后,直至所有皇后都不冲突。那么记录一次方法然后回溯寻找其他摆放方法。上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法。请设计算法编写程序解决。从第一行开始,当某一行皇后位置不与前面所有皇后位置冲突,那么记录该行皇后位置并调用。国际西洋棋棋手马克斯。原创 2024-01-22 18:02:45 · 369 阅读 · 0 评论 -
C语言实现数据结构之迷宫求解
用结构体定义迷宫结点类型,成员分别储存横坐标、纵坐标、找到通路后的方向;用顺序栈存储路径,通路则入栈、死路则返回。使用二维数组next给结点赋值,使其抵达不同方向的下一结点。双重循环,栈空表示所有路径已经走完(count变量计算通路数量),循环四次表示各结点的四个方向都走过一遍(若遇墙则continue,若已找到下一结点则break)。输入一个任意大小的迷宫数据,用非递归的方法求出一条走出迷宫的路径,并将路径输出。栈的top储存步数。原创 2024-01-22 17:55:40 · 1189 阅读 · 0 评论 -
C语言实现数据结构之一元多项式计算
需要输入的信息有多项式的系数和指数,用来向系统动态申请内存;系数和指数用来构造每个结点,形成表。由于每次输入的多项式项数不确定,所以使用顺序表的链式存储。在此除了题目要求的加减运算,我还增加了乘法运算。设计合适的存储结构,完成一元多项式的相关运算。原创 2024-01-22 17:49:30 · 1141 阅读 · 0 评论 -
C语言实现数据结构之约瑟夫环
任务:一堆猴子都有编号,编号是1,2,3 ... n ,这群猴子(n个)按照1 ~ n的顺序围坐一圈,从第1开始数,每数到第m个,该猴子就要离开此圈,这样依次下来,直到圈中只剩下最后一只猴子,则该猴子为大王。请设计算法编写程序输出为大王的猴子的编号。分析:用循环链表作为猴子的存储结构,每一个结点代表一个猴子,链表头尾相接,从第一个结点开始数,每数m个就删除那个结点并输出结点序号(表示该猴子离开),就此循环下去直到剩下最后一个结点。循环结束并输出该结点(猴子大王)。原创 2024-01-22 17:25:23 · 458 阅读 · 0 评论