博客
关于我
1015 德才论
阅读量:570 次
发布时间:2019-03-11

本文共 651 字,大约阅读时间需要 2 分钟。

我在尝试解决编程问题时,遇到了运行超时的问题,于是我仔细检查了我的代码。

首先,复查了所有的头文件,确认所有必要的头文件已被包含,包括了iostream、algorithm、string,这些是正确的。

接着,我注意到定义的Student结构体和Compare函数,形式上没有问题,但为了确保排序的正确性,我需要在实际运行中进行测试,确认每个学生的级别划分是否按预期进行。

在处理输入部分时,读取了n、l、h三个变量。\直到我意识到n的读取可能有问题,特别是如果n的值很大时,可能会导致数组过大的问题。

为了优化代码性能,我将stu数组的大小从100001缩小到1000,这样在DEV环境中就能正常运行,而不影响PTA的判断结果。虽然这不会改变程序的逻辑,但有助于快速调试和解决问题。

此外,我在读取学生数据时,遇到了一些判断逻辑的问题,例如分界条件中的符号使用不正确,可能误解了条件。这促使我仔细检查了所有的条件语句,确保德分、才分等条件能够准确分配学生级别。

在优化代码时,我也考虑到变量命名的一致性和符号习惯,改变了一些变量的命名,以便代码更易读和维护。

最终,通过逐步缩减数组大小,测试了不同情况的运行效果,确保程序能够在更小的数据范围内高效运行。同时,我试图简化Compare函数,减少条件判断次数,以提升排序的效率,从而减少超时的可能性。

总结起来,这次的问题主要是由于数组过大导致的性能消耗,通过缩小数组大小,快速解决了问题,同时也强调了变量命名的一致性和代码可读性对于问题解决的重要性。

转载地址:http://umsvz.baihongyu.com/

你可能感兴趣的文章
Mysql下载以及安装(新手入门,超详细)
查看>>
MySQL不会性能调优?看看这份清华架构师编写的MySQL性能优化手册吧
查看>>
MySQL不同字符集及排序规则详解:业务场景下的最佳选
查看>>
Mysql不同官方版本对比
查看>>
MySQL与Informix数据库中的同义表创建:深入解析与比较
查看>>
mysql与mem_细说 MySQL 之 MEM_ROOT
查看>>
MySQL与Oracle的数据迁移注意事项,另附转换工具链接
查看>>
mysql丢失更新问题
查看>>
MySQL两千万数据优化&迁移
查看>>
MySql中 delimiter 详解
查看>>
MYSQL中 find_in_set() 函数用法详解
查看>>
MySQL中auto_increment有什么作用?(IT枫斗者)
查看>>
MySQL中B+Tree索引原理
查看>>
mysql中cast() 和convert()的用法讲解
查看>>
mysql中datetime与timestamp类型有什么区别
查看>>
MySQL中DQL语言的执行顺序
查看>>
mysql中floor函数的作用是什么?
查看>>
MySQL中group by 与 order by 一起使用排序问题
查看>>
mysql中having的用法
查看>>
MySQL中interactive_timeout和wait_timeout的区别
查看>>