青岛大学_王卓老师【数据结构与算法】Week05_14_队列的顺序表示和实现2_学习笔记

这篇具有很好参考价值的文章主要介绍了青岛大学_王卓老师【数据结构与算法】Week05_14_队列的顺序表示和实现2_学习笔记。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文是个人学习笔记,素材来自青岛大学王卓老师的教学视频。

一方面用于学习记录与分享,

另一方面是想让更多的人看到这么好的《数据结构与算法》的学习视频。

如有侵权,请留言作删文处理。

课程视频链接:

数据结构与算法基础–第05周14–3.5队列的表示和实现3–3.5.2队列的顺序表示和实现2

📚 【Week05】14_队列的顺序表示和实现2

循环队列的类型定义
// 最大队列长度
#define MAXQSIZE 100
Typedef struct{
    // 初始化的动态分配存储空间
    QElemType* base;
	// 头指针,若队列不空,则指向队列头元素
    int front;
    // 尾指针,若队列不空,则指向队尾元素的下一个位置
    int rear;
}SqQueue;
循环队列的操作
循环队列的初始化
Status InitQueue(SqQueue& Q){
    // 分配数组空间
    Q.base = new QElemType[MAXSIZE];
    // Q.base = (QElemType*)
    // malloc(MAXQSIZE* sizeof(QElemType));
    if(!Q.base)
        // 存储分配失败
        exit(OVERFLOW);
    // 头指针尾指针置为 0,队列为空
    Q.front = Q.rear = 0;
    
    return OK;    
}
求循环队列的长度

青岛大学_王卓老师【数据结构与算法】Week05_14_队列的顺序表示和实现2_学习笔记,【数据结构与算法】王卓老师,学习,笔记文章来源地址https://www.toymoban.com/news/detail-596656.html

int QueueLength(SqQueue Q){
	reurn ((Q.rear - Q.front + MAXSIZE)%MAXQSIZE);
}
循环队列的入队
Status EnQueue(SqQueue& Q, QElemType e){
    if((Q.rear + 1)%MAXQSIZE == Q.front)
        // 栈满
        return ERROR;
    // 新元素加入队尾
    Q.base[Q.rear] = e;
    // 队尾指针 + 1
    Q.rear = (Q.rear + 1)% MAXQSIZE;
    
    return OK;
}
循环队列的出队
Status DeQueue(SqQueue& Q, QElemType& e){
    if(Q.front == Q.rear)
        // 栈空
        return ERROR;
    // 保存队头元素
    e = Q.base[Q.front];
    // 队头指针 + 1
    Q.front = (Q.front + 1)% MAXQSIZE;
    
    return OK;
}
取循环队列队头元素
Status GetHead(SqQueue Q){
	// 队列不为空
	if(Q.front != Q.rear)
        // 返回队头指针元素的值,队头指针不变
    	return Q.base[Q.front];
}

到了这里,关于青岛大学_王卓老师【数据结构与算法】Week05_14_队列的顺序表示和实现2_学习笔记的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 青岛大学_王卓老师【数据结构与算法】Week04_04_双向链表的插入_学习笔记

    本文是个人学习笔记,素材来自青岛大学王卓老师的教学视频。 一方面用于学习记录与分享,另一方面是想让更多的人看到这么好的《数据结构与算法》的学习视频。 如有侵权,请留言作删文处理。 课程视频链接: 数据结构与算法基础–第04周04–2.5.4双向链表2–双向链表

    2024年02月12日
    浏览(45)
  • 青岛大学_王卓老师【数据结构与算法】Week05_13_队列的顺序表示和实现1_学习笔记

    本文是个人学习笔记,素材来自青岛大学王卓老师的教学视频。 一方面用于学习记录与分享, 另一方面是想让更多的人看到这么好的《数据结构与算法》的学习视频。 如有侵权,请留言作删文处理。 课程视频链接: 数据结构与算法基础–第05周13–3.5队列的表示和实现2–

    2024年02月17日
    浏览(30)
  • 青岛大学_王卓老师【数据结构与算法】Week05_14_队列的顺序表示和实现2_学习笔记

    本文是个人学习笔记,素材来自青岛大学王卓老师的教学视频。 一方面用于学习记录与分享, 另一方面是想让更多的人看到这么好的《数据结构与算法》的学习视频。 如有侵权,请留言作删文处理。 课程视频链接: 数据结构与算法基础–第05周14–3.5队列的表示和实现3–

    2024年02月16日
    浏览(38)
  • 青岛大学_王卓老师【数据结构与算法】Week05_01_栈和队列的定义和特点1_学习笔记

    本文是个人学习笔记,素材来自青岛大学王卓老师的教学视频。 一方面用于学习记录与分享, 另一方面是想让更多的人看到这么好的《数据结构与算法》的学习视频。 如有侵权,请留言作删文处理。 课程视频链接: 数据结构与算法基础–第05周01–3.1栈和队列的定义和特点

    2024年02月15日
    浏览(29)
  • 青岛大学_王卓老师【数据结构与算法】Week03_11_线性表的链式表示和实现11_学习笔记

    本文是个人学习笔记,素材来自青岛大学王卓老师的教学视频。 一方面用于学习记录与分享,另一方面是想让更多的人看到这么好的《数据结构与算法》的学习视频。 如有侵权,请留言作删文处理。 课程视频链接: 数据结构与算法基础–第3周11–2.5线性表的链式表示和实现

    2024年02月12日
    浏览(31)
  • 数据结构与算法基础(青岛大学-王卓)(1)

    程序=数据结构+算法 数据(data) 数值型 非数值型(文字,图像…) 数据元素(data element) 数据的基本单位,在程序中当做一个整体进行考虑和处理(如表中的一行包含多列信息) 是数据这个集合的个体 数据项(data item) 构成数据元素的不可分割的 最小单位 () 数据对象(data object) 性质相

    2024年02月03日
    浏览(30)
  • 数据结构与算法基础(青岛大学-王卓)(6)

    啊呀呀,不小心又断更快一个月了,我还是认真每天学习滴,最近还是香瓜,菜瓜,西瓜,羊角蜜不能停口啊,哈哈,二叉树这一章真是硬茬,难啃啊。 树的定义 树的深度 :树中节点的最大层次 有序树 : 树中结点的各子树从左至右有次序 ( 最左边的为第一个孩子 ) 无序

    2024年02月16日
    浏览(44)
  • 数据结构与算法基础(青岛大学-王卓)(5)

    叮叮咚咚,新一期来袭,我还在吃桃子,吃桃子,吃桃子。。。串和python的字符串差不多,数组和广义表像是python的list 串(string) - 字符串 概念及术语 定义: 零个或多个任意字符组成的有限序列,是一种内容受限的线性表 子串 : 串中任意个连续字符组成的子序列称为该串的

    2024年02月09日
    浏览(37)
  • 体验百度文心一言AI大模型生产生成河南大学、太原理工大学、哈尔滨工程大学和青岛大学简介

    河南大学(Henan University),简称“河大”,坐落于中国河南省,是河南省人民政府与中华人民共和国教育部共建高校,国家“双一流”建设高校,入选国家“111计划”、中西部高校基础能力建设工程、卓越医生教育培养计划、卓越法律人才教育培养计划、卓越教师培养计划、

    2024年02月11日
    浏览(37)
  • 24届近3年青岛理工大学自动化考研院校分析

    今天给大家带来的是 青岛理工 大学 控制考研分析 满满干货~还不快快点赞收藏  青岛理工大学是一所以工为主,土木建筑、机械制造、环境能源学科特色鲜明,理工经管文法艺等学科协调发展的多科性大学。是国家首批地方高校“111计划”建设单位、全国首批深化创新创业

    2024年02月13日
    浏览(74)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包