packagemainimport( "fmt")typeQueuestruct{ pBase*[6]int pFront,pRearint}funcinitQueue(q*Queue){ vararr=new([6]int) q.pBase=arr q.pFront=0 q.pRear=0}funcisEmpty(q*Queue)bool{ ifq.pFront==q.pRear{ returntrue }else{ returnfalse }}funcisFull(q*Queue)bool{ if(q.pRear+1)%6==q.pFront{ returntrue }else{ returnfalse }}funcenQueue(q*Queue,valint)bool{ ifisFull(q){ returnfalse }else{ q.pBase[q.pRear]=val q.pRear=(q.pRear+1)%6 returntrue }}funcdeQueue(q*Queue)bool{ ifisEmpty(q){ returnfalse }else{ q.pFront=(q.pFront+1)%6 returntrue }}functraverse(q*Queue){ ifisEmpty(q){ return } fori:=q.pFront;i%6!=q.pRear;i++{ fmt.Print(q.pBase[i],"") } fmt.Println()}funcmain(){ varq=new(Queue) initQueue(q) enQueue(q,1) enQueue(q,2) enQueue(q,3) enQueue(q,4) enQueue(q,5) enQueue(q,6) enQueue(q,7) traverse(q) deQueue(q) deQueue(q) traverse(q) enQueue(q,15) traverse(q)}
本文来自:CSDN博客
感谢作者:tangguangqiang
查看原文:数据结构之静态队列go言语实现
白癜风如何治白癜风早期能治愈吗