# MyAlgorithm **Repository Path**: Dollhearted/my-algorithm ## Basic Information - **Project Name**: MyAlgorithm - **Description**: 算法设计与分析小组作业 - **Primary Language**: C++ - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-21 - **Last Updated**: 2026-06-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 代码文件说明 //包括文件名称、功能、输入的参数及格式、输出文件名称及格式 1.源文件 knapsack_subset_sum.cpp 功能:基于动态规划算法,实现 0/1 背包问题、子集和数问题求解;包含数据集读取、算法求解、运行计时、结果校验、方案回溯、信息打印全套功能。 输入参数及格式:程序接收数据集目录路径作为运行参数,默认读取项目 data 目录下的测试文件。 输出格式:控制台依次输出两类问题的测试信息,包含数据集名称、数据规模、求解结果、运行耗时、最优解匹配状态;可重定向输出至文本文件保存完整实验日志。 2.可执行程序 test_exp 由 knapsack_subset_sum.cpp 编译生成,存放于 bin 目录,为实际运行的应用程序。 3.批量运行脚本 run_all.sh 功能:自动化创建结果目录、清空历史文件、批量执行测试程序、统一保存完整实验结果。 运行方式:终端赋予执行权限后直接运行,自动生成结果文件。 # 数据文件说明 //包括文件名称、来源、格式及主要规模参数 数据来源:FSU 标准算法测试数据集 数据存放目录:./data 一、0/1 背包问题数据集 文件命名规则:knapsack_编号_后缀.txt knapsack_p01_c.txt:存储背包容量,规模参数:物品数 n=10,背包容量 C=165 knapsack_p01_w.txt:存储 10 件物品重量,每行单个整数 knapsack_p01_p.txt:存储 10 件物品价值,每行单个整数 knapsack_p01_s.txt:标准最优选择方案,0/1 标记序列 knapsack_p02_c.txt:存储背包容量,规模参数:物品数 n=5,背包容量 C=26 knapsack_p02_w.txt:存储 5 件物品重量,每行单个整数 knapsack_p02_p.txt:存储 5 件物品价值,每行单个整数 knapsack_p02_s.txt:标准最优选择方案,0/1 标记序列 knapsack_p03_c.txt 及同系列文件:多组扩展测试用例,依次对应不同物品数量与背包容量。 二、子集和数问题数据集 文件命名规则:subset_sum_编号_后缀.txt subset_sum_p01_c.txt:存储目标求和值,规模参数:元素数 n=8,目标和 S=53 subset_sum_p01_w.txt:存储 8 个数字集合,每行单个整数 subset_sum_p01_s.txt:标准最优子集选择方案 subset_sum_p02_c.txt:存储目标求和值,规模参数:元素数 n=10,目标和 S=5842 subset_sum_p02_w.txt:存储 10 个数字集合,每行单个整数 subset_sum_p02_s.txt:标准最优子集选择方案 subset_sum_p03_c.txt 及同系列文件:多组扩展测试用例,元素数量、目标和依次增大。 # 结果文件说明 //包括输出的文件名称、使用的应用程序名称、调用的函数名称、参数设置及文件格式等。 应用程序名称:test_exp 核心调用函数:solveKnapsack、solveKnapsackOptimized、solveSubsetSum、readKnapsackDataset、readSubsetSumDataset、结果校验函数、信息打印函数 运行参数:./bin/test_exp ./data 结果文件列表及说明: 1. result_all.txt 生成方式:由 run_all.sh 脚本自动执行 test_exp 程序输出生成 存放路径:./experiments/ 文件格式:纯文本格式 内容说明:包含 0/1 背包、子集和数全部数据集的完整运行日志,涵盖数据规模、求解结果、物品选择方案、运行时间、标准最优解匹配结果等所有实验信息。 2. performance_summary.csv 用途:实验性能统计汇总表,用于数据分析与可视化绘图 文件格式:CSV 表格格式 字段:问题类型、数据集名称、数据规模 n、容量 / 目标值、运行时间 (μs)、运行时间 (ms)