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

南昌网站推广公司网络推广软文范文

南昌网站推广公司,网络推广软文范文,百度网站怎么用,武义县住房和城乡建设局网站一个循环队列的C语言实现,数据类型Queue定义如下,注意在 typedef struct{...}Queue; 中Queue为数据类型,而在struct {...}Queue; 中Queue为一个变量名。 front 为队首元素下标,始终指向队首元素,tail 为队尾元素的下一…

一个循环队列的C语言实现,数据类型Queue定义如下,注意在 typedef struct{...}Queue; 中Queue为数据类型,而在struct {...}Queue; 中Queue为一个变量名。
front 为队首元素下标,始终指向队首元素,tail 为队尾元素的下一个位置的下标。初始状态为front=tail=0

typedef struct {int size,eleNum;int* array;int front,tail;  //front指向第一个元素,rear指向最后一个元素的下一个位置
} Queue;

基本操作有:
add(), 添加元素到队尾
peek(), 获取但并不移出头
poll(), 获取并移出队首元素
create(n), 创建大小为n的队列
isempty(), 判断队列是不是空

另外,队列操作函数的参数都为指针,这样可以实现模拟引用传递的效果,如果参数为add(Queue q,int n), 对队列的修改并不会影响到初始的队列。可以修改运行试一下。

代码实现如下:

#include<stdio.h>#include<stdlib.h>/*用c语音实现队列基本操作add(), 添加元素到队尾peek(), 获取但并不移出头poll(), 获取并移出队首元素create(n), 创建大小为n的队列isempty(), 判断队列是不是空*/typedef struct {int size,eleNum;int* array;int front,tail; //front指向第一个元素,rear指向最后一个元素的下一个位置} Queue;//取出并移除第一个元素int poll(Queue* q){int res = q->array[q->front];q->front = (++(q->front))%q->size;q->eleNum--;return res;}//获取长度int len(Queue* q){return q->eleNum;}//插入k,返回1表示插入成功int add(Queue* q,int k){if(q->size==q->eleNum){return 0;}q->eleNum++;q->array[q->tail] = k;q->tail = (q->tail+1) % q->size;return 1;}//取出头部元素,不删除此元素,peek是“偷看”的意思int peek(Queue* q){return q->array[q->front];}//返回1表示为空,0表示不空int isEmpty(Queue* q){if(q->eleNum==0){return 1;}return 0;}//创建大小为n的队列Queue* createQue(int n){Queue* que = (Queue*)malloc(sizeof(Queue));que->size = n;que->eleNum = 0;que->array = (int*)malloc(sizeof(int)*n);que->front = 0;que->tail = 0;return que;}void display(Queue* q){int i = q->front;printf("elements: ");while(i!=q->tail){printf("%d ",q->array[i]);i = (i+1)%q->size;}printf("\n");printf("size: %d,elements num: %d\n",q->size,q->eleNum);printf("front: %d, tail:%d \n",q->front,q->tail);}int main(){Queue* q = createQue(10);add(q,10); add(q,11); add(q,12);poll(q); poll(q);display(q);return EXIT_SUCCESS;}
http://www.lbrq.cn/news/2371699.html

相关文章:

  • 网站建设的步骤过程百度网页版 入口
  • 做网站怎么做放大图片百度快照在哪里
  • 房地产行业现状及前景怎样优化标题关键词
  • 网站定制开发需要什么资质合肥seo按天收费
  • 怎样攻击网站网站推广的途径和方法
  • 东莞公司网站上海优化网站公司哪家好
  • 做中英文网站长沙专业竞价优化首选
  • 主题网站界面设计进入百度首页
  • 保定哪家做网站好百度搜索收录入口
  • 网站定制开发网站广告投放收费标准
  • 24小时资源视频在线观看石家庄网站建设seo
  • 手机在线做ppt模板下载网站搜索风云榜百度
  • 天津 网站建设东莞今天最新消息新闻
  • 2018网站如何做seo项目营销策划方案
  • 性价比最高的网站建设最新seo网站优化教程
  • 西安SEO网站建设哪家好枸橼酸西地那非片多长时间见效
  • 设计logo的ai软件seo就业
  • 网站建设的风格厦门seo专业培训学校
  • 童装 技术支持 东莞网站建设站长之家seo查询
  • 网站开发培训广西百度霸屏推广多少钱一个月
  • 中国十大流量网站论坛外链代发
  • 腾讯云主机能给几个网站备案网站seo课设
  • 域名跟空间都有了怎么做网站美食软文300字
  • 信访举报 网站 建设 情况江门搜狗网站推广优化
  • 网站做微信小程序宁波seo网络推广公司排名
  • 邹城网站制作百度指数查询工具
  • 长春哪里有做网站的武汉百度seo排名
  • 可以做兼职的动漫网站他达拉非什么是
  • 怎么设置网站名称互联网推广怎么做
  • 电商网站建设赏析广州网络推广seo
  • 虚拟化测试工具Parasoft Virtualize如何为汽车企业提供仿真测试?
  • 镁合金汽车零部件市场报告:行业现状、发展趋势与投资前景分析
  • 医院各类不良事件上报,PHP+vscode+vue2+element+laravel8+mysql5.7不良事件管理系统源代码,成品源码,不良事件管理系统
  • 55. 跳跃游戏
  • 【字节跳动】数据挖掘面试题0019:带货直播间推荐:现在有一个带货的直播间,怎么把它精准地推送给有需要的用户
  • AI Linux 运维笔记