Giter VIP home page Giter VIP logo

25th-engineer / string-pattern-match-qt6 Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 9.36 MB

C++实现了4个经典的字符串模式匹配算法:BF、RK、KMP和BM,并用Qt6完成了GUI。(合肥工业大学《程序设计与算法训练》(即《数据结构》课程设计)的题目“字符串模式匹配算法比较”可以参考本项目。)Four classical string pattern matching algorithms: BF, RK, KMP and BM are implemented using C++ and GUI is completed by Qt6.

License: MIT License

CMake 3.06% QMake 2.18% C++ 94.77%

string-pattern-match-qt6's Introduction

  C++实现了4个经典的字符串模式匹配算法:BF、RK、KMP和BM,并用Qt6完成了GUI。为了便于直观有效地对4个算法进行测试和对比,设计了3种测试模式:
  1. 单处理;
    使用一个测试数据对单个算法进行测试,查看耗时以及结果是否正确;
  2. 批处理1;
    使用整个数据集对单个算法进行测试,对比不同数据量的耗时;
  3. 批处理2:
    使用一个测试数据对4个算法进行测试,对比不同算法的耗时。

  测试文件老是上传失败,需要的朋友自己从link.txt中提供的链接下载。

  PS:合肥工业大学《程序设计与算法训练》(即《数据结构》课程设计)的题目“字符串模式匹配算法比较”可以参考本项目。(毕业老学长奉上,蛤蛤蛤!)

  下面的图片除了第1张为程序结构图,其余均是程序截图或生成的坐标图。

  Machine Translation Contents with a Little Personal Polished:

  Four classical string pattern matching algorithms: BF, RK, KMP and BM are implemented using C++ and GUI is completed by Qt6. What's more, In order to test and compare the four algorithms intuitively and effectively, three test modes are designed:

  Single Mode:
  Use single testbench to test one algorithm, and then to check the time-consuming and whether the results are correct;

  Batch Mode 1:
  Use the whole data set to test a single algorithm, and then compare the time-consuming over different amounts of data;

  Batch Mode 2:
  Use single testbench to test the four algorithms, and then compare the time-consuming of each algorithms.

  If you need the testbench used during development, please download them yourself from the link provided in link.txt.

  The following pictures except the first one is the program structure diagram than the rest are program screenshots or generated coordinates.


Figure 1


Figure 2


Figure 3


Figure 4


Figure 5


Figure 6


Figure 7


Figure 8


Figure 9


Figure 10


Figure 11


Figure 12


Figure 13


Figure 14


Figure 15


Figure 16


Figure 17


Figure 18


Figure 19


Figure 20


Figure 21


Figure 22


Figure 23


Figure 24


Figure 25


Figure 26


Figure 27

string-pattern-match-qt6's People

Contributors

25th-engineer avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.