GithubHelp home page GithubHelp logo

dbz / algorithms Goto Github PK

View Code? Open in Web Editor NEW
90.0 7.0 20.0 278 KB

Data Structures & Algorithms. Includes solutions for Cracking the Coding Interview 6th Edition

License: MIT License

JavaScript 22.55% Ruby 69.46% Python 7.99%
datastructures data-structures algorithms algorithm-challenges cracking-the-coding-interview ruby javascript tree algorithm stack sum queue trees stacks trie tries heap python graph computer-science

algorithms's Introduction

Data Structures & Algorithms Repository

This is repository of data structures and algorithms written in JavaScript and Ruby. Some of the algorithms are from Cracking the Coding Interview by Gayle Laakmann McDowell .

Contributing

Contributions are welcome! Please read the Contributing guidelines and the Code of Conduct on how to contribute. This project is Licensed under the MIT License.

Ruby Instructions:

To run Ruby specs, execute the rspec command in the terminal

JavaScript Instructions:

To run JavaScript specs, execute the rake jasmine command in the terminal. Then open a web browser to http://localhost:8888/

Algorithms & Data Structures

Key
- (R) means Ruby
- (JS) means JavaScript
- (P) means Python
- (CtCI) means Cracking the Coding Interview
- (DP) means Dynamic Programming
  • Array - Binary Search Tree From Array (R)
  • Array - Contains Duplicate (JS)
  • Array - Difference Between Arrays (R)
  • Array - Find Single Number (R)
  • Array - Highest Product of 3 (JS)
  • Array - Longest Common Prefix (R)
  • Array - Majority Element (JS)
  • Array - Make Change (CtCI)(JS)(R)
  • Array - Maxiumum Subsequence (CtCI)(DP)(R)
  • Array - Merge Two Sorted Lists (JS)(R)
  • Array - Min Change Sum (CtCI)(DP)(R)
  • Array - Missing Number (CtCI)(R)
  • Array - Product of All Ints Except @ Index (JS)
  • Array - Quicksort (JS)
  • Array - Remove Value (JS)
  • Array - Rotate Array (R)
  • Array - Rotate Matrix (CtCI 1.7)(R)(P)
  • Array - Shuffle in Place (R)
  • Array - Stock Picker (JS)
  • Array - Subsets (JS)
  • Array - Summary Ranges (R)
  • Array - Transpose (JS)
  • Array - Traverse Spiral Matrix (R)
  • Array - Two Sum (R)
  • Array - Zero Matrix (CtCI 1.8)(R)(P)
  • Data Structure - Binary Tree (JS)(R)
  • Data Structure - Doubly Linked List (R)
  • Data Structure - Hash Table (JS)
  • Data Structure - Min Heap (R)
  • Data Structure - Queue (JS)
  • Data Structure - Queue with Two Stacks (CtCI)(JS)
  • Data Structure - Singly Linked List (R)
  • Data Structure - Stack (JS)(R)
  • Data Structure - Stack with Two Queues (CtCI)(JS)
  • Data Structure - Tree (JS)
  • Data Structure - Trie (JS)
  • Graph - Balanced Binary Tree (R)
  • Graph - Binary Tree Inorder Traversal (R)
  • Graph - Binary Tree Preorder Traversal (R)
  • Graph - Binary Tree to Linked List (R)
  • Graph - Breadth First Search (JS)(R)
  • Graph - Danny Search (R)
  • Graph - Depth First Search (JS)(R)
  • Graph - Dijkstras (R)
  • Graph - Invert Binary Tree (JS)(R)
  • Graph - Is Same Tree (JS)
  • Graph - Largest Internal Binary Search Tree (R)
  • Graph - Lowest Common Ancestor in BST (CtCI)(R)
  • Graph - Maximum Depth of Binary Tree (JS)(R)
  • Graph - Minimum Depth of Binary Tree (JS)(R)
  • Graph - Path Between Two Nodes (CtCI)(R)
  • Graph - Root to Leaf Paths (R)
  • Graph - Second Largest Value in Binary Tree (JS)
  • Graph - Symmetric Binary Tree (JS)
  • Graph - Topological Sort (R)
  • Graph - Tree Breadth First Search (R)
  • Graph - Tree Path Equals Sum (CtCI)(R)
  • Graph - Valid Binary Tree (R)
  • Linked List - Add Reverse Linked List Digits (CtCI)(R)
  • Linked List - Animal Shelter (CtCI 3.6)(R)
  • Linked List - Delete Kth Node in Linked List (R)
  • Linked List - Delete Node in Linked List (JS)
  • Linked List - Delete Middle Node in Linked List (CtCI 2.3)(R)
  • Linked List - Find Linked List Cycle (CtCI)(R)
  • Linked LIst - Intersection of two lists (CtCI 2.7)(R)
  • Linked List - Linked List Palindrome (CtCI)(R)
  • Linked List - Loop Detection (CtCI 2.8)(R)
  • Linked List - Palindrome (CtCI 2.6)(JS)(R)(R2)
  • Linked List - Partition Linked List (CtCI)(R)
  • Linked List - Return Kth to last node (CtCI 2.2)(R)
  • Linked List - Remove Duplicates in Linked List (CtCI 2.1)(R)
  • Linked List - Reverse Linked List (JS)
  • Linked List - Sum Lists (CtCI 2.5)(R)
  • Misc - Climbing Stairs (JS)
  • Misc - Count Primes (R)
  • Misc - Digital Root (JS)
  • Misc - Fibonacci Number (JS)
  • Misc - First Bad Version (R)
  • Misc - Hamming Weight (JS)
  • Misc - HiCal (JS)
  • Misc - Pascal's Triangle (R)
  • Misc - Power of 2 (JS)
  • Misc - Rate Limiter (R)
  • Misc - Seive of Erastenous (R)
  • Stack - Sort Stack (CtCI 3.5)(R)
  • String - Add Binary (R)
  • String - Anagrams (JS)(R)
  • String - Balanced Parens (JS)
  • String - String Compression (CtCI 1.6)(R)(P)
  • String - Caeser Cipher (R)
  • String - Encode URL (CtCI)(R)
  • String - Is Substring (CtCI)(R)
  • String - Isomorphic Strings (R)
  • String - One Edit Away (CtCI)(R)(P)
  • String - Permutation Palindrome (CtCI 1.4)(JS)(R)(P)
  • String - Permutation Strings (CtCI 1.2)(R)(P)
  • String - Remove Duplicates in Text (R)
  • String - Reverse Characters and String (CtCI)(R)
  • String - Roman Numeral -> Integer (JS)
  • String - String Rotation (CtCI 1.9)(R)
  • String - Substrings (JS)
  • String - Unique Characters (CtCI 1.1)(R)(P)
  • String - Valid Anagram (JS)

algorithms's People

Contributors

dbz avatar dependabot[bot] avatar isisanchalee avatar nimbusscale avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  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.