# AlgoStruct **Repository Path**: tianshuangming/algo-struct ## Basic Information - **Project Name**: AlgoStruct - **Description**: AlgoStruct:专注于算法结构与优化的开源项目,提供高效算法实现及学习资源,助力开发者提升算法能力。 - **Primary Language**: TypeScript - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-09-22 - **Last Updated**: 2025-09-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # AlgoStruct #### 介绍 AlgoStruct 是一个专注于算法结构与优化的开源项目,提供高效、规范的算法实现及学习资源,助力开发者提升算法能力。本项目采用 TypeScript 开发,确保类型安全和代码质量。 主要特点: - 清晰的模块化结构设计 - 严格的代码规范与质量控制 - 完整的测试用例覆盖 - 自动化的开发工作流 - 支持中英文双语文档 #### 软件架构 项目采用模块化结构设计,主要包含以下目录: - **src/data-structures/**:存放数据结构的实现代码,如链表、栈、队列、树等基本数据结构 - **src/algorithms/**:存放各类算法实现,如排序、查找、图算法等 - **src/design-patterns/**:存放设计模式的示例代码,如创建型、结构型、行为型设计模式 - **src/utils/**:存放工具函数和辅助类 - **src/tests/**:存放测试代码,用于验证各模块功能 #### 安装教程 1. 确保已安装 Node.js (v14.0 或更高版本) 和 npm 2. 克隆项目代码:`git clone https://gitee.com/your-username/algo-struct.git` 3. 进入项目目录:`cd algo-struct` 4. 安装依赖:`npm install` #### 开发与测试 1. **代码规范检查**:`npm run lint` 2. **自动修复代码规范**:`npm run lint:fix` 3. **TypeScript 编译检查**:`npx tsc --noEmit` 4. **Prettier 格式检查**:`npm run format:check` 5. **自动格式化代码**:`npm run format` 6. **运行所有测试**:`npm test` 7. **运行单个测试文件**:`npm run test:file -- <文件路径>` 例如:`npm run test:file -- src/tests/data-structures/tree/binary-search-tree-mode.test.ts` 8. **运行测试并查看覆盖率**:`npm run test:coverage` #### 代码提交规范 项目使用 husky 和 lint-staged 实现了自动代码检查和测试,在提交代码时会自动: 1. 对修改的文件进行 ESLint 检查和自动修复 2. 对修改的文件进行 Prettier 格式化 3. 仅运行与修改文件相关的测试用例 如果任何步骤失败,提交将被阻止,确保代码质量。 #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码(会自动进行代码检查和测试) 4. 新建 Pull Request #### 致谢 感谢所有为项目做出贡献的开发者!