STL stack练习

C++STL之stack栈容器 - 数据结构教程 - C语言网C++STL之stack栈容器1.再谈栈回顾一下之前所学的栈,栈是一种先进后出的数据结构,而实现方式需要创建多个结构体,通过链式的方式进行实现,这是标准的栈的思路,而在STL中栈可以以更为简单的方式实现。2.头文件头文件#incl……icon-default.png?t=N7T8https://www.dotcpp.com/course/113

输入一个10进制正整数,输出它所对应的八进制数。

//十进制转八进制
//可以用栈来存储取模结果(先入后出)#include<iostream>
#include<stack>
using namespace std;void DEC2OCT(const int& DEC, stack<int>& OCT){int dec = DEC;while(dec){OCT.push(dec%8);dec = dec / 8;}
}// stack属于特殊的数据结构,没有迭代器
// 只能通过不断pop->访问top,实现数据读取
void show_stack(stack<int>& mystack){stack<int> tmp(mystack);//拷贝构造 深拷贝while(!tmp.empty()){cout<<tmp.top();tmp.pop();}cout<<endl;
}int main()
{int dec;stack<int> res;while(cin){cin>>dec;}DEC2OCT(dec, res);show_stack(res);return 0;
}

将十进制整数转换成二进制数

//十进制转二进制
//可以用栈来存储取模结果(先入后出)#include<iostream>
#include<stack>
#include<vector>
using namespace std;void DEC2BIN(const int& DEC, stack<int>& BIN){int dec = DEC;//判断dec是否为负数bool flag=0;if(dec<0){flag = 1;dec = -dec;}//判断dec是否为0if(!dec){BIN.push(dec);}while(dec){BIN.push(dec%2);dec = dec / 2;}//加负号if(flag){int val = BIN.top();BIN.pop();BIN.push(-val);}
}void show_stack(stack<int>& mystack){while(!mystack.empty()){cout<<mystack.top();mystack.pop();}cout<<endl;
}int main()
{int dec;vector<int> input;stack<int> res;while(cin>>dec){input.push_back(dec);}for(auto it=input.begin(); it!=input.end(); it++){dec = *it;DEC2BIN(dec, res);cout<<dec<<"-->";show_stack(res);}return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/289072.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

中央空调冷却塔循环水全自动加药装置PH电导率设备工作原理动画

一&#xff1a;全自动加药装置【概述】 随着在给水、排水处理过程中&#xff0c;常常投加各类化学药剂作为阻垢、杀菌灭藻、混凝、絮凝用&#xff0c;以达到净化水的目的。这些药剂有固体颗粒、液体&#xff0c;在投加过程中必须溶解、稀释及按配比定量投加方能取得最佳效果&am…

数据安全扫描仪荣膺网络安全优秀创新成果大赛优胜奖 - 凸显多重优势

近日&#xff0c;由中国网络安全产业联盟&#xff08;CCIA&#xff09;主办、CCI数据安全工作委员会中国电子技术标准化研究院等单位承办的“2023年网络安全优秀创新成果大赛”获奖名单公布。天空卫士数据安全扫描仪&#xff08;DSS&#xff09;产品获得创新成果大赛优胜奖。 本…

jenkins入门

文章目录 前言一、 jenkins的安装二、新建简单任务总结 前言 本篇文章是 jenkins 的入门级别案例&#xff0c;包括安装、基础概念介绍、新建简单任务 一、 jenkins的安装 下载 jenkins https://www.jenkins.io/download/ 当前案例下载的是 2.426.2 LTS 版本 下载安装jdk11 …

Leetcode—75.颜色分类【中等】

2023每日刷题&#xff08;六十五&#xff09; Leetcode—75.颜色分类 实现代码 class Solution { public:void sortColors(vector<int>& nums) {int red 0, white 0, blue 0;for(auto num: nums) {if(num 0) {red;} else if(num 1) {white;} else {blue;}}for…

Modbus转Profinet网关如何选型应该注意哪些事项

针对当今市场上众多Modbus转Profinet网关&#xff0c;怎样才能选择适合现场使用的Modbus转Profinet网关呢&#xff01; 在进行网关选型之前&#xff0c;一定要清楚设备支持哪些协议&#xff0c;如Modbus或Profinet&#xff0c;ModbusRTU&#xff0c;ModbusTCP;再或者是CANOPEN&…

pbootcms模板(自适应手机端)响应式相册图片网站模板 图片壁纸类网站源码下载

附详细搭建教程&#xff0c;赠送运营资料&#xff1a;SEO教程&#xff0c;友链交换&#xff0c;站长提交收录&#xff0c;优化推广联盟&#xff0c;自媒体等各大优质运营平台 (自适应手机端)响应式相册图片网站模板 图片壁纸类网站源码下载 PbootCMS内核开发的网站模板&#…

博客3万访问量了……

博客有3万访问量了呢。自从第一次用了赠送的1500的流量券&#xff0c;粉丝了从零突破了&#xff0c;到现在有150个粉丝了。 之前预想的写博客的初衷&#xff0c;也是记录自己的学习过程&#xff0c;毕竟好记忆不如烂笔头&#xff0c;记录下来就是长长久久的&#xff0c;随时可以…

图片编辑文字用什么软件?带你了解这5个

图片编辑文字用什么软件&#xff1f;在当今数字化的时代&#xff0c;图片编辑已经成为我们日常生活中不可或缺的一部分。有时候&#xff0c;我们需要在图片上添加文字&#xff0c;以增强图片的视觉效果或传达特定的信息。那么&#xff0c;有哪些可以在图片上编辑文字的软件呢&a…

快速解决msvcr100.dll丢失的方法分享,亲测有效的5个方法

在计算机使用过程中&#xff0c;我们可能会遇到各种问题&#xff0c;其中之一就是某些程序无法正常运行&#xff0c;提示“msvcr100.dll丢失”的错误信息。msvcr100.dll是Microsoft Visual C 2010运行库的一部分&#xff0c;它提供了许多常用的函数和类&#xff0c;这些函数和类…

CCF编程能力等级认证GESP—C++6级—20230923

CCF编程能力等级认证GESP—C6级—20230923 单选题&#xff08;每题 2 分&#xff0c;共 30 分&#xff09;判断题&#xff08;每题 2 分&#xff0c;共 20 分&#xff09;编程题 (每题 25 分&#xff0c;共 50 分)小杨买饮料小杨的握手问题 答案及解析单选题判断题编程题1编程题…

uml用例图是什么?有哪些要素?

UML用例图是什么&#xff1f; UML用例图&#xff08;Unified Modeling Language Use Case Diagram&#xff09;是一种用于描述系统功能和用户之间交互的图形化建模工具。它是UML的一部分&#xff0c;主要用于识别和表示系统中的各个用例&#xff08;用户需求或功能点&#…

(JAVA)-创建多线程的方式

1.继承Thread类 1.创建一个继承字Thread类的子类 2.重写Thread类的run方法 public class MyThread extends Thread{Overridepublic void run() {for (int i 0; i < 100; i) {System.out.println(getName()"hello");}} }3.创建Thread类的子类对象 4.通过子类对象调…