Giter Site home page Giter Site logo

sunny0910 / data-structures-algorithms Goto Github PK

View Code? Open in Web Editor NEW
4.0 2.0 0.0 126 KB

Solving problems and learning the use of different data structures and algorithms. It makes us capable to decide which algorithm works best in different scenarios and to understand the trade-offs between one data structure over the other.

Python 100.00%
datastructures-algorithms python binarysearchtree linkedlist sorting-algorithms

data-structures-algorithms's Introduction

Data-Structures-Algorithms

The Topics and Algorithms covered in this repository are as follows, followed by the link to GeekforGeeks reference in the brackets:

  • Sorting Algorithms

  • Trees

    • Basic operations (Insert, delete) (link)
    • BFS (in-order, pre-order, post-order) (link)
    • DFS (Level order) (link)
    • Left view (link)
    • Right view (link)
    • Top view (link)
    • Bottom view (link)
    • Bottom-Right view (link)
    • Boundary leaves traversal (link)
    • Zig-zak traversal (link)
    • Spiral traversal (link)
    • Check if Sum tree(link)
    • Check if Binary Search Tree (link
    • Nodes at distance K, distance between nodes (link)
    • Lowest common ancestor(LCS) in BST and Btree (link)
    • Is symmetric or mirror tree(link)
    • Tree from in-order and pre-order (link)
    • Tree from in-order and post-order(link)
    • BST to DLL (link)
    • Btree to DLL (link)
  • Linked Lists

    • Singly Linked List
      • Basic operations(Insert, delete, middle) (link)
      • Reverse, K-nodes reverse (Iterative, recursive) (link)
      • Incremental K-node reverse
      • Check LL is palindrome (link)
      • Dutch national flag problem(separate 0's, 1's, 2's) (link)
      • Add two number represented in linked lists (link)
      • Merge sort on SLL (link)
      • Detect and remove loop in linked list (link)
      • Decimal equivalent of binary linked list (link)
    • Doubly Linked List
      • Basic operations(Insert, delete, middle) (link)
      • Reverse DLL (link)
      • Merge sort on DLL (link)
    • Circular Linked List
      • Basic operations(Insert, delete, traverse) (link)
      • Middle of CLL
      • Reverse CLL
      • Merge-sort on CLL
  • Heaps

    • Min heap implementation (link)
    • Max heap implementation (link)
    • Kth min/max in array (link)
    • Sort almost sorted array (link)
    • Merge K sorted arrays (link)
    • Kth largest/smallest element in stream (link)
    • Median in stream using two heaps (link)
  • Stacks & queues

    • Rotten tomatoes problem (link)
    • Check for balanced parenthesis (link)
    • Next greater element in the array (link)
    • Next smaller element in the array (link)
    • Implementing K queues in one array (link)
    • Implementing K stacks in one array (link)
    • Minimum bracket reversal to balance expression (link)
    • Implement two stacks in one array (link)
  • Matrix

    • Boolean Matrix (link)
    • Min/Max cost path in Matrix (link)
    • Matrix path exists (link)
    • Rotate matrix by 90 degrees (link)
    • Spiral traversal of Matrix (link)
  • Arrays

    • Chocolate distribution problem (link)
    • Sliding window problem (link)
    • Rain water trapping problem (link)
    • Search in sorted & rotated array (link)
    • Bus/Train railway platform problem (link)
    • Stocks Buy & Sell problem (link)
    • Non repeating character in stream (link)
  • Strings

    • Largest number smaller than N with same digits (link)
    • Longest common substring in two strings (link)
    • Longest palindromic sub-sequence in one string (link)
    • Word break problem (link)
  • Tries

    • Basic operations (Insert, Search, Display all) (link)

data-structures-algorithms's People

Contributors

sunny0910 avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

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.