第196章我有个特别牛逼的舍友(第2/3页)

作品:《学霸的星辰大海

代码界的江湖高手吴斌已经在各大论坛见识了不少,不过他现在身在科大,会遇到什么样的道行的黑山老妖还真不知道。</p>

“真聪明啊……”</p>

刷完几组代码,吴斌嘴角翘了翘,这个写代码的人明显知道会有人检测代码的相似度,所以故意把代码给改复杂了,如果要人工一一来鉴定的话,的确费时费力。</p>

另外里面还有不少直接把代码拷贝过来的同学,估计都是些抱大腿,可以说完全是不劳而获,虽然说这是人的天性,但肯定不是什么好行为。</p>

‘不过这个实验设计的的确有些枯燥,估计大多数同学没兴趣认真做吧。’</p>

但错的就是错的,养成这种习惯对于学业肯定没有任何好处。</p>

“怎么样,有难度吗?”站在身后的唐成文问。</p>

“还行,给我点时间就好。”</p>

“那就太好了。”唐成文说完小声问李岩:“你还认识信院的朋友?”</p>

“哦不是,他是我同学,物院的。”</p>

“物院现在这么全能了吗!?”唐成文惊道。</p>

“没,就他一个,他兴趣爱好比较广泛。”</p>

“优秀……”</p>

两人聊天间吴斌正做着问题分析,从本质上来说,检查抄代码的问题其实是给定两份代码P1和P2。</p>

要求 d(P1,P2)它们之间的“距离”,距离越小则抄袭嫌疑越大。</p>

解决问题的前提自然是找到问题,目前这么多代码看下来,吴斌差不多在心里做了个总结。</p>

用的最多的方法是修改注释、变量名、大小写等无关信息。接着是代码重排、风格修改等,例如用indent工具过滤一下代码,要知道每个人都有自己的编程风格,这么一改,肉眼看起来可就大不一样了。</p>

另外两种比较有技术性,一是增加或删除代码中的冗余成分,例如增加一些没用的代码,或者删掉一些打印的调试信息。</p>

二是对数据结构、循环、局部代码做等价的重写,拆分、合并函数。</p>