【刷题笔记1】

笔记1

cpp 复制代码
 string s;
    while(cin>>s);
    cout<<s.length()<<endl;

输入为hello nowcoder时,输出为8 (nowcoder的长度)

2.字符串的输入(有空格)

cpp 复制代码
 string a;
    getline(cin, a);
    cout<<a<<endl;

输入为ABCabc a

输出为ABCabc a

否则,就用一般性的cin>>a;cout<<a;

3.排序函数sort(first,last)

cpp 复制代码
//#include <algorithm>(要添加头文件)
 int a[10] = {9, 6, 3, 8, 5, 2, 7, 4, 1, 0};
    sort(a, a + 10);  // 10为元素个数

没有第三个参数,默认升序。

如果降序排序:

cpp 复制代码
//#include <algorithm>(要添加头文件)
sort(a, a + 10, greater<int>());  // 10为元素个数

4.合并键值对(map的使用)

cpp 复制代码
//#include <map>(要添加头文件)
  map <int,int> m;  //定义
   cin>>n;
   for (int i=0;i<n;i++)
   {
    cin>>x>>y;  //赋值
    m[x]+=y;     //合并
   }
   for(map<int,int>::iterator it=m.begin();it!=m.end();it++)
   {
    cout<<it->first<<" "<<it->second<<endl;
   }

5.字符与字符串的熟悉巩固

cpp 复制代码
string a1;
a1={'a','b','c'};  //等效于string a1={"abc"};
char a2=a1[1];//索引的形式
cout<<a1<<endl;//输出结果为abc



char b=66;
cout<<b<<endl;//输出结果为B

char b='66';
cout<<b<<endl;//输出结果为66

char b[]="student"  //这个叫字数组

6.stake(堆栈)的使用

定义: stack<数据类型> 容器名

常用函数:

empty() //判断堆栈是否为空

pop() //弹出堆栈顶部的元素

push() //向堆栈顶部添加元素

size() //返回堆栈中元素的个数

top() //返回堆栈顶部的元素

cpp 复制代码
#include<stack>   //头文件

int main() {
 string a;
 stack<string>s;   //定义堆栈的形式
 while(cin>>a)     //控制输入
 {    s.push(a);   }    //压栈

 while(!s.empty())    //判断非空
 {    cout<<s.top()<<" ";    //顶部元素
      s.pop();                     //循环弹出堆栈顶部元素
 }
}
  1. 容器(vector)的使用
    定义: stack<数据类型> 容器名
cpp 复制代码
vector<string>a1(n);
	int n;
	cin>>n;
    for(int i=0;i<n;i++)
    {
        cin>>a1[i];  //给容器赋值
    }
    sort(a1.begin(),a1.end());  //排序。begin/end 都是容器的常规操作

    for(int i=0;i<n;i++)
    cout<<a1[i]<<endl;
相关推荐
IT从业者张某某7 分钟前
信奥赛-刷题笔记-栈篇-T2-P1165日志分析0519
android·java·笔记
黑塞12315 分钟前
C++ Pimpl(Pointer to Implementation)设计思想
c++
byte轻骑兵17 分钟前
【Bluedroid】蓝牙HID Device virtual_cable_unplug全流程源码解析
c++·hid·bluedroid
四谷夕雨21 分钟前
C++数据结构——红黑树
开发语言·数据结构·c++
小王努力学编程25 分钟前
【数据库课程设计】网上投票管理系统
数据库·c++·qt·课程设计
oscar9991 小时前
1.3 C++之变量与数据类型
开发语言·c++
珹洺1 小时前
C++从入门到实战(十六)String(中)String的常用接口(构造接口,析构接口,迭代器,遍历修改,容量管理与数据访问)
开发语言·c++·算法·stl
字节高级特工1 小时前
【C++】vector模拟实现
开发语言·c++
逼子格1 小时前
硬件工程师笔记——三极管Multisim电路仿真实验汇总
笔记·嵌入式硬件·硬件工程·硬件工程师·三极管·硬件工程师真题·multisim电路仿真
CodeClimb1 小时前
【华为OD-B卷-打印文件 100分(python、java、c++、js、c)】
java·javascript·c++·python·华为od