DS博客作业03--栈和队列
1.本周学习总结
本周学习中学习了栈和队列,栈和队列都属于线性结构,栈和队列不同于线性表的地方在于它们的相关运算具有一些特殊性,所以栈和队列也称为操作受限的线性表。
1.栈
栈是重要且常用的数据结构之一,是一种只能在一端进行插入或者删除的线性表,并且特点是“后进先出”,所以也称作是后进先出表。学习了栈的顺序存储和链式存储,并掌握其基本运算的实现。还有学习练习使用C++的摸板类:stack.(注:栈的删除是物理删除,数据在栈内不存在)。同时还进一步学习共享栈,从两边分别向中间进行操作,学习其中的基本运算。并且学习通过栈的应用,学会转换中缀表达式和后缀表达式,且求后缀表达式的值。以及回溯法来进行迷宫游戏。
2.队列
队列是一种受限的线性表,仅允许在表的一端进行插入操作,在另一端进行删除操作,并且其特点是“先进先出”,所以也称作先进先出表。学习队列的顺序存储和链式存储及其基本运算的实现,并且学习环形队列的基本运算,并且学习练习使用C++的摸板类:queue.(注:链式存储一般不考虑队满)。并接触双向队列。
2.PTA实验作业
2.1.题目1:6-1 另类堆栈
2.1.1设计思路:函数题无需。
2.1.2代码截图

2.1.3本题PTA提交列表说明

- Q1:多种错误
- A1:ElementType Pop( Stack S )函数的返回值错误,导致运行超时。并且输出时,没有\n导致格式错误
- Q2:答案错误
- A2:输出函数中最后,top指针先--,而不是后--;
2.2.题目2:6-11 另类循环队列
2.2.1设计思路:函数题无需。
2.2.2代码截图

2.2.3本题PTA提交列表说明

- A1:运行错误
Q1:Q->Front = (Q->Front + 1) % Q->MaxSize写成了Q->Count = (Q->Front + 1) % Q->MaxSize,导致运行超时
3、栈和队列上机考试
错题及解决办法
1.6-1 在一个数组中实现两个堆栈 (15 分)
问题:一开始一次性打完代码的时候,第一次是出现了段错误
代码如下:

明眼人都看的出来,是分配空间出了问题,没错我就是那个没有看出来的人,还写的十分的快乐,导致了段错误产生,一开始在做pta题集的时候,也出现过段错误,因为当时的一个函数中的相等我用成了一个等号,所以导致错误,所以一直纠结哪里少了等号,所以打代码的人要细心,解决了这个错误,说不定还有下一个bug,不能一成不变。
后面改完后,仍然还只有部分正确,
错误如下:

因为复制粘贴没有改过来 ,导致pop函数if Tag==2时,条件牛头不对马嘴。
6-2 jmu-ds-舞伴问题
问题:求算队列长度,入队和出队的操作问题不大,在输出队列的时候却遇到了问题,因为while函数写错了,导致输出错误,使答案错误
代码如下:

后来决定在while循环里面在放一个for循环,并用判断两个队列都不空的时候,分别输出男队列和女队列的人。
改正代码如下:

期间有个小插曲,就是自己判断队列是空的时候return的是ok,而自己误以为是error,所以浪费了一些时间去做答案错误。
最后答案还是错误,结果发现是男女输出顺序错了。。。导致答案错误,再改的时候格式错误。。。因为男女后面的空格和换行符没换回来。。细节决定成败。。。
DS博客作业03--栈和队列的更多相关文章
- DS博客作业03——栈和队列
1.本周学习总结 谈谈你对栈和队列结构的认识及学习体会. 栈和队列的本质就是线性表.所以,相应的栈跟队列都有两种存储结构:顺序存储结构.链式存储结构. 栈的特点是后进先出,根据栈时进时出的规则,出栈的 ...
- DS博客作业03—栈和队列
1.本周学习总结 本周学习了栈和队列两种数据结构,分别对应后进先出,先进先出两种数据操作 学会栈的特殊类型-共享栈,队列的特殊类型-循环队列的一系列操作 学会熟练使用栈和队列的STL容器,使代码简洁 ...
- DS博客作业08--课程总结
DS博客作业08--课程总结 1.当初你是如何做出选择计算机专业的决定的? 1.1 经过一年学习,你的看法改变了么,为什么? 1.2 你觉得计算机是你喜欢的领域吗,它是你擅长的领域吗? 为什么? 1. ...
- DS博客作业04--图
这个作业属于哪个班级 数据结构--网络2011/2012 这个作业的地址 DS博客作业04--图 这个作业的目标 学习图结构设计及相关算法 姓名 黄静 目录 0.PTA得分截图 1.本周学习总结 1. ...
- DS博客作业——树
DS博客作业--树 1.本周学习总结 1.思维导图 2.谈谈你对树结构的认识及学习体会. 在树这一章节,我们学习的是二叉树的算法. 树的构建:一种是直接给树的顺序存储结构的字符串,一种是通过先序遍历和 ...
- DS博客作业05--查找
这个作业属于哪个班级 数据结构--网络2011/2012 这个作业的地址 DS博客作业05--查找 这个作业的目标 学习查找的相关结构 姓名 黄静 目录 0.PTA得分截图 1.本周学习总结 1.1 ...
- DS博客作业03--树
这个作业属于哪个班级 数据结构--网络2011/2012 这个作业的地址 DS博客作业03--树 这个作业的目标 学习树结构设计及运算操作 姓名 黄静 目录 0. PTA得分截图 1. 本周学习总结 ...
- DS博客作业--07查找
目录 DS博客作业--07查找 1.本周学习总结(0--2分) 1.思维导图 2.谈谈你对查找运算的认识及学习体会. 2.PTA实验作业(6分) 2.1.题目1:6-1 二叉搜索树的操作集 (30 分 ...
- DS博客作业--课程总结
1.当初你是如何做出选择计算机专业的决定的? 经过一年学习,你的看法改变了么,为什么? 你觉得计算机是你喜欢的领域吗,它是你擅长的领域吗? 为什么? 刚开始填报志愿的时候,因为我个人是没有什么比较特别 ...
随机推荐
- C#枚举的简单使用
枚举这个名词大家都听过,很多小伙伴也使用过, 那么枚举在开发中能做什么,使用它后能给程序代码带来什么改变,为什么用枚举. 各位看官且坐下,听我一一道来. 为什么使用枚举? 1.枚举能够使代码更加清晰, ...
- 简述ADO.NET命名空间
system.data命名空间的类型 system.data命名空间的核心成员 命名空间 作用 Constraint 表示某个DataColumn对象的约束 DataColumn 表示某个DataT ...
- [TCP/IP] 网络层-简单查看路由表
使用抓包工具排除网络故障:1.如果一台计算机在网络上发广播包,广播的mac地址是全ff,就有可能堵塞2.使用抓包工具,检测广播包和多播包 网络畅通的条件:数据包有去有回1.路由器使用路由表找到目标网段 ...
- Eclipse代码快捷键
今天终于找到了代码注释快捷键:ctrl+shift+/取消注释快捷键:ctrl+shift+\ Java文件:注释和取消注释的快捷键都是:CTRL + / 或 Shift+Ctrl+C JS文件:注释 ...
- jenkins实现以gitlab为代码仓库的构建
简介 前一篇随笔是安装jenkins的过程,比较简单,这一次说一下用jenkins配置以gitlab为代码管理仓库的maven项目的完整个构建过程,以及我碰到的一些问题.由于是maven项目,所以我们 ...
- dubbo 2.7.0 中缺乏 <dubbo:annotation /> 的解决方案
一.背景 从 dubbo 2.6.5 升级到 2.7.0,突然发现好多地方不能用了,dubbo:annotation 直接报红,原先的 @Service 和 @Reference 中直接报了过时,源 ...
- 零基础学Python--------第9章 异常处理及程序调试
第9章 异常处理及程序调试 9.1 异常概述 在程序运行过程中,经常会遇到各种各样的错误,这些错误统称为“异常”.这些异常有的是由于开发者将关键字敲错导致的,这类错误多数产生的是SyntaxError ...
- OPPO K3在哪里打开USB调试模式的完美方法
当我们使用pc链接安卓手机的时候,如果手机没有开启USB调试模式,pc则无法成功识别我们的手机,这个时候我们需要找解决方法将手机的USB调试模式打开,今天我们介绍OPPO K3如何开启USB调试模式的 ...
- oracle有三种类型的异常错误: 预定义 ( Predefined )错误里面的常见错误
oracle有三种类型的异常错误: 预定义 ( Predefined )错误, 非预定义 ( Predefined )错误, 用户定义(User_define) 错误 预定义 ( Predefined ...
- R语言学习——图形初阶之折线图与图形参数控制
plot()是R中为对象作图的一个泛型函数(它的输出将根据所绘制对象类型的不同而变化):plot(x,y,type="b")表示将x置于横轴,y置于纵轴,绘制点集(x,y),然后使 ...