优化代码

简介: 下图是老师在标准库中看到的一段代码的伪代码。问我们怎么优化。老师说,c++程序员要对性能有敏感性。有时候开源库性能进行了提升,并不一定是因为有了什么大改进,可能只是因为改进了类似下图中的代码而已。

下图是老师在标准库中看到的一段代码的伪代码。问我们怎么优化。

老师说,c++程序员要对性能有敏感性

有时候开源库性能进行了提升,并不一定是因为有了什么大改进,可能只是因为改进了类似下图中的代码而已。

在这里感谢群里的小伙伴帮忙提出很多宝贵的修改意见。

 

优化点:

1、用底层为hash表的unordered_map,而不是用底层是红黑树的map。查找和插入的时间复杂度会降低。

2、既然用了map,就不要用for循环来查找,直接用map.find()方法

3、尽量不使用=,会有不必要的临时变量。用move好一些。(偷偷查了一下,move是c++11的新特性,博主又发现了一片未知领域

4、for循环的话,变量应尽量声明为引用

for (auto &obj : object)

不需要改变元素内容的话加上const就更好了
 

相关文章
|
4月前
|
设计模式 存储
代码优化设计问题之优化枚举的getByName方法以提高效率问题如何解决
代码优化设计问题之优化枚举的getByName方法以提高效率问题如何解决
|
4月前
|
JSON 前端开发 Java
代码的应用重构问题之BaseActivity类的主要功能问题如何解决代码缩减的主要问题如何解决
代码的应用重构问题之BaseActivity类的主要功能问题如何解决代码缩减的主要问题如何解决
|
5月前
|
测试技术 持续交付 API
Airtest脚本的重构与优化:提升测试效率和可读性
通过对Airtest脚本的重构与优化,我们不仅能提升测试效率,还能增强脚本的可读性和可维护性。这些改进将有助于应对不断变化的测试需求,为保证软件质量提供坚实的支持。记住,优化是一个持续的过程,定期回顾和调整测试脚本是保持测试项目健康的关键。希望以上分享能帮助大家在自动化测试的道路上更进一步。
|
6月前
|
C语言
优化后的代码,
优化后的代码,
51 1
|
5月前
|
存储 缓存 算法
漫谈代码优化与效率提升
在当今快节奏的技术发展中,对于程序员来说,不仅仅是写出能运行的代码,更重要的是如何写出高效、优雅的代码,以提升工作效率和代码性能。本文从优化思路、技巧和实践三个方面探讨了代码优化与效率提升的方法,旨在为开发者提供一些实用的指导和启发。
|
6月前
|
C++
代码优化方式一
代码优化方式一
|
Java 编译器 应用服务中间件
代码开发优化细节
带有final修饰符的类是不可派生的。在Java核心API中,有许多应用final的例子,例如java.lang.String,整个类都是final的。为类指定final修饰符可以让类不可以被继承,为方法指定final修饰符可以让方法不可以被重写。如果指定了一个类为final,则该类所有的方法都是final的。Java编译器会寻找机会内联所有的final方法,内联对于提升Java运行效率作用重大,具体参见Java运行期优化。此举能够使性能平均提高50% 。
209 2
代码开发优化细节
|
缓存 Java 编译器
探究Java方法的优化与最佳实践:提升性能与代码可维护性
探究Java方法的优化与最佳实践:提升性能与代码可维护性
142 0
优化if-else代码的几种方案
优化if-else代码的几种方案
|
测试技术
代码为啥不能过度优化
代码为啥不能过度优化
77 0