随笔分类 -  优化

摘要:1.rope 1.1头文件:对于这个类型,它所属的STL的库是<ext\rope>。内部实现可以认为是链表,时间复杂度大概是$O(n\sqrt n)$ 1.2命名空间,它所属的命名空间是__gnu_cxx。 1.3操作: rope<int> T; rope<char> S;T.size() //T中 阅读全文
posted @ 2020-07-15 10:53 神之右大臣 阅读(249) 评论(0) 推荐(0)
摘要:题面 结论:gcd(F[n],F[m])=F[gcd(n,m)];F[n]=a和F[n+1]=bF[n+2]=a+b,F[n+3]=a+2b,…F[m]=F[m?n?1]a+F[m?n]bF[n]=a,F[n+1]=b,F[m]=F[m?n?1]a+F[m?n]F[m]=F[m?n?1]?F[n]+ 阅读全文
posted @ 2019-09-18 18:02 神之右大臣 阅读(187) 评论(0) 推荐(0)
摘要:NO.10: 循环展开: 在缓存和寄存器允许的情况下一条语句内大量的展开运算会刺激 CPU 并发(蛤?这是个什么原理,算了,反正写了没坏处就这么写吧) NO.9: 特殊运算优化:(或许这真的没用) 取模优化: 绝对值优化: NO.8: 前置++/--运算符:(有利无弊) NO.7: if()else 阅读全文
posted @ 2019-08-02 16:22 神之右大臣 阅读(1397) 评论(1) 推荐(3)
摘要:重点:如果使用多个-O选项(包含或不包含级别编号),则最后一个选项是有效的选项。 例如:#pragma GCC optimize(2)#pragma G++ optimize(2)这就是传说中的氧气优化 以下总结来源于网络-O、-O1:优化编译需要更多时间,并且大型函数需要更多内存。使用-O选项,编 阅读全文
posted @ 2019-07-26 20:54 神之右大臣 阅读(3480) 评论(0) 推荐(0)
摘要:#include <vector> 1.支持随机访问,但不支持在任意位置O(1)插入; 2.定义: ```cpp vector<int> a; ``` 3.a.size()返回a的长度,a.empty()返回bool型用来判断是否为空; O(1) 4.a.clear()清除a;O(n) 5.a的迭代 阅读全文
posted @ 2019-07-19 13:58 神之右大臣 阅读(379) 评论(0) 推荐(0)