DSA
1.0.0
数据结构与算法(DSA)
所贡献的问题必须是一个简单的文件(例如kruskal-algorithm.cpp
、 linear-search.java
)或更复杂的目录( palindrome/
)。这是单位problem
。
目录树具有以下algorithms/{language}/{category}/{problem}
,其中{language}
表示问题的语言代码(例如, C++的CPlusPlus
,C#的CSharp
等), {category}
是所贡献问题的主题或类别(例如strings
、 sorting
、 linked-lists
等),而{problem}
是问题的一致名称(例如linear-search.cpp
, palindrome
、 queue-linked-list.cpp
等)
单元problem
必须符合以下规范:
palindrome/
binary-search.cpp
)。-
) 分隔。如果您遇到的问题属于新主题或类别而不是现有问题:
README.md
文件)。problem
自述文件(Markdown 文档)。-
)(例如strings
sorting
等) 该文件应符合problem
规范和扩展名(例如, linear-search.java
、 kruskal-algorithm.cpp
、 count-inversions.js
等)
基于项目和文件夹的贡献有更严格的贡献规范。
该文件夹应符合problem
规范以及以下规范
文件夹结构
problem-name
| - .gitignore
| - README.md
| - Makefile # or the specific specification/requirements/configuration file
| - src
| - main.ext
README.md
规范/模板 # < Title of the Problem >
< description of the problem >
## Prerequisites
- prerequisite library or package
- [ prerequisite library ] ( https://www.example.com/link-to-official-library )
## Instructions
- instructions to run the project
- < Simple and reproducible commands to execute the project >
``` bash
make # or 'cargo run', or 'dotnet run' or 'mvn exec:java' etc.
```
## Test Cases & Output < if exists>
< If you can provide test cases, describe it here, else remove this section >
.gitignore
文件 # add all output files and build files to be excluded from git tracking
main # executable file also must have the project name
target / # the build file, for example for rust
可以是以下任意一个
Makefile
requirements.txt
package.json
和package-lock.json
Cargo.toml
和Cargo.lock
go.mod
源代码文件应该位于src/
文件夹(例如src/main.cpp
或src/main.js
)或根文件夹(例如palindrome.go
或App.java
)中,其中ext
是特定的文件扩展名编程语言。
同样,源代码必须符合编程语言强制执行的有效文件结构约定。
编程时应遵循每种编程语言的命名约定规则。
编程语言 | 用户 |
---|---|
C 或 C++ | @砷-ATG,@UG-SEP,@aayushjain7,@Ashborn-SM,@Ashad001 |
爪哇 | @TawfikYasser、@aayushjain7、@mohitchakraverty |
C# | @ming-tsai,@Waqar-107 |
去 | @ayo-ajayi |
Python | @砷-ATG,@sridhar-5 |
JavaScript | @明仔 |
麻省理工学院