Skip to content

vashuverma/Data-Structure-and-Algorithm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Data-Structure-and-Algorithm

Welcome to the Data Structure and Algorithm repository! This repository is dedicated to providing solutions and implementations of various data structures and algorithms commonly used in computer science and programming interviews. Whether you're preparing for technical interviews or simply interested in enhancing your understanding of fundamental concepts, this repository aims to be a valuable resource for you. I also add the solution of Daily leetcode problem of the day solution here.

Contents

Data Structures

  1. Arrays: Implementation and manipulation of arrays.
  2. Linked Lists: Singly linked lists, doubly linked lists, and circular linked lists.
  3. Stacks: Implementation and applications of stacks.
  4. Queues: Implementation and applications of queues.
  5. Trees: Binary trees, binary search trees, AVL trees, etc.
  6. Graphs: Graph representation and traversal algorithms.

Algorithms

  1. Sorting Algorithms: Bubble sort, selection sort, insertion sort, merge sort, quick sort, etc.
  2. Searching Algorithms: Linear search, binary search, depth-first search (DFS), breadth-first search (BFS), etc.
  3. Dynamic Programming: Introduction to dynamic programming and various problems solved using dynamic programming techniques.
  4. Greedy Algorithms: Introduction to greedy algorithms and problems solved using greedy strategies.
  5. Graph Algorithms: Shortest path algorithms, minimum spanning tree algorithms, etc.
  6. String Algorithms: String manipulation algorithms and pattern matching algorithms.

How to Use This Repository

Each data structure and algorithm is implemented C++.

Folder Structure: The implementations are organized into folders based on the type of data structure or algorithm. For example, implementations related to arrays can be found in the Arrays folder, while sorting algorithms are located in the Sorting folder.

Language: Implementations are provided in C++.

Contributing

Contributions to this repository are highly encouraged! If you have additional implementations, optimizations, or corrections to existing code, please feel free to contribute.

To contribute:

  1. Fork this repository.
  2. Create a new branch (git checkout -b feature/add-new-implementation).
  3. Add your implementation file to the appropriate folder.
  4. Ensure that your code follows the repository's coding style and conventions.
  5. Test your implementation thoroughly.
  6. Update the README.md file if necessary to include information about your contribution.
  7. Commit your changes (git commit -am 'Add new implementation of data structure X').
  8. Push to the branch (git push origin feature/add-new-implementation).
  9. Create a new Pull Request.

Disclaimer

Please note that while efforts are made to ensure the accuracy and efficiency of the implementations provided in this repository, they may not always be the most optimal or efficient solutions. They are intended for educational purposes and as a reference for understanding fundamental concepts. It's important to analyze and understand the underlying principles before applying them in real-world scenarios.

Happy coding!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors