srebalaji / 100DaysOfAlgorithm

#100DaysOfAlgorithm

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

#100DaysOfAlgorithm

Practicing Algorithms and data structures for 100 days.

Day 100: September 25, 2018

  1. Implemented State design pattern.

Day 99: September 24, 2018

  1. Implemented Facade design pattern.

Day 98: September 23, 2018

  1. Implemented Abstract factory design pattern.

Day 97: September 22, 2018

  1. Implemented Composite design pattern.

Day 96: September 21, 2018

  1. Implemented Strategy design pattern.

Day 95: September 20, 2018

  1. Implemented Chain of responsibility design pattern.

Day 94: September 19, 2018

  1. Implemented Mediator design pattern.

Day 93: September 18, 2018

  1. Implemented Memento design pattern.

Day 92: September 17, 2018

  1. Implemented iterator design pattern.

Day 91: September 16, 2018

  1. Implemented url-shortener system design.

Day 90: September 15, 2018

  1. Implemented e-commerce system design part - 3.

Day 89: September 14, 2018

  1. Implemented e-commerce system design part - 2.

Day 88: September 13, 2018

  1. Implemented e-commerce system design part - 1.

Day 87: September 12, 2018

  1. Implemented Decorator design pattern.

Day 86: September 11, 2018

  1. Implemented Visitor design pattern.

Day 85: September 10, 2018

  1. Implemented State design pattern.

Day 84: September 9, 2018

  1. Solved Chocolate feasts from Hackerrank. Problem at https://www.hackerrank.com/challenges/chocolate-feast/problem

Day 83: September 8, 2018

  1. Solved Service lane from Hackerrank. Problem at https://www.hackerrank.com/challenges/service-lane/problem

Day 82: September 7, 2018

  1. Solved Flatland space stations from Hackerrank. Problem at https://www.hackerrank.com/challenges/flatland-space-stations/forum

Day 81: September 6, 2018

  1. Solved Halloween sale from Hackerrank. Problem at https://www.hackerrank.com/challenges/halloween-sale/problem

Day 80: September 5, 2018

  1. Solved minimum distance from Hackerrank. Problem at https://www.hackerrank.com/challenges/minimum-distances/problem

Day 79: September 4, 2018

  1. Solved Beautiful triplets from Hackerrank. Problem at https://www.hackerrank.com/challenges/beautiful-triplets/problem

Day 78: September 3, 2018

  1. Solved find digits from Hackerrank. Problem at https://www.hackerrank.com/challenges/find-digits/problem

Day 77: September 2, 2018

  1. Solved Circular rotation array from Hackerrank. Problem at https://www.hackerrank.com/challenges/circular-array-rotation/problem

Day 76: September 1, 2018

  1. Solved Balance expression from Hackerrank. Problem at https://www.hackerrank.com/challenges/ctci-balanced-brackets/problem

Day 75: August 31, 2018

  1. Solved Beautiful days at movies from Hackerrank. Problem at https://www.hackerrank.com/challenges/beautiful-days-at-the-movies/problem

Day 74: August 30, 2018

  1. Solved PDF Viewer from Hackerrank. Problem at https://www.hackerrank.com/challenges/designer-pdf-viewer/problem

Day 73: August 29, 2018

  1. Solved The hurdle race from Hackerrank. Problem at https://www.hackerrank.com/challenges/the-hurdle-race/problem

Day 72: August 28, 2018

  1. Solved Electronics shop from Hackerrank. Problem at https://www.hackerrank.com/challenges/electronics-shop/problem

Day 71: August 27, 2018

  1. Solved Kangaroo from Hackerrank. Problem at https://www.hackerrank.com/challenges/kangaroo/problem

Day 70: August 26, 2018

  1. Solved Organizing Container from Hackerrank. Problem at https://www.hackerrank.com/challenges/organizing-containers-of-balls/problem

Day 69: August 25, 2018

  1. Solved Apple and Organge from Hackerrank. Problem at https://www.hackerrank.com/challenges/apple-and-orange/problem

Day 68: August 24, 2018

  1. Wrote pseudo code for Magic square from Hackerrank. Problem at https://www.hackerrank.com/challenges/magic-square-forming/problem

Day 67: August 23, 2018

  1. Solved Ice Cream Parlour from Hackerrank. Problem at https://www.hackerrank.com/challenges/ctci-ice-cream-parlor/problem?h_l=interview&playlist_slugs%5B%5D=interview-preparation-kit&playlist_slugs%5B%5D=search

Day 66: August 22, 2018

  1. Solved Greedy Florist from Hackerrank. Problem at https://www.hackerrank.com/challenges/greedy-florist/problem?h_l=interview&playlist_slugs%5B%5D=interview-preparation-kit&playlist_slugs%5B%5D=greedy-algorithms

Day 65: August 21, 2018

  1. Solved Max array sum from hackerrank. Problem at https://www.hackerrank.com/challenges/max-array-sum/problem

Day 64: August 20, 2018

  1. Solved Minimum abs difference. Problem at https://www.hackerrank.com/challenges/minimum-absolute-difference-in-an-array/problem?h_l=interview&playlist_slugs%5B%5D=interview-preparation-kit&playlist_slugs%5B%5D=greedy-algorithms

Day 63: August 19, 2018

  1. Solved Triplets from hackerrank. Problem at https://www.hackerrank.com/challenges/triple-sum/problem?h_l=interview&playlist_slugs%5B%5D=interview-preparation-kit&playlist_slugs%5B%5D=search

Day 62: August 18, 2018

  1. Solved pairs from hackerrank. Problem at https://www.hackerrank.com/challenges/pairs/problem?h_l=interview&playlist_slugs%5B%5D=interview-preparation-kit&playlist_slugs%5B%5D=search

Day 61: August 17, 2018

  1. Solved "Largest Rectangle" from hackerrank. Problem at https://www.hackerrank.com/challenges/largest-rectangle/problem?h_l=interview&playlist_slugs%5B%5D=interview-preparation-kit&playlist_slugs%5B%5D=stacks-queues

Day 60: August 16, 2018

  1. Solved "Making Anagrams" from hackerrank. Problem at https://www.hackerrank.com/challenges/ctci-making-anagrams/problem?h_l=interview&playlist_slugs%5B%5D=interview-preparation-kit&playlist_slugs%5B%5D=strings

Day 59: August 15, 2018

  1. Implemented problem in Hash. Problem statement can be found at https://www.hackerrank.com/challenges/frequency-queries/problem?h_l=interview&playlist_slugs%5B%5D=interview-preparation-kit&playlist_slugs%5B%5D=dictionaries-hashmaps.

Day 58: August 14, 2018

  1. Implemented queue data-structure using two stacks.

Day 57: August 13, 2018

  1. Implemented an algorithm to find an element in an sorted matrix.

Day 56: August 12, 2018

  1. Wrote pseudo code for counting inversions of an array.

Day 55: August 11, 2018

  1. Implemented an algorithm to reverse a sentence.

Day 54: August 10, 2018

  1. Solved coin-change problem.

Day 53: August 9, 2018

  1. Implemented an algorithm to find the pairs that equals to the given element. And solved stock buy-sell for maximum profit problem.

Day 52: August 8, 2018

  1. Implemented an algorithm to find the hits and psuedo-hits of master mind game.

Day 51: August 7, 2018

  1. Implemented an algorithm to sort an array by alternating peaks and shallows.

Day 50: August 6, 2018

  1. Implemented an algorithm to find whether there is a winner in tic-tac-toc game.

Day 49: August 5, 2018

  1. Implemented an algorithm to find the number of pond sizes in the given N*N matrix.

Day 48: August 4, 2018

  1. Implemented an algorithm to sort an given array by sorting the minimum sub-array.

Day 47: August 3, 2018

  1. Implemented an algorithm to find the contiguous sub-sequence with max sum.

Day 46: August 2, 2018

  1. Implemented an algorithm to make the sum of elements of two given arrays equal by swaping two numbers.

Day 45: August 1, 2018

  1. Implemented an algorithm to find the max population of the year, given the birth rate and death rate for the range of years.

Day 44: July 31, 2018

  1. Implemented Least Recently Used cache.

Day 43: July 30, 2018

  1. Implemented an algorithm to find the minimum difference between two arrays.

Day 42: July 29, 2018

  1. Implemented an algorithm to swap two numbers without using additional space.

Day 41: July 28, 2018

  1. Implemented an algorithm to find the number of elements less than the given element from a given stream of integers.

Day 40: July 27, 2018

  1. Implemented an algorithm to find a given string from an given array of strings with blank.

Day 39: July 26, 2018

  1. Implemented an algorithm to find an element in a n-times rotated sorted array.

Day 38: July 25, 2018

  1. Implemented an algorithm to sort an array of strings such that all anagrams are next to each other.

Day 37: July 24, 2018

  1. Implemented an algorithm to merge two sorted array.

Day 36: July 23, 2018

  1. Implemented quick sort algorithm.

Day 35: July 22, 2018

  1. Implemented an algorithm to print all the permutations of the given string with duplicate chars.

Day 34: July 21, 2018

  1. Implemented an algorithm to print all the permutations of the given string.

Day 33: July 20, 2018

  1. Multiply two numbers without using *

Day 32: July 19, 2018

  1. Implemented merge sort.

Day 31: July 18, 2018

  1. Implemented a design pattern for parking lot.

Day 30: July 17, 2018

  1. Implemented an algorithm to find magic index of an array.

Day 29: July 16, 2018

  1. Implemented an algorithm to find the path from top left to bottom right in a maze.

Day 28: July 15, 2018

  1. Implemented a design pattern of music jukebox.

Day 27: July 14, 2018

  1. Implemented an algorithm to find the number of ways to reach nth step.

Day 26: July 13, 2018

  1. Implemented a design pattern to manage call center system.

Day 25: July 12, 2018

  1. Implemented singleton and factory design patterns.

Day 24: July 11, 2018

  1. Implemented Sieve Of Eratosthenes algorithm.

Day 23: July 10, 2018

  1. Implemented Kruskal's algorithm.

Day 22: July 9, 2018

  1. Implemented Prim's algorithm.

Day 21: July 8, 2018

  1. Implemented Bellman Ford algorithm.

Day 20: July 7, 2018

  1. Implemented Dijkstra algorithm.

Day 19: July 6, 2018

  1. Wrote pseudo code for an algorithm to print all possible ways of traversing nodes of BST.

Day 18: July 5, 2018

  1. Started to implement an algorithm to print all possible ways of traversing nodes of BST.

Day 17: July 4, 2018

  1. Implemented an algorithm to find the common ancestor for the given two nodes of a binary tree.

Day 16: July 3, 2018

  1. Solved a problem from graphs: Design a algorithm to build the order of jobs without affecting the job dependencies.

Day 15: July 2, 2018

  1. Implement an algorithm to check if the given binary tree is binary search tree or not.

Day 14: July 1, 2018

  1. Implemented Breadth First Search.

Day 13: June 30, 2018

  1. Implemented Depth First Search.

Day 12: June 29, 2018

  1. Completed binary search tree.

Day 11: June 28, 2018

  1. Started to implement a binary search tree from a given array.

Day 10: June 27, 2018

  1. Implemented circular linkedlist without using any other data-structure.

Day 9: June 26, 2018

  1. Completed single LinkedList and implemented doubly LinkedList without using any other data-structure.

Day 8: June 25, 2018

  1. Implemented traversion and insertion of LinkedList without using any other data-structure.

Day 7: June 24, 2018

  1. Solved a problem from linked list: Find the middle element in the given linked list

Day 6: June 23, 2018

  1. Solved stack sorting: Sort the given stack in ascending order without using any other data-structure except using one additional stack.

Day 5: June 22, 2018

  1. Solved a problem from Queues: Implement a queue using two stacks.

Day 4: June 21, 2018

  1. Solved a problem from Array: Return the minimum element of array in O(1)

Day 3: June 20, 2018

  1. Solved zero matrix: In a given matrix, for every element that equals to zero make that entire row and column to zero.

Day 2: June 19, 2018

  1. Solved permutation of palindrome: To check whether the given string is a permutation of palindrome.

Day 1: June 18, 2018

  1. Solved a problem from string manipulation.

Day 0: June 17, 2018

  1. Created Github repo for #100DaysOfAlgorithm