关于优化(c++)

下面是我给的一个终极优化代码(c++):
点我(GCC板块)
点我(G++板块)

这个优化代码长度为94行,分为两部分:GCC与G++;
其中GCC与G++的两部分除了GCC与G++的区别外完全重合;
下面给这其中一段打上注释:

#pragma GCC optimize(1)//o1优化
#pragma GCC optimize(2)//o2优化
#pragma GCC optimize(3)//03优化
#pragma GCC optimize("Ofast")//ofast优化
#pragma GCC optimize("inline")//inline中和
#pragma GCC optimize("-fgcse")//fgcse优化
#pragma GCC optimize("-fgcse-lm")//-fgcse-lm
#pragma GCC optimize("-fipa-sra")//除换
#pragma GCC optimize("-ftree-pre")//快速tree
#pragma GCC optimize("-ftree-vrp")//去重tree
#pragma GCC optimize("-fpeephole2")//flatco2优化
#pragma GCC optimize("-ffast-math")//数论优化
#pragma GCC optimize("-fsched-spec")//富硒优化
#pragma GCC optimize("unroll-loops")//图论plus优化
#pragma GCC optimize("-falign-jumps")//极优化
#pragma GCC optimize("-falign-loops")//图论重+排除
#pragma GCC optimize("-falign-labels")//lamb优化
#pragma GCC optimize("-fdevirtualize")//fugechar优化
#pragma GCC optimize("-fcaller-saves")//负优化排除
#pragma GCC optimize("-fcrossjumping")//极优化p+
#pragma GCC optimize("-fthread-jumps")//多重极优化
#pragma GCC optimize("-funroll-loops")//天花板算法优化
#pragma GCC optimize("-fwhole-program")//弗洛伊德优化
#pragma GCC optimize("-freorder-blocks")//半刻优化
#pragma GCC optimize("-fschedule-insns")//fschedule-insns优化
#pragma GCC optimize("inline-functions")//inline-functions优化
#pragma GCC optimize("-ftree-tail-merge")//-ftree-tail-merge优化
#pragma GCC optimize("-fschedule-insns2")//-fschedule-insns2优化
#pragma GCC optimize("-fstrict-aliasing")//-fstrict-aliasing优化

1.其中有些有特殊含义,单独存在,like:O1\O2\O3\OFAST等等,但是有有些事辅佐优化,像(我打圈圈的):查看图片请点我

2、注释是通用的,也只是把后面("")中的内容写一遍,给大家一个实际的优化例子,用一道题来证明(我打圈的地方是耗时):
不开优化:
图片传送门
只开O1,O2,O3:
图片传送门
只开GCC优化:
图片传送门
只开G++优化:

  • 19
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值