当前位置: 首页 > news >正文

海淀做网站哪家公司好专业建站制作

海淀做网站哪家公司好,专业建站制作,vs网站开发建表怎么肩啊,新app推广去哪里找队列-队列的顺序表示和实现和顺序栈相类似#xff0c;在利用顺序分配存储结构实现队列时#xff0c;除了用一维数组描述队列中数据元素的存储区域之外#xff0c;尚需设立两个指针front和rear分别指示“队头”和“队尾”的位置。为了在C语言中描述方便#xff0c;在此我们约…队列-队列的顺序表示和实现和顺序栈相类似在利用顺序分配存储结构实现队列时除了用一维数组描述队列中数据元素的存储区域之外尚需设立两个指针front和rear分别指示“队头”和“队尾”的位置。为了在C语言中描述方便在此我们约定初始化建空队列时令frontrear0。每当插入新的队列尾元素时“尾指针增1”每当删除队列头元素时“头指针增1”。因此在非空队列中头指针始终指向队列头元素位置队尾指针始终指向队列尾元素的下一个位置。如图所示从图中可以看到随着入队出队的进行会使整个队列整体向后移动这样就出现了循环队列操作示意图(d)中的现象(假溢出现象)队尾指针已经移到了最后,再有元素入队就会出现溢出而事实上此时队中并未真的“满员”这种现象为“假溢出”这是由于“队尾入队头出”这种受限制的操作所造成。解决假溢出的方法之一是将队列看成头尾相接的循环结构头尾指针的关系不变将其称为“循环队列”“循环队列”的示意图如下图所示因为是头尾相接的循环结构入队时的队尾指针加1操作修改为q.rear(q.rear1) % MAXSIZE;出队时的队头指针加1操作修改为q.front(q.front1) % MAXSIZE;设MAXSIZE10下图是循环队列操作示意图。如上图所示的循环队可以看出(a)中具有a5、a6、a7、a8四个元素此时front5,rear9随着a9~a14相继入队队中具有了10个元素--队满此时front5,rear5,如(b)所示可见在队满情况下有frontrear。若在(a)情况下a5~a8相继出队此时队空front9rear9如(c)所示即在队空情况下也有frontrear。就是说“队满”和“队空”的条件是相同的了。这显然是必须要解决的一个问题。方法之一是附设一个存储队中元素个数的变量如num当num0时队空当numMAXSIZE时为队满。另一种方法是少用一个元素空间把图(d)所示的情况就视为队满此时的状态是队尾指针加1就会从后面赶上队头指针这种情况下队满的条件是(q-rear1) % MAXSIZE q-front也能和空队区别开。队列的顺序存储结构typedef struct {QElemtype *base;//初始化的动态分配存储空间int front;//队头指针int rear;//队尾指针}SqQueue;循环队列的实现下面的循环队列及操作按第二种方法实现。#include #include #define MAXSIZE 10#define OK 1#define ERROR 0#define OVERFLOW -2typedef int Status;typedef int QElemtype;typedef struct {QElemtype *base;//初始化的动态分配存储空间int front;//队头指针int rear;//队尾指针}SqQueue;//循环队列//--------------------循环队列的基本操作的算法描述------------------Status InitQueue(SqQueue *q){//构造一个空队列Qq-base(QElemtype*)malloc(MAXSIZE*sizeof(QElemtype));if(!q-base)exit(OVERFLOW);//存储分配失败q-front q-rear 0;return OK;}int queuelength(SqQueue q){//返回Q的元素个数即队列的长度return (q.rear - q.front  MAXSIZE) % MAXSIZE;}Status EnQueue (SqQueue *q,QElemtype e){//插入元素e为Q的新的队尾元素if ((q-rear1) % MAXSIZE  q-front) return ERROR;//队列满不进行任何操作不能再入队q-base[q-rear]e;//入队的操作q-rear(q-rear1) % MAXSIZE;return OK;}Status DeQueue (SqQueue *q,QElemtype *e){//若队列不空则删除Q的对头元素用e返回其值并返回OK否则返回ERRORif (q-frontq-rear) return ERROR;//队列满*eq-base[q-front]; //指针的下标运算q-front(q-front1) % MAXSIZE;return OK;}void display_queue(SqQueue *q){if(q-frontq-rear){printf(queue is empty!!\n);}else {//遍历该循环队列int front  q-front;int rear  q-rear;while(front!rear){printf(%d\n,q-base[front]);front;}}}int main(){SqQueue q;InitQueue(q);int i;for(i0;i11;i){if(EnQueue(q,i)ERROR){printf(循环队列已满该队列长度为9 \n);}}printf(the length of queue is %d \n,queuelength(q)); //the length of queue is 9int e1,e2,e3,e4,e5;DeQueue(q,e1);DeQueue(q,e2);DeQueue(q,e3);DeQueue(q,e4);DeQueue(q,e5);printf(%d--%d--%d--%d--%d \n,e1,e2,e3,e4,e5);printf(the length of queue is %d \n,queuelength(q));printf(循环队列的遍历\n);display_queue(q);int e6;DeQueue(q,e6);printf(循环队列的遍历\n);display_queue(q);system(pause);return 0;}运行结果循环队列已满该队列长度为9循环队列已满该队列长度为9the length of queue is 90--1--2--3--4the length of queue is 4循环队列的遍历5678循环队列的遍历678请按任意键继续. . .注数学中的余数其实就是取模运算如m模n (c语言表示 m%n )x mod y x % y数学中的余数概念和我们的计算机中的余数概念一致但实现却不一致。END
http://www.sadfv.cn/news/70607/

相关文章:

  • 化工网站建站模板下载网站备案要营业执照吗
  • 洪梅镇网站建设帝国cms网站地图生成
  • 做网站的客户高校网站模板
  • 网站内页做排名有服务器怎么做网站
  • 网站的版权信息聚名网域名综合查询
  • 如何做分享赚钱的网站用网站做成软件
  • 网站空间买什么的好wordpress ssh
  • 网站栏目建设海尔公司的网站建设
  • 营销网站建设哪家好开发网站需要用到的专业技术知识
  • 福鼎网站建设温岭做网站公司
  • 清远市企业网站seo联系方式宣传推广费用预算
  • 网站本地化怎么做做英文网站 赚钱
  • 大型企业网站建设制作四川聚锋建设工程有限公司官方网站
  • 深圳聘请做网站人员html所有标签大全
  • 产品分类 网站模板com域名为什么那么贵
  • 如何搜索到自己的网站榆林做网站电话
  • 河南省大型项目建设办公室网站用友财务软件官方网站
  • 网站制作添加视频家装室内设计师培训班
  • 中英文网站建设价格包括搜索引擎排名、网页标签优化、相关链接交换、网络广告投放等
  • 网站图片设置4:3泰州网站设计培训
  • 哔哩哔哩视频推广极限优化wordpress
  • 怎么判断网站被k仿照别的网站做
  • 临沂网站搜索排名苏州设计网站公司
  • 网站降权查询工具青岛做网站公司
  • 网站建设全网营销自己做网站做淘宝客
  • 东莞百度网站排名优化seo营销型网站设计要点
  • 网站模板炫酷转换短链接平台
  • 国际商务网站网站首页如何做浮动窗口
  • 深圳专业做网站较好的公司网店代运营哪里有
  • 苏州招聘网站开发wordpress hook 顺序