目录

  • ​​前言​​
  • ​​C++​​
  • ​​判断​​
  • ​​判断字符是否为大/小写​​
  • ​​判断是否为字符​​
  • ​​判断是否为数字​​
  • ​​判断是否为字符和数字​​
  • ​​转换​​
  • ​​字符转为大/小写​​
  • ​​char 转 int​​
  • ​​**转string​​
  • ​​vector​​
  • ​​vector求和​​
  • ​​vector 二维数组 求行最大/小值​​
  • ​​vector中查找最大/小值​​
  • ​​vector 清空vector​​
  • ​​合并两个vector​​
  • ​​移除vector最后一个元素​​
  • ​​at()​​
  • ​​queue​​
  • ​​queue 查询队列大小​​
  • ​​deque 双端队列​​
  • ​​priority_queue 优先队列​​
  • ​​unordered_set​​
  • ​​A/B 向上取整​​
  • ​​nth_element()​​
  • ​​String​​
  • ​​find()​​
  • ​​字符串转int​​
  • ​​find_first_of & find_last_of​​
  • ​​字符串中查找一个字符​​
  • ​​截取字符串:substr​​
  • ​​去掉字符串最后一个字符​​
  • ​​构造函数​​
  • ​​Python3​​
  • ​​enumerate​​

前言

哎,有时需要使用到一个函数时,老是想不起来

每次都需要重新查找,浪费一些时间

还是用篇博客记录一下吧 减少重复浪费的时间

C++

判断

判断字符是否为大/小写

  • isupper()
  • islower()

判断是否为字符

  • isalpha()

判断是否为数字

  • isdigit()
isdigit(char c)

判断是否为字符和数字

  • isalnum()

转换

字符转为大/小写

  • toupper()
  • tolower()

char 转 int

char c 
int(c) / c - '0' (为数字时)

**转string

  • to_string()

vector

vector求和

  • accumulate()
int ans = accumulate(a.begin(), a.end(), 0);

vector 二维数组 求行最大/小值

  • *max_element()
  • *min_element()

vector中查找最大/小值

  • *max_element()
  • *min_element()

vector 清空vector

  • clear()

合并两个vector

  • insert()
// 在ans后面添加vector tmp
ans.insert(ans.end(), tmp.begin(), tmp.end());

// 或者
v3.resize(v1.size()+v2.size());//合并前需要准备空间 合并v1 和 v3 结果放在v3中
merge(v1.begin(), v1.end(), v2.begin(), v2.end(), v3.begin());
printVector(v3);//1 1 2 3 4 4 5 5 6 7

vector<int> v4;//使用back_inserter不用提前准备空间 合并v1 和 v3 结果放在v4中
merge(v1.begin(), v1.end(), v2.begin(), v2.end(), back_inserter(v4));

移除vector最后一个元素

  • pop_back()
vector<int> a
a.pop_back()

at()

常用函数总结_.net

queue

queue 查询队列大小

  • queue.size()

deque 双端队列

常用函数总结_字符串_02

常用函数总结_字符串_03

常用函数总结_字符串_04

priority_queue 优先队列

常用函数总结_总结_05


常用函数总结_构造函数_06

priority_queue<int,vector<int>,greater<int> > a;
or
priority_queue<int,vector<int>,less<int> > a;

unordered_set

  • s.insert()
  • s.emplace()
  • s.find()
  • s.end()
  • s.count()

A/B 向上取整

1.0 == 1
1.1 == 2
1.6 == 2

ans = ​​(A + B - 1 ) / B​

nth_element()

常用函数总结_构造函数_07

常用函数总结_.net_08

大概意思就是快速排序,使得左边的数都小于设定idx,右边的数都大于idx对应的数(排序后),可以用于查找第几大的值(在一个数组中)

String

find()

string s = "hello world!";
if (s.find("a") == s.npos) {
cout << "404 not found" << endl;
}

字符串转int

  • stoi()

find_first_of & find_last_of

找字符串中第一个字符的index

int index1 = s.find_first_of(":");
int index2 = s.find_last_of(":");

字符串中查找一个字符

string s
char c
s.find(c) == string::npos
s.find(c) != string::npos

截取字符串:substr

substr(start, length)
#include <iostream>
using namespace std;
int main()
{
string s = "abcdefg";

// 从坐标0开始 截取长度为1的字符串
string s1 = s.substr(0,1);
string s2 = s.substr(0,2);

// 从坐标1开始 截取长度为3的字符串
string s3 = s.substr(1,3);
string s4 = s.substr(1,4);

// 从坐标为1开始 截取剩下的字符串
string s5 = s.substr(1);

cout << "s1 = " << s1 << endl;
cout << "s2 = " << s2 << endl;
cout << "s3 = " << s3 << endl;
cout << "s4 = " << s4 << endl;
cout << "s5 = " << s5 << endl;
return 0;
}

常用函数总结_构造函数_09

去掉字符串最后一个字符

常用函数总结_总结_10


构造函数

常用函数总结_字符串_11

参考:http://c.biancheng.net/view/1443.html

Python3

enumerate

a = [10,20,30,40,50]

for index, num in enumerate(a):
print("index = {}, num = {}".format(index, num))

常用函数总结_总结_12