• 改善一下Int.Parse的性能


      偶尔吹毛求疵一下,众所周知,各种数值类型的Parse方法是很耗时间的。比如定义一个string s = "123",int n = 123,我们看s到n之间,没有任何理解障碍。但计算机就不行,它要一堆转换才能明白s到n的关系。下面写了一个自定义的类型转换函数。

      没有用Math.Pow函数求幂,速度提高了两倍;将自定义求幂函数与主函数合并一起,速度快了近一倍;使用while而不是for循环,速度略有提高。如果加上转换失败处理,总体速度大约比Int.Parse快一倍。

    Code

      但是,要将速度提高一个数量级,找不到思路了。又仔细想了一下,其实完全不用取幂的。

      这样速度又提高了近20%,看来传统方式潜力不大了,不知道是不是应该从指针直接操作内存入手呢?

  • 相关阅读:
    C语言 sprintf 函数 C语言零基础入门教程
    C语言 printf 函数 C语言零基础入门教程
    C语言 文件读写 fgets 函数 C语言零基础入门教程
    C语言 文件读写 fputs 函数 C语言零基础入门教程
    C语言 fprintf 函数 C语言零基础入门教程
    C语言 文件读写 fgetc 函数 C语言零基础入门教程
    C语言 文件读写 fputc 函数 C语言零基础入门教程
    C语言 strlen 函数 C语言零基础入门教程
    Brad Abrams关于Naming Conventions的演讲中涉及到的生词集解
    适配器模式
  • 原文地址:https://www.cnblogs.com/XmNotes/p/1604995.html
Copyright © 2020-2023  润新知