|
发表于 2002-12-31 14:27:23
|
显示全部楼层
我也来凑个热闹:)
第一个问题我觉得面试官没有交代清楚,如果他作最起码的暗示"你可以先考虑从数学上优化"就好了,这样谁都可以看出1-2=-1, 3-4=-1, 5-6=-1...,如果没有任何暗示的话我觉得你的第二个版本就差不多了,否则我想在编程时"忠于原著"才是最重要的.还是老话"如果一个程序过两三个月后你自己都不知道写的是什么才是最糟糕的".我不是否认优化,但优化后的代码不能让人看不出题意来(虽然在这个例子上你的程序和考官的程序在结果上是一样的).当然的确有的代码片断要求"不惜一切代价"的优化,但这样的代码和所有的代码相比占?%呢?我觉得一个好的Coder会随着经验的增长自然的优化代码,但不会"不惜一切代价"的干这件事.
第二个问题考官的程序也不见得是最优(最快?)的,哼哼,在循环内进行这种操作算最优吗:*(array+row * col_width + col)? |
|