http://www.cnblogs.com/newbe/p/4069834.html
http://www.cnblogs.com/newbe/p/4072005.html
求赞求祝福啊!!!
http://www.cnblogs.com/newbe/p/4058097.html
软工老师太狠心,还请可怜一下同课不同命的我们吧~点一下文章末尾的推荐什么的呗,有个回复什么的就更好了!
1、字符串处理
对于'?'的处理,只要在匹配的时候将代码由:if(str1[i]==str2[j]) 改为 if(str1[i]==str2[j] || str2[j]=='?')即可。
对于'*'的处理,可以将str2根据其中的'*'分为若干个片段,然后依次在str1中分别匹配这几个片段即可,而且对于这几个片段分别匹配,如果第k个片段在str1中匹配不到,后面也可以结束了。这里举例说明一下:对于str1="Ohyear.Totayisweekend!",str2=*ye*a*e*",实际上就是在str1中匹配"ye","a","e"这三个片段。
最后注意一下str2只有一段的情况和开头没有*结尾没有*的情况
2、后缀表达式求值
C2总是爱出这种奇怪输入的题,有什么意义呢?...
具体做法题目里面都说了,照着模拟即可,使用栈即可
注意的点:出现不明变量或者发生除0的情况要输出error,判0直接==就行,都不需要abs(x)<eps神马的..
表达式中的运算对象可以是数值或变量,即第一行可能出现-18,+18这样的数
sin,cos的运算需要*pi/180
至于当输出的值没有小数部分时,按整数格式输出,当输出的值有小数部分时,保留有效小数部分这个要求,用%g搞定妥妥的
3、Morse电码匹配
按照题目要求暴力模拟即可,好像没有哪里比较坑..
注意的点:字典表中可能包含有重复的单词
4、第N长的行
终于正常了一会..
一个数组存字符串p[][],另开个2000大小的数组len[]存每个长度对应最靠下的字符串的下标,然后倒过来从2000开始第k个有标记过的长度i输出p[ len[i] ]即可。
5、文件按行排序
开始看这题的时候还真被吓到了,感觉2000*500000*log(500000)差不多快10^9的复杂度,没想到无脑排序直接水过,简直逗