- 博客(11)
- 收藏
- 关注
原创 关于位运算
二进制的位运算 与(and)& 或(or)| 非(not)~ 异或(xor)^ 二进制左移 (谁<<1位) 二进制右移 (谁>>n位) 二进制符号的优先级 (下图转载) (6条消息) <<、>>、+、-以及位运算 运算符的优先级关系_岁忧的博客-CSDN博客 优先级从左到右依次降低 ...
2021-08-04 10:13:15 248
原创 栈stack
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <iostream> #include <stack> using namespace std; int main() { //stack的特点是“先进后出”,有点像泡腾片 stack<int>s; s.push(1);//放入1 (入栈) s.top();//返回顶端元素 s.pop();//删除顶端元素 (出栈) s..
2021-08-03 22:58:42 59
原创 优先队列priority_queue
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <iostream> #include <queue> #include <functional> using namespace std; int main() { //priority_queue与queue区别不大,只有排序的区别 被称作优先 priority_queue <int, vector<int>,.
2021-08-03 22:58:01 68
原创 一些容器相关结论
在实际使用时,如何选择这三个容器中哪一个,应根据你的需要而定,具体可以遵循下面的原则: 1. 如果你需要高效的随即存取,而不在乎插入和删除的效率,使用vector 2. 如果你需要大量的插入和删除,而不关心随即存取,则应使用list 3. 如果你需要随即存取,而且关心两端数据的插入和删除,则应使用deque。 // sort sort(a,a+n,cmp) cmp为自己定义的bool函数 //相关sort函数 局部排序 partial_sort(a,a+need,a+n); partial_...
2021-08-03 22:57:18 80
原创 链表list
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <iostream> #include <functional> #include <list> using namespace std; int main() { list<int> l1; //空列表 list<int> l2(2, 0);//有2个元素0的列表 list<int>::itera.
2021-08-03 22:56:41 59
原创 队列queue
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <iostream> #include <queue> using namespace std; int main() { //queue的特点是“先进先出”,排队 queue<int>q; q.push(1);//放入1 q.front();//返回队首元素 q.back();//返回队末元素 q.pop();//删除队首元素.
2021-08-03 22:56:07 61
原创 容器vector
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <iostream> #include <vector> #include <algorithm> using namespace std; int main() { //vector用于频繁的读取 可直接访问 vector<int>v; v.push_back(1);//尾部添加; v.insert(v.begi.
2021-08-03 22:55:28 40
原创 容器set
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <iostream> #include <set> using namespace std; int main() { //集合,快速查找,不允许重复 set<int>s; set<int>::iterator it; s.clear();//清除 s.empty();//判断是否为空 s.insert(1);//写.
2021-08-03 22:54:51 48
原创 容器map
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <iostream> #include <map> using namespace std; int main() { map<char, int>ma;//定义map 左key右值 map<char, int>::iterator it;//迭代器 map<char, int>::reverse_ite.
2021-08-03 22:54:23 64
原创 数学相关知识
1.质数 定义:若一个正整数除了1和他自身外无法被其他自然数整除,该数则称为质数(又名素数),否则称为合数(又名合成数). 注意:1不是质数也不是合数 质数的判定:如果在2~√n 内的整数能找到整除n的整数,则该数为合数,否则为质数. 质数的筛选:根据素数的倍数不是素数的原理,每次遍历到素数,其倍数都被标记为合数.根据这个原理便可以得到一定量的素数 利用埃氏筛(O(nlognlogn))可获得 //埃氏筛 const int maxn = 1e6 + 10; int p...
2021-08-03 20:48:00 116
原创 有关欧拉函数
欧拉函数:就是对于一个正整数n,小于n且和n互质的正整数(包括1)的个数,记作φ(n) 。 举例 :8的欧拉函数是4(1,3,5,7),5的欧拉函数是4(4,3,2,1)。 欧拉函数的通式:φ(n)=n*(1-1/p1)(1-1/p2)(1-1/p3)*(1-1/p4)……(1-1/pn) 其中p1, p2……pn为n的所有质因数,n是不为0的整数。φ(1)=1(唯一和1互质的数就是1本身)。 素数n的欧拉函数是n-1(因为素数与其他数字都互质,那么比他小的互质的正整数就是n-1个)。 偶
2021-08-03 13:06:06 1057
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人