Giter Site home page Giter Site logo

goto-coders / ds-algo Goto Github PK

View Code? Open in Web Editor NEW
8.0 1.0 5.0 298 KB

The goal is to have in a single place for all possible Data Structures and Algorithm solutions.

Home Page: https://goto-coders.github.io/DS-Algo

License: MIT License

C++ 67.51% C 30.38% Python 2.11%
algorithm datastructures-algorithms clanguage cplusplus java python

ds-algo's Introduction

Hi there! Β 

GoTo coders

Who we are?

Our Goal:

The goal of this project is to have in a single place for all possible algorithms and data structures and competitive - in multiple languages. We aim to achieve this collaboratively, so feel free to contribute in any way you want, just make sure to follow the contribution guidelines listed below. Our organization provides a common platform where all the passionate coders can contribute and uplift themselves as well as the organization.
It is our goal to provide access to well written, well-explained programs and knowledge that improve people's lives. We want to enable people to adapt and change code according to their own ideas through an Open Access approach. We bring amazing people together to code algorithms and share our work for the benefit of all.

Guidelines for contribution:

  • Plagiarism is strictly not allowed. Any work that is found to be suspicious of plagiarized work will not be merged.
  • Issues will be assigned on a first come, first serve basis. You just have to comment on the issue, asking to be assigned, and it will be done if found fit.
  • In case you want to submit an improvement to an existing algorithm, we prefer that you create an issue, describing in detail your improvement. This will help others to analyze your contribution.

How to upload files:

PLEASE READ THIS

  • Your files should be uploaded directly into the corresponding folder (e.g. if you wrote code for a Data Structure in Python, it goes inside the DS folder within the Python folder and so on)
  • Edit the corresponding README.md file to add the link to your code in the corresponding section.
  • Under no circumstances create new folders within the language folders to upload your code unless specifically told to do so.
  • Also, be polite with the reviewers - they will be ALWAYS polite to you.

Our Contributors:

  • Sushant Gaurav
  • Ankit Singh Rajput
  • Mohit Sahay
  • Aman
  • Nilesh Kumar

ds-algo's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

ds-algo's Issues

Merge Sort Algorithm

πŸš€ Feature

Merge sort is a sorting algorithm based on the divide and conquer technique.

Language

C++

Pitch

Merge Sort algorithm is not present in the repository and thus should be included in the project.

Depth_First_Search(DFS)

πŸš€ Feature

Depth-first search is an algorithm for traversing or searching tree or graph data structures.
The algorithm starts at the root node and explores as far as possible along each branch before backtracking.

Language

C++

Pitch

it is not in the list

Floyd Warshal Shortest Path Algorithmn.

πŸ› Describe the bug
The program written for the implementation of the specified algorithm in C++ is procedural-oriented, which needs to be changed with an object-oriented approach.

Additional context
The comments and explanations are not up to the mark.

Selection_sort.cpp

πŸš€ Feature

Selection sort is a sorting algorithm that selects the smallest element from an unsorted list in each iteration and places that element at the beginning of the unsorted list.

Language

C++

Pitch

Selection sort in c++ is not in the list

Preorder Traversal in BST

πŸš€ Feature

Preorder Traversal is a way to traverse each node of the tree as
ROOT LEFT RIGHT

Language

C

The topic provided is not present in the project.

Bellman Ford Algorithm

πŸ› Describe the bug
The code provided is very complex. There is extensive use of STL which will make it unfriendly for a learner to understand the code.

Additional context
The code does not follow object-oriented concepts, incorrect space complexity is provided.

Dijkstra Algorithm in cpp

πŸš€ Feature

I want to add Dijkstra Algorithm in c++.

Language

C++

Pitch

Dijkistra Algorithm is not in the repository.

Insertion_Sort

πŸš€ Feature

Insertion sort is a simple sorting algorithm that builds the final sorted array one item at a time

Language

C++

Pitch

Insertion sort in c++ is not in the list

Breadth First Traversal

πŸ› Describe the bug
The program described in "C Plus Plus / Graph / Breadth_First_Search.cpp" does not consider the object-oriented programming principles and has bad variable names. Also, the comments provided are not sufficient to explain the flow.

Assign me to improve the code, and add all the mentioned functionalities.

Dinic's_Algorithm

πŸš€ Feature

Dinic's algorithm is a strongly polynomial algorithm for computing the maximum flow in a flow network

Language

C++

Pitch

Dinic's Algorithm is not in the list

Linked List Implementation

πŸš€ Feature

Linked list is a linear data structure. This file contains insertion, deletion and traversal of nodes.

Language

C

Pitch

The repo does not contain the feature described above.

Insertion sort

πŸš€ Feature

Insertion sort is a simple sorting algorithm that builds the final sorted array one item at a time

Language

Python

Pitch

Insertion sort in python is not in the list

Changes in Readme file

πŸ› Describe the bug
I want to sort readme files in alphabetical order

Additional context
Add any other context about the problem here.

Readme File - Link topics.

πŸ“š Documentation

Till now, the readme file contains only the name of topics present in the folders. I suggest that those topics should be the link of the respective folder to make the transition much more easier.

Kahn's_algorithm

πŸš€ Feature

Topological sorting for Directed Acyclic Graph is a linear ordering of vertices such that for every directed edge uv, vertex u comes before v in the ordering. This is the algorithm of topological sort by khan's algorithm

Language

C++

Pitch

it is not in the list

Array Implementation

πŸš€ Feature

An array is a linear data structure. The program is to implement all the basic operations performed on an array.

Language

C++

Pitch

The program is not present in the repository.

Bellman_Ford_Algorithm

πŸš€ Feature

The Bellman–Ford algorithm is an algorithm that computes shortest paths from a single source vertex to all of the other vertices in a weighted digraph.

Language

C++

Pitch

it is not in the list

Insertion sort in python

πŸš€ Feature

Insertion sort is a simple sorting algorithm
that builds the final sorted array one item at a time

Language

python

Pitch

Insertion sort in python is not in the list

Ford_Fulkerson_Algorithm

πŸš€ Feature

The Ford–Fulkerson algorithm is a greedy algorithm that computes the maximum flow in a flow network. It is sometimes called a "method" instead of an "algorithm" as the approach to finding augmenting paths in a residual graph is not fully specified or it is specified in several implementations with different running times.

Language

C++

Pitch

it in not in the list

Preorder Traversal Iterative

πŸš€ Feature

traversing a binary tree without using recursion i.e. via stack.

Language

C++

Pitch

Code not present in the repo.

Bubble_Sort

πŸš€ Feature

Bubble Sort is a simple algorithm which is used to sort a given set of n elements
provided in form of an array with n number of elements.

Language

Python

Pitch

Bubble sort in python is not in the list

Breadth_First_Search(BFS)

πŸš€ Feature

Breadth first search is a graph traversal algorithm that starts traversing the graph from root node and explores all the neighbouring nodes.
Then, it selects the nearest node and explore all the unexplored nodes.
The algorithm follows the same process for each of the nearest node until it finds the goal.

Language

C++

Pitch

It is not in the list

Binary Tree using In and Preorder.

πŸš€ Feature

Construction of Binary Tree using Inorder and Preorder traversals.

Language

C++

Pitch

The feature is not present in the repo.

Binary tree

πŸš€ Feature

User-driven construction of the binary tree.

Language

C++

Pitch

The repo does not contain binary tree implementation of create() method.

Binary Search Tree Implementation

πŸš€ Feature

The binary Search tree is a special case of a binary tree, which follows the rule that all the nodes to the left of a node must be smaller and those to the right must be greater and the code is the implementation for the same.

Language

C++

Pitch

The topic is not present in the repo.

Kruskal's Minimum Spanning Tree Algorithm

πŸš€ Feature

Kruskal's Algorithm is used to find the minimum spanning tree from a given graph.

Language

C++

Pitch

The algorithm is not present in the repository.

Stack implementation in C

πŸš€ Feature

I want to implement stack in C language using Dynamic array.

Language

C language

Pitch

This implementation is not present in the project repository.

Binary Tree Traversal

πŸš€ Feature

Traversal of binary tree i.e. Preorder, Inorder, and Postorder.

Language

C++

Pitch

The repo does not contain the mentioned feature.

Depth First Traversal in CPP

πŸ› Describe the bug
The Depth First Search Traversal program in Graph is completely procedural-oriented and does not follow an object-oriented approach.

Additional context
The comments and explanations provide are fewer.

Dynamic Stack Implementation

πŸš€ Feature

Dynamic Stack is implemented using dynamic memory allocation instead of a static array.

Language

C++

Pitch

The feature is not present in the repo.

Cycle_Detection_in_Graph

πŸš€ Feature

In this program I discussed how we can detect cycle in a graph

Language

C++

Pitch

It is not in the list

Quick Sort Implementation

πŸš€ Feature

Quick sort is a divide and conquer sorting algorithm.

Language

C++

Pitch

The implementation is not present in the repo.

Hamiltonian_Cycle

πŸš€ Feature

A Hamiltonian Path is a path that visits each vertex of the graph exactly once,
and when we connect the last edge to the first edge then it become Hamiltonian cycle.

Language

C++

Pitch

it is not in the list

Doubly Linked List Implementation

πŸš€ Feature

A doubly Linked list is an extended version of a linked list.

Language

C

Pitch

The requested feature is not present in the repository.

Floyd_Warshall Algorithm

πŸš€ Feature

This is Floyd Warshall algorithm in c++

Language

C++

Pitch

It is not in the repository.

Circular Linked List Implementation

πŸš€ Feature

Circular Linked List is a variant of a linked list in which the last node is connected to the first node for better traversal.

Language

C++

Pitch

The feature is not present in the repository.

Modified_Bubble_sort

πŸš€ Feature

A better version of bubble sort, known as modified bubble sort, includes a flag that is set if an exchange is made after an entire pass over the array. If no exchange is made, then it should be clear that the array is already in order because no two elements need to be switched.

Language

C

Pitch

Mai chahe ye karu chahe wo karo meri merzi.

Prim's Minimum Spanning Tree Algorithm

πŸ› Describe the bug
Prim's Algorithm is applied to find a minimum spanning tree in a weighted undirected graph.
The code written for implementation is very complex to be understood by a beginner.
It is based on procedural programming.

Additional context
Comments and explanations are not up to the mark.

Height of Binary Tree

πŸš€ Feature

The code uses recursion to calculate the height of a binary tree

Language

C++

Pitch

Code is not present in the repo.

Dijkstra's Shortest Path Algorithm

πŸ› Describe the bug
The program written for implementation of the algorithm uses advanced concepts of STL, which is difficult to be understood by a learner.

Additional context
The suggestion is to minimize the use of STL and also provide a proper explanation for the code written.

Prim_Algorithm

πŸš€ Feature

Prim's algorithm is a greedy algorithm that finds a minimum spanning tree for a weighted undirected graph.

Language

C++

Pitch

it is not in the list

Bubble_Sort

πŸš€ Feature

it is a simple sorting algorithm that repeatedly steps through the list, compares adjacent elements and swaps them if they are in the wrong order

Language

C++

Pitch

bubble sort in c++ is not in the list

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.