数据结构
化身强盗_Bandit
这个作者很懒,什么都没留下…
展开
-
数据结构---散列表(哈希表)链地址法
散列表链地址法基本思想是将相同散列地址的元素放在同一个单链表中,即称同义词链表。例如此时我们设一个散列函数H(key)=key%n,则可以定义一个一维数组,大小为n,数组元素对应关键字模n所得的数字。如下图:n为13,各关键字模13后插入对应值的表中。代码部分存储结构:typedef struct hashnode{ int data; struct hashnode* next;}hashnode,*hashbit;data存元素值,next指向冲突元素地址。相关函数:原创 2020-12-22 10:07:24 · 4920 阅读 · 0 评论 -
数据结构----二叉树的先序线索化(不带头)和中序线索化(带头和不带头)
存储结构:typedef struct tree{ char data; struct tree *right,*left; int ltag,rtag;}Binode,*Bitree;Bitree pre=NULL;ltag=0,left指向左孩子;ltag=1,left指向前驱rtag=0,right指向右孩子;rtag=1,right指向后继中序线索化:带头比不带头多一个头结点头结点:ltag=0, lchild指向根结点rtag=1, rchild指原创 2020-12-14 16:47:03 · 1596 阅读 · 0 评论 -
数据结构课程设计----停车场管理系统(栈和队列)
题目:设停车场(如下图1所示)内只有一个可停放几量汽车的狭长通道,且只有一个大门可供汽车进出。汽车在停车场内按车辆到达时的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在车场的最北端),若车场内已经停满几量汽车,则后来的汽车只能在门外的便道上等候,一旦停车场内有车开走,则排在便道上的第一辆汽车即可开入;当停车场内某车辆要离开时,由于停车场是狭长的通道,在它之后开入车场的车辆必须先退出车场为它让路,待该车辆开出大门外后,为它让路的车辆再按原次序进入车场。在这里假设汽车不能从便道上开走。试设原创 2020-12-13 15:47:23 · 11482 阅读 · 4 评论 -
数据结构----报数问题(约瑟夫环单链表解法)
约瑟夫环(单向链表)问题描述:有n个小朋友围成一圈玩游戏,小朋友从1至n编号,2号小朋友坐在1号小朋友的顺时针方向,3号小朋友坐在2号小朋友的顺时针方向,……,1号小朋友坐在n号小朋友的顺时针方向。 游戏开始,从1号小朋友开始顺时针报数,接下来每个小朋友的报数是上一个小朋友报的数加1。若一个小朋友报的数为k的倍数或其末位数(即数的个位)为k,则该小朋友被淘汰出局,不再参加以后的报数。当游戏中只剩下一个小朋友时,该小朋友获胜。 例如,当n=5, k=2时: 1号小朋友报数1; 2号小朋友报数原创 2020-12-08 22:35:24 · 1443 阅读 · 2 评论 -
数据结构---最小生成树(普利姆算法和克鲁斯卡尔算法)
存储结构typedef struct{ char vexs[MAX]; //顶点表 int arcs[MAX][MAX]; //邻接矩阵 int arc,vex; //边和点数}Graph;//普利姆算法的closedgestruct{ char adjvex; int lowcost;}closedge[MAX];//克鲁斯卡尔算法的 edgetypedef struct{ char head,tail; int lowcost原创 2020-12-19 13:07:06 · 407 阅读 · 2 评论