下载此文档

浅谈设计获胜策略.doc


文档分类:金融/股票/期货 | 页数:约28页 举报非法文档有奖
1/28
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/28 下载此文档
文档列表 文档介绍
设计获胜策略设计获胜策略一个好的取胜之道是制定在竞赛中指导你行动的策略。不管是在好的情况下依旧在坏的情况下,它将关心你决定你的行动。用这种方法你能够在竞赛中将时刻花费在解决编程问题上而不是试图决定下一步该干什么…这有点像预先计算好你面对各种情况的反应。心理上的预备也专门重要。竞赛中的策略首先通读所有的题目;草拟出算法,复杂度,数量,数据结构,微妙的细节,…集体讨论所有可能的算法——然后选择最“笨”但却可行的算法。(注:请注意这一点,对参赛选手来讲获奖确实是唯一目的)进行计算!(空间和时刻复杂度,同时加上实际期望和最坏情况下的数量)试图证明该算法错误(??原文是Trytobreakthealgorithm)——使用专门的(退化的)测试数据。将问题排序:依照你所需付出的努力,将最“短”(从原文理解是指解决问题费时最短)的问题排在前面。(从“短”到“长”的次序为:往常做过的,容易的,不熟悉的,困难的)编写程序解决一个问题——对每一道题而言,一次一道题确定算法构造专门情况的测试数据写出数据结构编写并测试输入子程序(编写额外的子程序来显示数据输入的正确性)编写并测试输出子程序逐步细化:通过写注释来刻划程序的逻辑轮廓一个部分一个部分地填充并调试代码完成代码使其正常运转,并验证代码的正确性(使用一般情况的测试数据)试图证明代码错误(??原文是Trytobreakthecode)——使用专门情况的测试数据来验证代码正确性逐渐优化——但足够了即可,同时保存所有的版本(使用困难情况的(即运行时刻长的)测试数据来计算出实际运行时刻)时刻安排策略和“故障操纵”方案制定一个打算决定在各种(可预测的!)故障发生时的行动;想象你可能遇到的问题并计算出你所希望做出的反应。核心问题是:“你何时花费更多的时刻在调试程序上,你何时放弃并接着做下一题?”。考虑以下问题:你差不多花费了多长时刻来调试它?你可能有什么样的BUG(BUG是指程序中的错误)?你的算法有错吗?你的数据结构需要改变吗?你是否对什么地点可能会出错有一些头绪?花费较短的时刻(20分钟)在调试上比切换去做其他不的事要好;然而你或许能够在45分钟内解决另一个问题(??原文是Ashortamount(20mins)ofdebuggingisbetterthanswitchingtoanythingelse;butyoumightbeabletosolveanotherfromscratchin45mins.)你何时返回到一个你先前放弃的问题?你何时花费较多的时刻优化一个程序,你何时放弃当前优化工作而切换去作其他事?从那个地点考虑出去(??原文是Considerfromhereout)——不记得先前的努力,着眼于今后:你如何才能就你目前所有的抓住下一个小时。在你上交你的答案之前列出一个校验表:在竞赛结束前五分钟冻结代码?(??原文是Codefreezefiveminutesbeforeendofcontest?)将所有的声明关闭。将调试输出关闭。确认输入输出文件名正确。确认输入输出格式正确。重新编译并再测试一次。将文件以正确的文件名复制到正确的位置(软盘)。提示和技巧假如能够就用暴力法(即穷举法)解决(注:难道将这条作为技巧,可见竞赛的目的确实是获奖,为此要“不择手段”。)键索引顺序搜索(KISS=KeyedIndexedSequentialSearch):简单确实是聪慧!(??原文是KISS:Simpleissmart!)提示:注意限制(在问题陈述中指明)假如能够给你带来方便的话就白费内存(假如你能侥幸逃脱处罚的话)不要删除你额外的调试输出,将它注释起来逐渐地优化,足够了即可保留所有的工作版本从编码到调试:空白是好的(??原文是whitespaceisgood)使用有意义的变量名不要重复使用变量逐步细化在写代码之前先写注释有可能的话尽量幸免使用指针幸免使用苦恼的动态内存:静态地分配所有的东西。尽量不要使用浮点数;假如你不得不使用,在所有使用的地点设置同意的误差(绝对不要测试两个浮点数相等)对注释的注释:不要写得太长,简洁的注解就能够了解释复杂的功能:++i;/*increasethevalueofiby1*/如此的注释是毫无意义的。解释代码中的技巧将功能模块划定界限同时document(??原文是Delimit&documentfunctionalsections)看起来是写给某个了解该问题但并不了解程序代码的聪慧人看的任何你不得不考虑的东西??原文是Anythingyoulookedatevenoncesaying,"nowwhatdoesthatdoagain?"总是注释数组的索引次序记录你每一次竞赛的情况:成功之处、犯的错误,以及何处你能够做得更好;利用这些记录来改进你的策略。复杂度基础和阶符号复杂

浅谈设计获胜策略 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数28
  • 收藏数0 收藏
  • 顶次数0
  • 上传人﹎多多Dad
  • 文件大小53 KB
  • 时间2020-02-28