面试:C++输入数据
最近在做笔试题,相比与leetcode,笔试题都是要自己写输入输出的,每次在这里都浪费了不少时间,这篇文章总结了一下在C++中怎么向数组中输入数据。
1. 先输入数组大小,然后输入数据数据,中间以空格或者'\n'字符隔开
/*
* 两种输入方式
* 3 ↙
* 1 2 3 ↙
*
* 3 ↙
* 1
* 2
* 3
* ↙
*/
vector<int> inputArray(){
int size = ;
cin >> size;
vector<int> inputs;
for(int i=;i<size;i++){
int tmp;
cin >> tmp;
inputs.push_back(tmp);
}
return inputs;
}
2、输入以','字符分割的数据,思路将输入保存为字符串,然后转换为具体的数据
// 1,2,3,4,5 ↙
vector<int> inputArray2(){
string inputs;
cin >> inputs;
//split
vector<string> splits;
int start = ;
for(size_t i=;i<inputs.size();i++){
if(inputs[i] == ','){
splits.push_back(inputs.substr(start,i-start));
start = i+;
}
}
if(start != (int)inputs.size()){
splits.push_back(inputs.substr(start));
}
vector<int> res;
for(string s:splits){
res.push_back(std::stoi(s));
}
return res;
}
3.输入无限长度的数据,数据之间用空格分开,回车结束
// 输入无限长度的数组 1 2 3 4 5 6 ...
vector<int> inputArray3(){
vector<int> inputs;
int a;
do{
cin >> a;
inputs.push_back(a);
}while(getchar() != '\n');
return inputs; }
4. 和方法1类似,输入二维数组
vector<vector<int>> inputMatrix(){
int m,n;
cin >> m >> n;
vector<vector<int>> matrix(m,vector<int>(n,));
for(int i=;i<m;i++){
for(int j=;j<n;j++){
int a;
cin >> a;
matrix[i][j] = a;
}
}
return matrix;
}
面试:C++输入数据的更多相关文章
- 【干货分享】前端面试知识点锦集01(HTML篇)——附答案
一.HTML部分 1.浏览器页面有哪三层构成,分别是什么,作用是什么? 构成:结构层.表示层.行为层分别是:HTML.CSS.JavaScript作用:HTML实现页面结构,CSS完成页面的表现与风格 ...
- 机器学习&数据挖掘笔记_16(常见面试之机器学习算法思想简单梳理)
前言: 找工作时(IT行业),除了常见的软件开发以外,机器学习岗位也可以当作是一个选择,不少计算机方向的研究生都会接触这个,如果你的研究方向是机器学习/数据挖掘之类,且又对其非常感兴趣的话,可以考虑考 ...
- c++ 面试注意的问题
1.输入数据合法性检查 2.变量命名 3.边界数据的检查 4.函数名,递归的思想[尤其是树.链表] 企业喜欢的人:聪明 努力 基础好 面试时不要主动请求提示,做题要大胆地想,及时与面试官沟通,防止想很 ...
- [Java面试三]JavaWeb基础知识总结.
1.web服务器与HTTP协议 Web服务器 l WEB,在英语中web即表示网页的意思,它用于表示Internet主机上供外界访问的资源. l Internet上供外界访问的Web资源分为: • 静 ...
- 【经验之谈】前端面试知识点总结(HTML相关)——附答案
目录 一.HTML部分 1.浏览器页面有哪三层构成,分别是什么,作用是什么? 2.HTML5的优点与缺点? 3.Doctype作用? 严格模式与混杂模式如何区分?它们有何意义? 4.HTML5有哪些新 ...
- .NET软件工程师面试总结
1.手写画出系统架构图,系统代码架构,有什么技术难点? 2.手写画出系统部署图 CDN(一般购买别人的服务器会自动CDN,他们自己配置就OK啦) 3.asp.net 的session怎么实现会话共享 ...
- 机器学习&数据挖掘笔记(常见面试之机器学习算法思想简单梳理)
机器学习&数据挖掘笔记_16(常见面试之机器学习算法思想简单梳理) 作者:tornadomeet 出处:http://www.cnblogs.com/tornadomeet 前言: 找工作时( ...
- Java面试葵花宝典
面向对象的特征有哪些方面 1. 抽象:抽象就是忽略一个主题中与当前目标2. 无关的那些方面,3. 以便更充分地注意与当前目标4. 有关的方面.抽象并不5. 打算了解全部问题,而6. 只是选择其中的一 ...
- [转]机器学习&数据挖掘笔记_16(常见面试之机器学习算法思想简单梳理)
机器学习&数据挖掘笔记_16(常见面试之机器学习算法思想简单梳理) 转自http://www.cnblogs.com/tornadomeet/p/3395593.html 前言: 找工作时(I ...
随机推荐
- Python自动化开发 - 常用模块(一)
本节内容 1.模块介绍 2.time&datetime模块 3.random模块 4.os模块 5.sys模块 6.json&pickle模块 7.logging模块 一.模块介绍 模 ...
- Android-Kotlin-抽象类与多态的表现
选择包名,然后右键: 选择Class类型,会有class: 选择File类型,不会自动有class: 目录结构: 定义描述抽象类 Person人类: package cn.kotlin.kotlin ...
- mysql 返回结果按照指定的id顺序返回
mysql> ,,,,) order by field(id,,,,,) limit ,; +----+-------+------+ | id | name | sex | +----+--- ...
- ABP框架入门踩坑-配置数据库表前缀
配置数据库表前缀 ABP踩坑记录-目录 本篇其实和ABP关系并不大,主要是EF Core的一些应用-.-. 起因 支持数据库表前缀应该是很多应用中比较常见的功能,而在ABP中并没直接提供这一功能,所以 ...
- 解决SHAREJPOINT 跨域问题
目前仅支持IE7/8不支持IE11和谷歌 对于跨域情况,目前找到如果jquery是get获取方式,可以配置web.config相关属性,具体powershell命令如下: Add-PSSnapin M ...
- ReactNatvie遇到的错误
1:新版的React包中没有包含PropTypes,如果使用需要从‘prop-types’包中导入. 2: 'prop-types'包中直接定义‘PropTypes.style’是无效的,需要使用‘P ...
- hashMap tableSizeFor 实现原理
基于jdk1.8 hashMap实现,要求容量大小是2的整次方,例如:2/4/8/16/32/64/128...,而不能是中间的某个值.这是为什么呢? map是数组+链表的数据结构,读写数据都需要首先 ...
- CGI + FastCGI(PHP-FPM)联系与区别 【图解 + 注释】
〇.背景 参考了几篇文章,总结成 图解 + 注释 方便以后查阅. 参考资料: 1.https://www.zhihu.com/question/19582041 2.https://segmentfa ...
- .gitignore总结
git进行管理时,.gitignore是必不可少的,可以指定不需要提交到仓库的资源.最好在git init之后就创建 .gitignore文件,这是个好习惯,常用的配置及说明如下:
- Java入门开发POI读取导入Excel文件
Apache POI是Apache开发的开源的跨平台的 Java API,提供API给Java程序对Microsoft Office格式档案进行各种操作. POI中Excel操作很简单,主要类有 HS ...