项目简介
本项目是基于C++语言的动态图形处理系统,主要用于处理和分析大规模图形数据。系统可支持动态图形的构建、查询和分析,适用于处理复杂图形数据的应用场景。
项目的主要特性和功能
- 动态图形处理:支持动态添加和删除图形中的边,实时更新图形结构。
- 图形查询:可对特定顶点进行查询,返回与该顶点相关的k - truss结构。
- TCP索引构建:利用k - truss分解技术构建Triangle Connectivity Preserved (TCP)索引,提高查询效率。
- 准确率计算:支持计算查询结果的准确率,便于性能评估。
- 命令行参数配置:能通过命令行参数灵活配置运行时的各种参数,如时间间隔、边阈值等。
安装使用步骤
环境要求
- 需要Boost库(版本1.67.0)
- g++或gcc编译器(版本7.4.0或以上,支持C++11标准)
编译与运行
- 编译代码:
shell g++ train_and_test.cpp -o train_and_test -std=c++11
- 运行程序:
shell ./train_and_test 训练文件名 动态测试文件 块信息文件 所有块查询结果文件 逻辑/物理处理标示位(Y代表逻辑)时间间隔 边阈值 图密度 是否查询所有的点(Y代表是) 块标示的位数 对应的块标示的每个位的位置
示例:shell ./train_and_test file2.txt file1.txt block_info.txt result.txt Y 3 3 1 Y 5 3 4 5 6 7
参数说明
训练文件名
:包含训练数据的文件路径。动态测试文件
:包含动态测试数据的文件路径。块信息文件
:生成的块信息文件路径。所有块查询结果文件
:生成的查询结果文件路径。逻辑/物理处理标示位
:Y代表逻辑处理,N代表物理处理。时间间隔
:逻辑块的时间间隔。边阈值
:边的阈值。图密度
:图的密度。是否查询所有的点
:Y代表查询所有点,N代表不查询。块标示的位数
:块标识的位数。对应的块标示的每个位的位置
:块标识的每个位的位置。
准确率计算
若需计算查询结果的准确率,可修改train_and_test.cpp
文件:
- 注释掉第16行。
- 取消第17 - 324行的注释。
注意事项
- 确保所有输入文件路径正确,且文件格式符合要求。
- 运行时根据实际需求调整命令行参数。
- 若要计算准确率,请按上述步骤修改代码。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】