Giter VIP home page Giter VIP logo

algorithms-datastructures's Introduction

Algorithms-DataStructures

Two good sorting algorithms and their Big-O (Done)

  • MergeSort
  • QuickSort
  • BubbleSort

Basic data structure implementations & their Big-O complexities

  • Hashmap
  • Stack
  • Queue
  • DoubleEndedQueue Deque
  • Linked list
    • Reverse a linked list
    • Merge two sorted list
    • Palindrome linked list
  • Trees (n-ary, trie, heap)
    • Quad Tree
    • Inorder, pre, post order traversal
    • Maximum depth of a binary tree
    • Validate Binary search Tree
    • Convert sorted array to binary search tree

Object-Oriented Programming terminology

- Abstraction 
- Inheritance 
- Cohesion 
- Coupling

Collections and Math APIs

- Maps
- Lists
- Concurrency

Binary search


Graph traversal algorithms

- BFS 
- DFS 
- Shortest path algorithm like Dijkstra's

Powers of 2


Bit manipulation exercises

- Working with bit maps 
- Bit shifting

Recursion, backtracking, and memoization

- Reverse a number
- Pow (x,n)
- Fibonacci
- Merge 2 sorted lists
- Reverse linked list
- Search in a binary tree
- Time complexity & space complexity analysis

Review principles of basic discrete mathematics and statistics


Design Patterns

- Singleton
- Factory
- Fasade

Other Programs

- Best time to buy a stock
- Fibonacci series
- Longest palindromic substring
- 

Design Problems

Materials

Here are some reference materials for you: ▪ LeetCode.com ▪ Hackerrank.com

For Problem Solving some channels: • https://www.youtube.com/c/CSDojohttps://www.youtube.com/channel/UC1fLEeYICmo3O9cUsqIi7HAhttps://www.youtube.com/channel/UCKvwPt6BifPP54yzH99ff1ghttps://www.youtube.com/channel/UCmJz2DV1a3yfgrR7GqRtUUAhttps://www.youtube.com/channel/UCMn3_305DqmTylxJPFA8OJA (This guy I like really)

For System Design : • https://www.youtube.com/user/tusharroy2525 (Very Good) • https://www.youtube.com/channel/UCRPMAqdtSgd0Ipeef7iFsKw (very good) • https://www.youtube.com/watch?v=ZgdS0EUmn70&list=PL73KFetZlkJSZ9vTDSJ1swZhe6CIYkqTL (This is list of videos) • https://www.youtube.com/watch?v=siqiJAJWUVg&list=PLK8IOvtbwVsuYW8KovGg9o6dlhspym8O_ ((Nice guy with decent videos on design) • https://www.educative.io/courses/grokking-the-system-design-interview

Leetcode has contests, mock interviews, company specific problems, top questions being asked and much else. This is definitely worth the money.

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.