停车场管理设计.docxVIP

  • 5
  • 0
  • 约1.13万字
  • 约 17页
  • 2021-06-22 发布于广东
  • 举报
栈和队列是两种特殊的线性表,并且被广泛地应用于各种程序设计中。通过 该程序的演示,能够在今后的学习屮更深入的了解栈和队列的特性,在解决实际 问题时灵活运用它们。 栈是后进先出的线性表,在使用时附设指针top指示栈顶元索在顺序栈中的 位置;队列是先进先出的线性表,在使用吋需附设头指针和尾指针。 在停车场管理问题中,使用顺序栈存放进入车场的车辆,链队列存放有关车 场外便道的情况,根据题目的耍求再进行岀栈,退栈,取栈顶元,链队列屮的入 队和出队,通过此程序的编写及运行,深刻理解线性表和栈的逻辑结构,存储结 构,学握线性表和栈上基本运算的实现,学会如何把学到的知识用于解决实际问 题 正文 采用类C语言定义相关的数据类型 ?定义时间结点: typcdcf struct time {int hour; int min; }Time; ?定义车辆信息结点: typcdcf struct node {char num[10]; Time reach; Time leave; }CarNode; ?定义模拟车站: typedef struct NODE {CarNode *stack[MAX+l] ;//栈的存储容量 int top; }SeqStackCar; ?定义模拟通道: typedef struct car {CarNode *data; //car 的数据域 struct car *next; //car |K扌旨针域 }QueueNode; typedef struct Node {QueueNode *head; //对头指针 QueueNode *rear; //对尾指针 }LinkQucueCar 各模块的伪码算法 ?栈的初始化: Seqstack InitStack (SeqStackCar *s) //构造一个空栈 {S.top=0; Rcturn S; } .链队列的初始化: int InitQueue(LinkQueueCar *Q) //构造一个空队列 { 1 ink *p; p二new link; p-next=NULL; Q-rear=Q-head=p; Return Q; } .车辆到达时的算法: int Arrival(SeqStackCar ^Enter, LinkQueueCar *W) {CarNode *p; //p为指向车场栈顶的指针 QueueNode *t; // t为指向便道的指针 p= (CarNode *) mal 1 oc (si zeof (CarNode));//分配存储空间 if (Enter-topMAX) {Enter-top++; Enter-stack[Enter-top] =p; //p 指针后移 Return 仃); } Else 〃车进入便道 { t= (QueueNode *)malloc(sizeof (QueueNode)) ;// 分配存储空间 t-data=p; t-next二NULL; W-rear-next=t; W-rcar=t; return(1); } } .输出停车场中的车辆编号和到达时间的算法: void Listl (SeqStackCar *S) /*列表显示车场信息*/ { int i=S. top; //出栈 cout?”停车场中的车辆编号和到达时间”〈〈end 1; While(i!=0) { cout〈〈S? ScqStEtckCorli]. ” S. ScqStackCar[i]? arrivct imeend 1; i--;} coutend 1; } (6)?输出便道中车辆编号和到达时间的算法: void List2(LinkQueueCar *W) /*列表显示便道信息*/ {QueueNode *p; p=W-head-next; //指针 p 后移 if(W-head! =W-rear) /*判断通道上是否冇车*/ cout?便道中等待车辆的号码” ?cnd 1; wh订e (p! =NULL)判断队列是否为空 { coutp-data. numend 1; p二p-〉next; } coutcnd 1; } 函数的调用关系图 调试分析本程序中: 调试屮遇到的问题及对问题的解决方法: 在函数调用时,实参和形参在位置和个数上不是一一对应的,解决的 方法是删除被调函数PRINT () H1的形参room. 在编程过程中出现括号不匹配的情况,检查是应使对应括号匹配。 车辆到达,离去时的时间复朵度均为:0(n)o本程序空间复杂度为:0(n*n)o 5?测试结果 (1).输入车牌号及车辆到达信息: 1.the car arriue2.the car leaue3.the1schedule4.outinput the nun

文档评论(0)

1亿VIP精品文档

相关文档