From 7cbaf8f35a42bd079e59c14b7ca5fbd903d73a80 Mon Sep 17 00:00:00 2001
From: Jason Jiang <92827752+JJiang28@users.noreply.github.com>
Date: Sun, 1 Oct 2023 12:34:52 -0400
Subject: [PATCH] Updated README.md
Added an about section for the project. Additionally, I tweaked the contribution guide to make it more thorough. I added a table of existing Data Structures and Algorithms.
---
README.md | 56 +++++++++++++++++++++++++++++++++++++++++++++----------
1 file changed, 46 insertions(+), 10 deletions(-)
diff --git a/README.md b/README.md
index cd08ee6c..77a8f19c 100644
--- a/README.md
+++ b/README.md
@@ -1,27 +1,63 @@
# Data-Structures-and-Algorithms-in-cpp
-This is very good piece of coding.
-This repository is in development phase and will soon provide you with c++ code of various data structures and algorithms
-
-## Who can contribute
-Anyone can contribute to this repositry.
+Welcome to cppDataStructures and Algorithms. We are dedicated to helping the world of C++ programming through comprehensive data structures and algorithms implementations. Our community-driven project aims to provide programmers of all levels with high-quality, well-documented, and efficient solutions for solving complex problems.
# Contribution Guide
+## Who can contribute
+We welcome contributions of all kinds, from bug reports and feature requests to code contributions and documentation improvements. Please feel free to contribute no matter your experience.
## How to contribute
- Fork this repository
-- Pick up an algortihm
-- Write your code
+- Clone the forked repository to your machine
+- Create a branch
+- Choose a Data Structure or Algorithm (or both)
- Create a pull request
- Star the repository to show your support
## Instructions
-Create a folder for the topic you wish to contribute in and add the respective files in that particular folder.
-If a folder for a particular Data Structure or Algorithm exists. Add your codes in that folder itself.
-If a folder already exists, add your codes to it.
+
+### Data Structures
+
+- Create a file in the folder of your chosen Data Structure
+- If it does not exist, create a new folder
+- Please use header and source files to separate
+- Create sub-folders for any algorithms related to your data structure
+- If you are changing an existing data structure, be sure to describe what you changed and how it improves the codebase
+
+
+### Algorithms
+
+- If your algorithm can be generalized(i.e. sorting), please add it to that folder
+- Else, create a new file and name it after your algorithm
+- If you are editing an existing algorithm, be sure to describe what you changed and how it improves the algorithm
+
### Additional Notes
* Code should be properly commented so as to ensure it's readability.
* If you've added code that should be tested, add tests as comments.
* Make sure your code is properly formatted.
+
+### Data Structures
+
+| Data Structure/Algorithm | What's Done |
+|----------------------|----------------|
+| **Array** | Merge Sort, Bubble Sort, Quick Sort, Sliding Window|
+| **Graphs** | Adjacency Matrix, Adjacency List, DFS, BFS, Kruskal's |
+| **Heap** | Help Needed |
+| **Linked Lists** | Doubly Linked List, Deletion, Merge, Mode |
+| **Maps** | Help Needed|
+| **Queue** | Implementation |
+| **Stack** | Implementation |
+| **Trees** | Level Order Traversal, B-Tree, Binary Search Tree|
+
+### Algorithms
+
+| Algorithms|
+|----------------------|
+| **Incremental** |
+| **Fibonacci Recursion** |
+| **Huffman** |
+| **Pot Of Gold** |
+| **Pascal's Triangle** |
+| **Tower of Hanoi** |