【考研复习】24王道数据结构课后习题代码|第3章栈与队列
文章目录
- 3.1 栈
- 3.2 队列
- 3.3 栈和队列的应用
3.1 栈
int symmetry(linklist L,int n){char s[n/2];lnode *p=L->next;int i;for(i=0;i<n/2;i++){s[i]=p->data;p=p->next;}i--;if(n%2==1) p=p->next;while(p&&s[i]==p->data){i--;p=p->next;}if(i==-1) return 1;else return 0;
}
typedef struct {int stack[Max];int top[2];
}stk;
stk s;
int push(int i, int x){if(i<0||i>1){cout<<"no stack"<<endl;return -1;}if(s.top[1]-s.top[0]==1){cout<<"full stack"<<endl;return -1;}switch (i){case 0:s.stack[++s.top[0]]=x; return 1;break;case 1:s.stack[++s.top[1]]=x; return 1;break;}
}
int pop(int i){if(i<0||i>1){cout<<"no stack"<<endl;return -1;}switch (i){case 0:if(s.top[0]==-1){cout<<"empty stack"<<endl;return -1;}else{return s.stack[s.top[0]--];}break;case 1:if(s.top[0]==Max){cout<<"empty stack"<<endl;return -1;}else{return s.stack[s.top[1]--];}break;}
}
3.2 队列
#define Maxsize 10
typedef struct{int data[Maxsize];int rear,front,tag;
}SqQueue;
int EnQueue(SqQueue &Q, int x){if(Q.front==Q.rear&&Q.tag==1) return 0; //队列满了Q.data[Q.rear]=x;Q.rear=(Q.rear+1)%Maxsize;Q.tag=1;return 1;
}
int DeQueue(SqQueue &Q, int x){if(Q.front==Q.rear&&Q.tag==0) return 0; //队空x=Q.data[Q.front];Q.front=(Q.front+1)%Maxsize;Q.tag=0;return 1;
}
伪代码
void inverse(stack &s, queue &q){while(!queueempty(q)){x=dequeue(q);push(s,x);}while(!stackempty(s)){pop(s,x);enqueue(q,x);}
}
int enqueue(stack &s1, stack &s2, int e){if(!(stackoverflow(s1))){push(s1,e);return 1;}if(stackoverflow(s1)&&!(stackempty(s2))){cout<<" stack is overflow. "<<endl;return 0;}if(stackoverflow(s1)&&stackempty(s2)){while(!(stackempty(s1))){pop(s1,x);push(s2,x);}}push(s1,e);return 1;
}
void dequeue(stack &s1,stack &s2, int &x){if(!stackempty(s2)){pop(s2,x);}else if(stackempty(s1)){cout<<" stack is empty"<<endl;}else{while(!stackempty(s1)){pop(s1,x);push(s2,x);}pop(s2,x);}
}
int queueempty(stack s1,stack s2){if(stackempty(s1)&&stackempty(s2)){return 1;}else return 0;
}
3.3 栈和队列的应用
#include <iostream>
#include <stack>
using namespace std;
bool check(char str[]){stack <char> sck; int i=0;char temp;while(str[i]!='\0'){if(str[i]=='('||str[i]=='{'||str[i]=='[') {sck.push(str[i]);break;}else if(str[i]==']'){temp = sck.top();sck.pop();if(temp!='[') return false;}else if(str[i]==')'){temp = sck.top();sck.pop();if(temp!='(') return false;}else if(str[i]=='}'){temp = sck.top();sck.pop();if(temp!='{') return false;}}if(sck.empty()) return true;return false;
}
int main(){char *str=(char*)"()[](}{}()";cout<<str<<endl;if(!check(str)) cout<<"no !!"<<endl;else cout<<"yes!!1"<<endl;return 0;}
#include <iostream>
#include <stack>
using namespace std;
void train_arrange(char *train){stack <char> sck;char *p=train,*q=train,t;while(*p){if(*p=='H') {sck.push(*p);}else{*(q++)=*p;}p++;}while (!sck.empty()){t = sck.top();sck.pop();*(q++)=t;}}
int main()
{char str[11]="HSHSHHHSHS";train_arrange(str);cout<<str<<endl;return 0;
} // namespace std;
#include <iostream>
#define maxsize 100
using namespace std;
double p(int n, double x){struct stack{int no;double val;}st[maxsize];int top=-1,i;double fv1=1,fv2=2*x;for(i=n;i>=2;i--){top++;st[top].no=i;}while(top>0){st[top].val=2*x*fv2-2*(st[top].no-1)*fv1;fv1=fv2;fv2=st[top].val;top--;}if(n==0){return fv1;}return fv2;
}
int main(){
double ans1=p(1,1.9);cout<<ans1<<endl;
}
相关文章:

【考研复习】24王道数据结构课后习题代码|第3章栈与队列
文章目录 3.1 栈3.2 队列3.3 栈和队列的应用 3.1 栈 int symmetry(linklist L,int n){char s[n/2];lnode *pL->next;int i;for(i0;i<n/2;i){s[i]p->data;pp->next;}i--;if(n%21) pp->next;while(p&&s[i]p->data){i--;pp->next;}if(i-1) return 1;…...
java中excel文件下载
1、System.getProperty(user.dir) 获取的是启动项目的容器位置 2、 Files.copy(sourceFile.toPath(), destinationFile.toPath(), StandardCopyOption.REPLACE_EXISTING); StandardCopyOption.REPLACE_EXISTING 来忽略文件已经存在的异常,如果存在就去覆盖掉它Sta…...

29 | 广州美食店铺数据分析
广州美食店铺数据分析 一、数据分析项目MVP加/价值主张宣言 随着经济的快速发展以及新媒体的兴起,美食攻略、美食探店等一系列东西进入大众的眼球,而人们也会在各大平台中查找美食推荐,因此本项目做的美食店铺数据分析也是带有可行性的。首先通过对广东省的各市美食店铺数量…...

fastApi基础
1、fastApi简介 官方文档:https://fastapi.tiangolo.com/ 源码: https://github.com/tiangolo/fastapi 2、环境准备 安装python 安装pycharm 安装fastAPI 安装 uvicorn 查看已经安装的第三方库:pip list 查看pip 配置信息:pip co…...
Mysql整理二 - 常见查询语句面试题(附原表)
表结构,创建原表的代码在最后 -- cid课程id; tid老师id; sid学生id; select * from t_mysql_course; select * from t_mysql_score; select * from t_mysql_student; select * from t_mysql_teacher; 1. 查询" 01 “课程比” 02 "课程成绩高的学生的信息…...
Python - 读取pdf、word、excel、ppt、csv、txt文件提取所有文本
前言 本文对使用python读取pdf、word、excel、ppt、csv、txt等常用文件,并提取所有文本的方法进行分享和使用总结。 可以读取不同文件的库和方法当然不止下面分享的这些,本文的代码主要目标都是:方便提取文件中所有文本的实现方式。 这些库的…...

Codeforces Round 892 (Div. 2) C. Another Permutation Problem 纯数学方法 思维题
Codeforces Round 892 (Div. 2) C. Another Permutation Problem 源码: #include <iostream> #include <algorithm> #include <set> #include <map> #include <queue> #include <vector> #include <stack> #include &l…...
持续输出:自媒体持续输出文字内容、视音频创作(视频课程、书籍章节)
以下是自媒体持续输出文字内容、视音频创作的最佳方法: 灵感来源:寻找灵感来源是自媒体创作的重要一环。可以从日常生活、网络热点、行业动态等方面寻找创作灵感。 确定主题:在确定主题的时候,需要根据读者和观众的需求ÿ…...
篇十七:备忘录模式:恢复对象状态
篇十七:"备忘录模式:恢复对象状态" 开始本篇文章之前先推荐一个好用的学习工具,AIRIght,借助于AI助手工具,学习事半功倍。欢迎访问:http://airight.fun/。 另外有2本不错的关于设计模式的资料&…...

初识mysql数据库之图形化界面
目录 一、好用的数据库图形化界面软件 1. Navicat 2. SQLyog 3. MYSQL Workbench 二、MYSQL Workbench基本使用 1. 安装 2. 远端连接 3. 执行sql语句 一、好用的数据库图形化界面软件 在以前的文章中,一共介绍了两种使用数据库的方式,分别为在l…...

APP外包开发的H5开发框架
跨平台移动应用开发框架允许开发者使用一套代码在多个操作系统上构建应用程序,从而节省时间和资源。以下是一些常见的跨平台移动应用开发框架以及它们的特点,希望对大家有所帮助。北京木奇移动技术有限公司,专业的软件外包开发公司࿰…...

高性能跨平台网络通信框架 HP-Socket v5.9.3
项目主页 : http://www.oschina.net/p/hp-socket开发文档 : https://www.docin.com/p-4478351216.html下载地址 : https://github.com/ldcsaa/HP-SocketQQ Group: 44636872, 663903943 v5.9.3 更新 一、主要更新 问题修复:通过 POST/PUT 等带有请求内容的 HTTP 方…...
Vue3.2+TS在v-for的时候,循环处理时间,将其变成xx-xx-xx xx:xx:xx格式,最后教给大家自己封装一个时间hooks,直接复用
Vue3.2TS在v-for的时候,循环处理时间,将其变成xx-xx-xx xx:xx:xx格式 最后教给大家自己封装一个时间hooks,直接复用 1.没有封装,直接使用 <template><div><ul><li v-for"item,index in arr" :k…...

05 mysql innodb page
前言 最近看到了 何登成 大佬的 "深入MySQL源码 -- Step By Step" 的 pdf 呵呵 似乎是找到了一些 方向 之前对于 mysql 方面的东西, 更多的仅仅是简单的使用[业务中的各种增删改查], 以及一些面试题的背诵 这里会参照 MySQL Internals Manual 来大致的看一下 i…...

记录一次electron打包提示文件找不到的解决方法
没有配置files选项 files的作用是配置打包到应用程序的构建资源 就是说如果你想使用项目那个目录下的文件 就得通过files配置一下不然就会报错 json文件或者yml文件会报的错 格式是这样的 "files": ["dist-electron", "dist"],electron打包配…...

《大型网站技术架构》第二篇 架构-高可用
高可用在公司中的重要性 对公司而言,可用性关系网站的生死存亡。对个人而言,可用性关系到自己的绩效升迁。 工程师对架构做了许多优化、对代码做了很多重构,对性能、扩展性、伸缩性做了很多改善,但别人未必能直观地感受到&#…...

VS Code 使用cnpm下载包失败
一、 问题如下: 网上找到的解决方法是要在powershell中执行: Set-ExecutionPolicy RemoteSigned进行更改策略。 首先我们解释下这个Set-ExecutionPolicy RemoteSigned,Set-ExecutionPolicy 是一个 PowerShell 命令,用于控制脚本…...

【图像分类】CNN + Transformer 结合系列.4
介绍两篇利用Transformer做图像分类的论文:CoAtNet(NeurIPS2021),ConvMixer(ICLR2022)。CoAtNet结合CNN和Transformer的优点进行改进,ConvMixer则patch的角度来说明划分patch有助于分类。 CoAtN…...
分享一下利用Vue表单处理实现复杂表单布局
在开发Web应用程序中,表单是非常常见的一种元素。而在某些情况下,我们需要实现一些更为复杂的表单布局,以满足业务需求。使用Vue.js作为前端框架,我们可以很方便地处理复杂表单布局,并且实现数据的双向绑定。 下面来将…...

SAP Fiori 问题收集
事务代码篇 启动工作台:/N/UI2/FLP 错误日志: /n/IWFND/ERROR_LOG 服务清单: /n/IWFND/MAINT_SERVICE 创建语义对象:/N/UI2/SEMOBJ 创建目录:/N/UI2/FLPD_CONF(cross-client)或 /N/UI2…...
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...

dedecms 织梦自定义表单留言增加ajax验证码功能
增加ajax功能模块,用户不点击提交按钮,只要输入框失去焦点,就会提前提示验证码是否正确。 一,模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...
macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用
文章目录 问题现象问题原因解决办法 问题现象 macOS启动台(Launchpad)多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显,都是Google家的办公全家桶。这些应用并不是通过独立安装的…...
Swagger和OpenApi的前世今生
Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章,二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑: 🔄 一、起源与初创期:Swagger的诞生(2010-2014) 核心…...
是否存在路径(FIFOBB算法)
题目描述 一个具有 n 个顶点e条边的无向图,该图顶点的编号依次为0到n-1且不存在顶点与自身相连的边。请使用FIFOBB算法编写程序,确定是否存在从顶点 source到顶点 destination的路径。 输入 第一行两个整数,分别表示n 和 e 的值(1…...

华硕a豆14 Air香氛版,美学与科技的馨香融合
在快节奏的现代生活中,我们渴望一个能激发创想、愉悦感官的工作与生活伙伴,它不仅是冰冷的科技工具,更能触动我们内心深处的细腻情感。正是在这样的期许下,华硕a豆14 Air香氛版翩然而至,它以一种前所未有的方式&#x…...

以光量子为例,详解量子获取方式
光量子技术获取量子比特可在室温下进行。该方式有望通过与名为硅光子学(silicon photonics)的光波导(optical waveguide)芯片制造技术和光纤等光通信技术相结合来实现量子计算机。量子力学中,光既是波又是粒子。光子本…...

Git 3天2K星标:Datawhale 的 Happy-LLM 项目介绍(附教程)
引言 在人工智能飞速发展的今天,大语言模型(Large Language Models, LLMs)已成为技术领域的焦点。从智能写作到代码生成,LLM 的应用场景不断扩展,深刻改变了我们的工作和生活方式。然而,理解这些模型的内部…...

基于PHP的连锁酒店管理系统
有需要请加文章底部Q哦 可远程调试 基于PHP的连锁酒店管理系统 一 介绍 连锁酒店管理系统基于原生PHP开发,数据库mysql,前端bootstrap。系统角色分为用户和管理员。 技术栈 phpmysqlbootstrapphpstudyvscode 二 功能 用户 1 注册/登录/注销 2 个人中…...

Android写一个捕获全局异常的工具类
项目开发和实际运行过程中难免会遇到异常发生,系统提供了一个可以捕获全局异常的工具Uncaughtexceptionhandler,它是Thread的子类(就是package java.lang;里线程的Thread)。本文将利用它将设备信息、报错信息以及错误的发生时间都…...