优化程序时间复杂度

本文探讨了在算法正确的基础上如何优化程序的时间复杂度,包括读写优化如使用getchar替代scanf,函数和常数优化如++/--操作的前缀优于后缀,以及循环和函数的优化策略。通过实例展示了优化效果,如使用inline、register关键字提升效率。
摘要由CSDN通过智能技术生成

优化程序时间复杂度

时间复杂度,是判断对错的一大关键因素。这里就在算法正确的前提下,尽最大可能使时间缩短。
友情链接:C++ 时间复杂度详解

目录

(1)读写优化

  1. 快读和快写
  2. cin cout加速——ios::sync_with_stdio(false)

(2)函数和常数优化

  1. ++ --优化——前缀比后缀快!
  2. 循环优化——register
  3. 函数优化——inline

统一测试平台

配件 详细信息
CPU i3 550 @ 3.19GHZ
内存 2GB ddr3 1333
测试平台 Dev-c++ 5.11

(1)读写优化

  1. 快读与快写
    快读:
    这里用getchar()代替scanf,利用getchar()将数字读入,第一个字符判断一下数字的正负,然后每读入一个数字就将当前数*10并加上它,若不是数字,就结束读入。
inline int read()
{
   
    int p = 1, a = 0;
	char c = getchar();
	while(c < '0' || c > 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值