后缀语法树在代码抄袭检测中的应用与优化

需积分: 10 9 下载量 81 浏览量 更新于2024-08-10 收藏 2.29MB PDF 举报
"不足之处与下一步的工作-合成孔径雷达成像算法与实现" 这篇文档主要讨论的是程序代码抄袭检测的方法,特别是关注于合成孔径雷达成像算法的实现过程中的问题与未来工作方向。虽然标题提及的是“合成孔径雷达成像算法”,但文档实际内容并未涉及这一主题,而是专注于计算机程序代码的抄袭检测。 作者首先总结了工作内容,指出源代码抄袭对计算机辅助教学和软件行业的负面影响,并强调了研究抄袭检测技术的重要性。现有的研究主要集中在两个核心问题:源代码的标准化和匹配及相似性计算。作者提出了一种基于后缀语法树的抄袭检测方法,将C语言程序转化为后缀语法树,然后通过遍历树结构生成字符串序列,以实现代码的统一表示。这种方法在此基础上对GST算法进行了优化,提高了效率。此外,作者还设计并实现了一个实验系统,证明了这种方法在检测抄袭方面的有效性。由于这种方法不局限于源代码层面,能提取更多的语法和语义信息,因此检测效果良好,且由于ANTLR工具的支持,具备良好的可扩展性,可以应用于多种编程语言。 然而,作者也指出了现有工作的不足之处,包括对某些复杂抄袭手段(如数据结构变换、表达式拆分)的检测效果不理想,GST算法的空间复杂度未得到显著优化,导致内存消耗大,以及文法文件不完全支持C99标准。作者计划在后续工作中针对这些问题进行改进,完善文法文件,研究并修复算法的缺陷,以提升方法的综合性能。 该文探讨的是一种用于检测程序代码抄袭的创新方法,通过后缀语法树实现代码的统一表示,并提出了存在的问题和未来的改进方向。尽管标题与内容不符,但可以看出,作者在代码抄袭检测领域做出了实质性贡献,并对提升检测效果和方法的通用性展开了深入研究。