代码雷同检测

最近要老师要给学校用的在线测评系统(就是那种练习算法的oj)加上代码雷同检测功能
我现在初步就想到了可以调用git 这类工具的 git diff类似的功能,然后判断雷同率。
对这个不是很熟,有没有谁能提供一点思路,或者相关资料。谢谢


补充
可能刚刚没有说清楚,我不是要用软件或者IDE的比较功能,上面只是我自己的一个想法,我们的系统本来是同学们在网页上提交答案,然后后台运行并验证结果是否正确,类似与acm比赛用的oj,然后现在要在一个人提交代码上来之后,先判断是否和别人已经提交的相同,就是防止有人抄袭用的。

阅读 8k
3 个回答

可以使用shingling算法、simhash算法或bloom filter
应用包括网页判重、论文剽窃检测、重复数据删除等

很多IDE工具都自带了 diff功能

用beyondCompare 代码对比工具就能看到两个文件的异同!!!

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进