
c++实用语法
minjiex
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
sort的使用
sort的使用 sort(a,a+5)//排序a首元素到a+4地址所在元素; sort 快排和插排 stable_sort 归并 partail_sort 堆排 sort默认从小到大,也可自行定义com stable_sort 与sort用法相同 sort(a,a+5,) sort(a,a+5,less()) sort(a,a+5,greater()) com原创 2018-01-28 12:20:56 · 324 阅读 · 0 评论 -
c++ 之 vector技巧&避坑&提高效率
参考https://www.cnblogs.com/zsq1993/p/5929806.html 这位博主内容很详细 结合自己知识,整理如下,更方便使用,增加了要避开的坑和使用技巧 容器的使用 #include { 初始化 //vector从0下标开始; vector v, v1;//空容器 vector v(3)//包含3个元素; vector v(3,9)//包含原创 2018-01-27 16:17:16 · 3878 阅读 · 0 评论 -
bitset c++
bitset c++ #include 0101101010//一个bitset类型的变量 9876543210//对应元素的下标 初始化 using std :: bitset bitset bit1("11101")//最简单的初始化 !!! bit1 = bit2//没有这个操作,编译不通过 bitset b; //b有n位,每位都为0 bitset b原创 2018-01-30 00:28:49 · 248 阅读 · 0 评论 -
set使用技巧
include { set中会自动排序,由小到大,插入时,红黑树 set s;// char string int arr[5] = {0,1,2,3,4}; set iset(arr,arr+5); vector::iteartor it; s.begin() //s首地址 *s.begin()//首元素; s.begin()++//允许原创 2018-01-28 12:20:22 · 322 阅读 · 0 评论 -
Bellman-Ford佛洛依德算法 负权值 最短路 模版
1.n个点,m条边,含有负边。 1.外层循环n-1次,内层循环m次,进行松弛 3.添加check变量判断本轮是否进行松弛了,如果未进行松弛则可以提前退出循环 4.处理有向边时,注意u[i]和v[i]的顺序不要颠倒 #include <iostream> using namespace std; int main() { int dis[20001] = {0}, u[20000...原创 2018-10-22 08:05:37 · 815 阅读 · 0 评论 -
优先队列使用
优先队列详解和使用 1.优先队列和普通队列相似,但是出队按照优先级高的先出对,进队和出队时间复杂度都为O(log2n)。 2.因为内部原理是用堆实现,插入时候把堆调整(花费o(log2n)),删除时直接删除堆顶(O(1)),然后把剩下元素调整(O(long2 n))。把一个原始无序集合,通过完全二叉树够造成堆花费O(nlog2n)。 3.(1).适用于动态添加和删除时,实时维护最值。(2).也可用...原创 2018-10-19 23:28:09 · 419 阅读 · 2 评论 -
双向队列 deque 和 list
双向队列 deque 和 list 效率l介于ist和vector之间,支持随机访问(比vector效率低,比list高),支持两端插入删除(效率比list低,比vctor高) 内部分块存储,结构比较复杂,不做深究 1、需要高效的随即存取,不关心插入和删除的效率,用vector 2、大量的插入和删除,不关心随即存取,用list 3、既需要随即存取,又要两端数据的插入和删除,用deque。 双向队列...原创 2018-10-22 19:17:11 · 515 阅读 · 0 评论 -
高精度加法和乘法
高精度加法和乘法 加法(只支持自然数的大整数相加) 1.通过模拟加法算式,从右往左依次累加,如果两个不一样长,要在短的前面用0补上。 2.取余保留,除10进位,注意最后一位如果有进位要把进位加上去。 乘法(只支持自然数的大整数相乘) 1. 通过模拟乘法算式,从右往左数的话,s1[i] * s2[j] 贡献给了ans[i+j]。 2.所以为了方便从右往左数, 先把s1,s2翻转,且乘法后的结果...原创 2018-10-27 23:52:13 · 376 阅读 · 0 评论