PAT降低程序运行时间的办法(C/C++)

刷了100题左右,总结了一些用于降低程序运行时间的办法

0.解题的思路是简单的

解题思路想的好,对题目是降维打击,什么也抵不上一个简单解决问题的思路。

1.使用复杂度更低的算法

对于同一个思路可能有多种算法,选择时间复杂度低的算法。这得看自己有没有学过更好的算法了。

2.空间换时间

哈希表、打表,就是空间换时间的方法

3.输入/输出使用scanf/printf,避免cin/cout

前者要快一些,很多超时的测试点,换成scanf/printf就能通过了

4.使用复合运算符+=、-=、/=、*=

5.循环中巧妙运用break

6.不要写出来死循环

写出来死循环必超时,没得说,如果前面实在没招了,看看是不是写出来死循环了吧!

 

 

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
单片机可以通过以下方式来减少程序运行时间: 1. 使用高效的算法和数据结构:使用高效的算法和数据结构可以减少程序的计算复杂度,从而降低程序的运行时间。 2. 紧凑的代码:单片机的内存和处理能力有限,因此使用紧凑的代码可以减少程序的代码大小,从而提高程序的运行效率。 3. 硬件加速器:单片机通常具有硬件加速器,如 DMA(直接内存访问)等,可以显著提高程序的运行速度。 4. 使用中断:中断可以在程序执行过程中随时中断并执行一个特定的程序,然后返回到原程序继续执行。使用中断可以提高程序的响应速度和效率。 5. 减少循环次数:减少循环次数可以降低程序的运行时间。可以通过使用更高效的算法或使用较少的循环来实现。 6. 减少函数调用次数:函数调用会占用一定的时间,因此减少函数调用次数可以提高程序的运行速度。 7. 使用移位运算:在单片机中,移位运算通常比乘除法和模运算更快,因此可以使用移位运算来代替乘除法和模运算。 8. 优化内存使用:在单片机中,内存访问速度较慢,因此可以优化内存使用来提高程序的运行速度。例如,可以使用局部变量来代替全局变量,减少内存访问时间。 需要注意的是,单片机的资源有限,因此在使用这些方式来减少程序运行时间时需要权衡资源的利用和程序的效率,以便达到最佳的性能和效果。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值