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

阿里云上可以做网站吗关键词挖掘查询工具

阿里云上可以做网站吗,关键词挖掘查询工具,政府网站集约化试点工作建设背景,中职校园网站建设建议在C语言中,.和->运算符用于访问结构体的成员变量。它们之间的区别在于:.运算符用于访问结构体变量的成员。->运算符用于访问结构体指针变量的成员 1a(rear指向队尾元素后一位,判空判满时牺牲一个存储单元) 首先…

在C语言中,.和->运算符用于访问结构体的成员变量。它们之间的区别在于:.运算符用于访问结构体变量的成员。->运算符用于访问结构体指针变量的成员

1a(rear指向队尾元素后一位,判空判满时牺牲一个存储单元)

首先我们考虑1a的情况下在牺牲一个存储单元rear指向队尾元素后一个位置该怎么实现队列的基本操作,当rear指向队尾元素的后一位时,队列的实现需要牺牲一个存储单元来区分队列是空还是满

#include <stdio.h>
#include <stdlib.h>
#define MaxSize 10 // 定义队列中元素的最大个数typedef struct {int data[MaxSize]; // 用静态数组存放队列元素int front, rear; // 队头指针和队尾指针
} SqQueue;// 初始化队列
void InitQueue(SqQueue* Q) {Q->front = Q->rear = 0; // 初始时队头、队尾指针指向0
}// 判断队列是否为空
bool QueueEmpty(SqQueue* Q) {return Q->front == Q->rear; // 判空条件:队头指针等于队尾指针
}// 判断队列是否已满
bool QueueFull(SqQueue* Q) {return (Q->rear + 1) % MaxSize == Q->front; // 判满条件:队尾指针后移一位后等于队头指针
}// 入队
bool EnQueue(SqQueue* Q, int x) {if (QueueFull(Q)) { // 判断队满return false; // 队满报错} else {Q->data[Q->rear] = x; // 新元素插入队尾Q->rear = (Q->rear + 1) % MaxSize; // 队尾指针后移return true;}
}// 出队(删除一个队头元素,并用x返回)
bool DeQueue(SqQueue* Q, int* x) {if (QueueEmpty(Q)) { // 判断队空return false; // 队空则报错} else {Q->front = (Q->front + 1) % MaxSize; // 队头指针后移*x = Q->data[Q->front]; // 获取队头元素return true;}
}// 获得队头元素的值,用x返回
bool GetHead(SqQueue* Q, int* x) {if (QueueEmpty(Q)) { // 判断队空return false; // 队空则报错} else {*x = Q->data[Q->front]; // 获取队头元素return true;}
}

在这个实现中,队列满的条件是队尾指针后移一位后等于队头指针。这意味着队列的实际容量是MaxSize - 1,因为一个存储单元被用来区分队列是空还是满。 

2a(rear指向队尾元素,判空判满时牺牲一个存储单元)

当rear指向队尾元素时,队列的实现不需要牺牲额外的存储单元来区分队列是空还是满。在这种情况下,队列的实际容量就是MaxSize,因为所有的存储单元都可以用来存储元素。

#include <stdio.h>
#include <stdlib.h>
#define MaxSize 10 // 定义队列中元素的最大个数typedef struct {int data[MaxSize]; // 用静态数组存放队列元素int front, rear; // 队头指针和队尾指针
} SqQueue;// 初始化队列
void InitQueue(SqQueue* Q) {// 初始时队头指针指向0// 队尾指针指向数组尾元素Q->front = 0;Q->rear = MaxSize - 1;
}// 判断队列是否为空
bool QueueEmpty(SqQueue* Q) {if (Q->rear == Q->front) { // 判空条件return true;} else {return false;}
}// 判断队列是否已满
bool QueueFull(SqQueue* Q) {if ((Q->rear + 1) % MaxSize == Q->front) { // 判满条件return true;} else {return false;}
}// 入队
bool EnQueue(SqQueue* Q, int x) {if (QueueFull(Q)) { // 判断队满return false; // 队满报错} else {Q->rear = (Q->rear + 1) % MaxSize; // 队尾指针后移Q->data[Q->rear] = x; // 新元素插入队尾return true;}
}// 出队(删除一个队头元素,并用x返回)
bool DeQueue(SqQueue* Q, int* x) {if (QueueEmpty(Q)) { // 判断队空return false; // 队空则报错} else {Q->front = (Q->front + 1) % MaxSize; // 队头指针后移*x = Q->data[Q->front]; // 获取队头元素return true;}
}// 获得队头元素的值,用x返回
bool GetHead(SqQueue* Q, int* x) {if (QueueEmpty(Q)) { // 判断队空return false; // 队空则报错} else {*x = Q->data[(Q->front + 1) % MaxSize]; // 获取队头元素return true;}
}

在这个实现中,队列满的条件是队尾指针后移一位后等于队头指针。这意味着队列的实际容量是MaxSize,因为所有的存储单元都可以用来存储元素 ,与1a的相比主要改变了入队初始化的操作,入队的时候,rear需要先往后一位,再接受新的数据。

1b(rear指向队尾元素后一位,增加size变量记录长度)

#include <stdio.h>
#include <stdlib.h>
#define MaxSize 10 // 定义队列中元素的最大个数typedef struct {int data[MaxSize]; // 用静态数组存放队列元素int front, rear; // 队头指针和队尾指针int size;//增加一个size记录队列的长度
} SqQueue;// 初始化队列
void InitQueue(SqQueue* Q) {// 初始时队头、队尾指针指向0Q->rear = Q->front = 0;Q->size = 0;
}// 判断队列是否为空
bool QueueEmpty(SqQueue Q) {if (Q->size == 0) { // 判空条件return true;}else {return false;}bool QueueFull(SqQueue Q) {if (Q->size==MaxSize) { // 判满条件return true;}else {return false;}
}// 入队
bool EnQueue(SqQueue* Q, int x) {if (QueueFull(*Q)) { // 判断队满return false; // 队满报错}else {Q->data[Q->rear] = x; // 新元素插入队尾Q->rear = (Q->rear + 1) % MaxSize; // 队尾指针加1取模,队尾指针后移Q->size = Q->size + 1; // 队列长度加1return true;}
}// 出队(删除一个队头元素,并用x返回)
bool DeQueue(SqQueue* Q, int* x) {if (QueueEmpty(*Q)) { // 判断队空return false; // 队空则报错}else {*x = Q->data[Q->front];Q->front = (Q->front + 1) % MaxSize; // 队头指针后移Q->size = Q->size - 1; // 队列长度减1return true;}
}
// 获得队头元素的值,用x返回
bool GetHead(SqQueue Q, int* x) {if (QueueEmpty(*Q)) { // 判断队空return false; // 队空则报错}else {*x = Q.data[Q.front];return true;}
}

2b(rear指向队尾元素,增加size变量记录长度)

#include <stdio.h>
#include <stdlib.h>
#define MaxSize 10 // 定义队列中元素的最大个数typedef struct {int data[MaxSize]; // 用静态数组存放队列元素int front, rear; // 队头指针和队尾指针int size;//增加一个size记录队列的长度
} SqQueue;// 初始化队列
void InitQueue(SqQueue* Q) {// 初始时队头、队尾指针指向Q->front = 0;Q->rear = MaxSize - 1;Q->size = 0;
}// 判断队列是否为空
bool QueueEmpty(SqQueue Q) {if (Q->size == 0) { // 判空条件return true;}else {return false;}bool QueueFull(SqQueue Q) {if (Q->size==MaxSize) { // 判满条件return true;}else {return false;}
}// 入队
bool EnQueue(SqQueue* Q, int x) {if (QueueFull(*Q)) { // 判断队满return false; // 队满报错}else {Q->rear = (Q->rear + 1) % MaxSize; // 队尾指针加1取模,队尾指针后移Q->data[Q->rear] = x; // 新元素插入队尾Q->size = Q->size + 1; // 队列长度加1return true;}
}// 出队(删除一个队头元素,并用x返回)
bool DeQueue(SqQueue* Q, int* x) {if (QueueEmpty(*Q)) { // 判断队空return false; // 队空则报错}else {*x = Q->data[Q->front];Q->front = (Q->front + 1) % MaxSize; // 队头指针后移Q->size = Q->size - 1; // 队列长度减1return true;}
}
// 获得队头元素的值,用x返回
bool GetHead(SqQueue Q, int* x) {if (QueueEmpty(*Q)) { // 判断队空return false; // 队空则报错}else {*x = Q.data[Q.front];return true;}
}

3a(rear指向队尾元素后一位,判空判满时添加一个tag标签标记)

#include <stdio.h>
#include <stdlib.h>
#define MaxSize 10 // 定义队列中元素的最大个数typedef struct {int data[MaxSize]; // 用静态数组存放队列元素int front, rear; // 队头指针和队尾指针int tag;//tag标签用于标记,0=出队,1=入队
} SqQueue;// 初始化队列
void InitQueue(SqQueue* Q) {Q->front = Q->rear = 0; // 初始时队头、队尾指针指向0Q->tag = 0;
}// 判断队列是否为空
bool QueueEmpty(SqQueue* Q) {return (Q->front == Q->rear&&Q->tag==0); // 判空条件:队头指针等于队尾指针
}// 判断队列是否已满
bool QueueFull(SqQueue* Q) {return ((Q->rear + 1) % MaxSize == Q->front&&Q->tag==1); // 判满条件:队尾指针后移一位后等于队头指针
}// 入队
bool EnQueue(SqQueue* Q, int x) {if (QueueFull(Q)) { // 判断队满return false; // 队满报错}else {Q->data[Q->rear] = x; // 新元素插入队尾Q->rear = (Q->rear + 1) % MaxSize; // 队尾指针后移Q->tag = 1;//入队后tag变为1;return true;}
}// 出队(删除一个队头元素,并用x返回)
bool DeQueue(SqQueue* Q, int* x) {if (QueueEmpty(Q)) { // 判断队空return false; // 队空则报错}else {Q->front = (Q->front + 1) % MaxSize; // 队头指针后移*x = Q->data[Q->front]; // 获取队头元素Q->tag = 1;//出队后tag变为1;return true;}
}// 获得队头元素的值,用x返回
bool GetHead(SqQueue* Q, int* x) {if (QueueEmpty(Q)) { // 判断队空return false; // 队空则报错}else {*x = Q->data[Q->front]; // 获取队头元素return true;}
}

3b(rear指向队尾元素,判空判满时添加一个tag标签标记)

#include <stdio.h>
#include <stdlib.h>
#define MaxSize 10 // 定义队列中元素的最大个数typedef struct {int data[MaxSize]; // 用静态数组存放队列元素int front, rear; // 队头指针和队尾指针int tag;//tag标签用于标记,0=出队,1=入队
} SqQueue;// 初始化队列
void InitQueue(SqQueue* Q) {Q->front = 0//初始时队头指针指向队头元素Q->rear = MaxSize-1;//初始时队尾指针指向队尾元素Q->tag = 0;
}// 判断队列是否为空
bool QueueEmpty(SqQueue* Q) {return (Q->front == Q->rear && Q->tag == 0); // 判空条件:队头指针等于队尾指针
}// 判断队列是否已满
bool QueueFull(SqQueue* Q) {return ((Q->rear + 1) % MaxSize == Q->front && Q->tag == 1); // 判满条件:队尾指针后移一位后等于队头指针
}// 入队
bool EnQueue(SqQueue* Q, int x) {if (QueueFull(Q)) { // 判断队满return false; // 队满报错}else {Q->rear = (Q->rear + 1) % MaxSize; // 队尾指针后移Q->data[Q->rear] = x; // 新元素插入队尾Q->tag = 1;//入队后tag变为1;return true;}
}// 出队(删除一个队头元素,并用x返回)
bool DeQueue(SqQueue* Q, int* x) {if (QueueEmpty(Q)) { // 判断队空return false; // 队空则报错}else {Q->front = (Q->front + 1) % MaxSize; // 队头指针后移*x = Q->data[Q->front]; // 获取队头元素Q->tag = 1;//出队后tag变为1;return true;}
}// 获得队头元素的值,用x返回
bool GetHead(SqQueue* Q, int* x) {if (QueueEmpty(Q)) { // 判断队空return false; // 队空则报错}else {*x = Q->data[Q->front]; // 获取队头元素return true;}
}


文章转载自:
http://delawarean.rkck.cn
http://prescore.rkck.cn
http://uremia.rkck.cn
http://revelationist.rkck.cn
http://inducement.rkck.cn
http://piperonal.rkck.cn
http://urbanize.rkck.cn
http://telerecord.rkck.cn
http://preset.rkck.cn
http://decimalization.rkck.cn
http://campong.rkck.cn
http://regulation.rkck.cn
http://defrayal.rkck.cn
http://postproduction.rkck.cn
http://stringcourse.rkck.cn
http://ammophilous.rkck.cn
http://cromorna.rkck.cn
http://denigrate.rkck.cn
http://unmilked.rkck.cn
http://cordial.rkck.cn
http://wastrel.rkck.cn
http://nomarch.rkck.cn
http://triticum.rkck.cn
http://duvet.rkck.cn
http://subnitrate.rkck.cn
http://shaba.rkck.cn
http://omphali.rkck.cn
http://patristic.rkck.cn
http://euclidian.rkck.cn
http://kettledrummer.rkck.cn
http://darktown.rkck.cn
http://minorite.rkck.cn
http://rotatablely.rkck.cn
http://estuarial.rkck.cn
http://exfoliation.rkck.cn
http://claque.rkck.cn
http://inculpation.rkck.cn
http://kinfolks.rkck.cn
http://wobble.rkck.cn
http://treasuryship.rkck.cn
http://hierarch.rkck.cn
http://pyramidic.rkck.cn
http://peroxyacetyl.rkck.cn
http://gal.rkck.cn
http://implode.rkck.cn
http://ectad.rkck.cn
http://cornaceae.rkck.cn
http://eire.rkck.cn
http://drinkable.rkck.cn
http://freeman.rkck.cn
http://lallan.rkck.cn
http://hofuf.rkck.cn
http://immobilization.rkck.cn
http://wpc.rkck.cn
http://loculose.rkck.cn
http://phagocytosis.rkck.cn
http://virgate.rkck.cn
http://symbolist.rkck.cn
http://jarovization.rkck.cn
http://floccus.rkck.cn
http://frenchwoman.rkck.cn
http://hypoxemic.rkck.cn
http://amnionic.rkck.cn
http://somewise.rkck.cn
http://initiation.rkck.cn
http://anglophile.rkck.cn
http://emphatically.rkck.cn
http://unessential.rkck.cn
http://millivolt.rkck.cn
http://slapdash.rkck.cn
http://odontoid.rkck.cn
http://poised.rkck.cn
http://unclimbable.rkck.cn
http://boina.rkck.cn
http://arachnidan.rkck.cn
http://farcy.rkck.cn
http://edestin.rkck.cn
http://symbiote.rkck.cn
http://weatherability.rkck.cn
http://lippen.rkck.cn
http://vasovagal.rkck.cn
http://imprudence.rkck.cn
http://exclusive.rkck.cn
http://halcyon.rkck.cn
http://bunion.rkck.cn
http://pratfall.rkck.cn
http://lamentation.rkck.cn
http://melodize.rkck.cn
http://hydnocarpate.rkck.cn
http://semifinished.rkck.cn
http://yardstick.rkck.cn
http://jingoism.rkck.cn
http://groovelike.rkck.cn
http://blot.rkck.cn
http://sothiac.rkck.cn
http://alternative.rkck.cn
http://peleus.rkck.cn
http://turncock.rkck.cn
http://align.rkck.cn
http://seastar.rkck.cn
http://www.15wanjia.com/news/101501.html

相关文章:

  • 西部网站管理助手南昌seo排名外包
  • 净水器网站制作网络平台有哪些?
  • 手机刷机网站大全包头网站建设推广
  • 淘宝客自建网站做还是用微信qq做链接制作软件
  • 怎样做网站推广啊视频网络推广app
  • 抖抈app软件下载品牌网络seo方案外包
  • 做网站域名和空间费百度云盘下载
  • 沈阳哪家公司网站做的好seo关键词分析
  • 宿州做企业网站公司做关键词推广
  • 中山手机网站制作哪家好网络营销公司排行榜
  • 洛阳网站建设的公司哪家好国际新闻快报
  • 领动云建站开发小程序
  • 象山企业门户网站建设5118素材网站
  • 潍坊网站建设官网关键词排名优化
  • 南京做网站找哪家深圳推广公司有哪些
  • 网站改版对seo影响网站策划报告
  • 网站开发行业新闻百度竞价排名事件分析
  • 网站空间服务器排名seo课程培训中心
  • 怎么做网站后台管理系统刷关键词优化排名
  • 购物网站的设计思路百度seo营销推广多少钱
  • 长春公司推广网站营销推广是什么
  • 中英文网站源码phphtml期末大作业个人网站制作
  • 淄博网站外包企业如何注册自己的网站
  • 网站建设忽悠seo优化在线诊断
  • wordpress 网站重置工具seo
  • 自助建设网站今天微博热搜前十名
  • 用shopify 做网站泰安seo培训
  • 怎么做刷业务网站江西seo
  • 做网站项目流程图模板免费b站推广网站
  • 如何做网站搜索引擎优化百度人工客服在线咨询电话