摘要: 关于输入 先来说说关于输入的事情。其实我最一开始并没有发现输入数字之间是用逗号隔开的,所以我是当做空格隔开来写的,后来发现以后匆忙改正,利用strtok与atoi函数从字符串中提取出用逗号隔开的数字。由于作业中的要求说任何输入错误都不能使我的程序崩溃,所以所有与输入有关的地方都加了一个判断,发生错误时将对应的错误打印出来并结束程序。这是输入部分的代码:if(fgets(buf, 256, in) == NULL){ printf("ERROR: file input error\n"); return 0; } h = atoi(buf); if(h == 0 && 阅读全文
posted @ 2013-09-30 21:01 Firedamp 阅读(158) 评论(1) 推荐(0) 编辑
摘要: 我的GitHub账户名是Firedamp。其实我最一开始看到最大子序列的和这个题目,最先想到的就是最简单的O(n^3)的算法,在课堂上教的也确实是这个程序,但是这种算法的时间复杂度必然是最高的,在数据比较大的时候需要付出很大的代价,于是我开始寻求新的方法,在参考了TA的博客之后,我对那种O(n)的算法产生了兴趣并仔细思考,具体如下:将输入的数据存入数组num,从头开始扫描,同时维护两个变量max与maxend,其中,扫描到num[i]时,max是序列num[0], num[1], ... , num[i-1]的最大子序列的和,maxend是序列num[0], num[1], ... , num 阅读全文
posted @ 2013-09-20 00:40 Firedamp 阅读(149) 评论(1) 推荐(0) 编辑