码迷,mamicode.com
首页 > 其他好文 > 详细

数独项目--项目改进:

时间:2018-04-12 23:29:40      阅读:238      评论:0      收藏:0      [点我收藏+]

标签:时间   table   数独   tab   ali   utc   函数   http   技术   

在运用输入输出I/O函数中,最开始是运用的fprintf进行写入,称为程序1.0版本,在进行性能诊断的时候,我发现在生成1000000个数独终局过程竟然总共耗费了5分钟!而用VS诊断中,光fprintf函数就耗费了99.9%的时间,所以我决定加以改进。

表一 输出字符串100万次的时间(单位:us)

测试序号

fprintf

fputs

1

645202

428150

2

645396

427962

3

644726

427396

4

645811

424421

5

639071

422962

 

对比不难发现,对于不需要替换变量的输出字符(串),使用fprintf速度还是慢了不少的。

 

而后的过程中,我用fputc对字符一个一个加入,大大缩短了时间的消耗。进一步的把生成1000000数独终局时间缩短到了20s,但是,再次运用性能诊断工具进行测试时发现,大部分的时间还是耗费在了打印的基础上, 也就是说明,打开访问文件指针的时间是非常长的,如果减少其访问次数,可以加以改进。

而后我决定,先把字符串进行储存,将一个数独终局的所有字符存在一个数组中,最后一次性用fputs进行文件输入,这样可以又一次减少时间损耗。

 

技术分享图片

数独项目--项目改进:

标签:时间   table   数独   tab   ali   utc   函数   http   技术   

原文地址:https://www.cnblogs.com/P814264306/p/8810864.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!