Skip to content

VeldaKiara/lux-tech-DSA

Repository files navigation

lux-tech-DSA

Data Structures and Algorithms talk held in Moringa School on the 25th June 2022

Leetcode Questions In the Presentation

Arrays

Stark industries https://leetcode.com/problems/best-time-to-buy-and-sell-stock/

Binary Search Tree

Natasha Romanoff and Steve Rogers https://leetcode.com/problems/validate-binary-search-tree/

Dynamic Programming

The end game https://leetcode.com/problems/unique-binary-search-trees/

Greedy algorithms

Civil war https://leetcode.com/problems/longest-palindromic-substring

Heaps

Iron man suits https://leetcode.com/problems/top-k-frequent-elements/

LinkedList

Spiderman https://leetcode.com/problems/reverse-linked-list/

Sorting

Resources Used For this Presentation

https://www.geeksforgeeks.org/why-data-structures-and-algorithms-are-important-to-learn/

https://www.programiz.com/dsa

https://towardsdatascience.com/space-and-time-complexity-in-computer-algorithms-a7fffe9e4683

https://www.geeksforgeeks.org/time-complexity-and-space-complexity/

https://www.geeksforgeeks.org/analysis-of-algorithms-set-3asymptotic-notations/

https://www.geeksforgeeks.org/heap-data-structure/

https://www.geeksforgeeks.org/data-structures/linked-list/

https://www.geeksforgeeks.org check-for-balanced-parentheses-in-an-expression-o1-space-on2-time-complexity/

String Manipulation

https://leetcode.com/problems/reverse-string

https://leetcode.com/problems/detect-capital

https://leetcode.com/problems/reverse-words-in-a-string-iii

https://leetcode.com/problems/valid-palindrome

https://leetcode.com/problems/reverse-vowels-of-a-string

https://leetcode.com/problems/longest-common-prefix

Arrays

Top: https://leetcode.com/problems/two-sum/

https://leetcode.com/problems/number-of-islands/

https://leetcode.com/problems/sort-array-by-parity

https://leetcode.com/problems/transpose-matrix

https://leetcode.com/problems/flipping-an-image

Sorting

https://leetcode.com/problems/merge-intervals

https://leetcode.com/problems/valid-anagram

https://leetcode.com/problems/array-partition-i

https://leetcode.com/problems/find-all-anagrams-in-a-string

Python: https://www.programiz.com/python-programming/methods/list/sort

Java: https://stackabuse.com/sorting-algorithms-in-java/

Javascript: https://www.javascripttutorial.net/javascript-array-sort/

C++: https://www.mygreatlearning.com/blog/sort-function-in-cpp/

Divide and Conquer Algorithm

https://leetcode.com/problems/sort-list/

https://leetcode.com/problems/merge-k-sorted-lists/

https://leetcode.com/explore/learn/card/recursion-ii/470/divide-and-conquer/2897/

Stacks

https://leetcode.com/problems/valid-parentheses

https://leetcode.com/problems/baseball-game

https://leetcode.com/problems/next-greater-element-i

https://leetcode.com/problems/backspace-string-compare

https://leetcode.com/problems/score-of-parentheses

LinkedLists

https://leetcode.com/problems/add-two-numbers/

https://leetcode.com/problems/reverse-linked-list

https://leetcode.com/problems/reverse-linked-list-ii

https://leetcode.com/problems/odd-even-linked-list

https://leetcode.com/problems/intersection-of-two-linked-lists

https://leetcode.com/problems/reverse-nodes-in-k-group

https://leetcode.com/problems/lru-cache (Not easy - needs doubly-linked lists and hash map to get O(1) for both ops but a relatively common interview question.)

Trees

https://leetcode.com/problems/validate-binary-search-tree/

https://leetcode.com/problems/n-ary-tree-postorder-traversal

https://leetcode.com/problems/leaf-similar-trees

https://leetcode.com/problems/same-tree

https://leetcode.com/problems/sum-of-left-leaves

https://leetcode.com/problems/diameter-of-binary-tree

https://leetcode.com/problems/longest-univalue-path

https://leetcode.com/problems/find-bottom-left-tree-value

Hashmaps and Sets

https://leetcode.com/problems/group-anagrams/

https://leetcode.com/problems/longest-substring-without-repeating-characters/

https://leetcode.com/problems/valid-anagram/

https://leetcode.com/problems/jewels-and-stones

https://leetcode.com/problems/unique-morse-code-words

https://leetcode.com/problems/happy-number

https://leetcode.com/problems/uncommon-words-from-two-sentences

https://leetcode.com/problems/distribute-candies

https://leetcode.com/problems/groups-of-special-equivalent-strings

https://leetcode.com/problems/intersection-of-two-arrays

https://leetcode.com/problems/valid-sudoku

https://leetcode.com/problems/isomorphic-strings

https://leetcode.com/problems/word-pattern

https://leetcode.com/problems/design-hashmap

https://leetcode.com/problems/design-hashset

Multiset

https://leetcode.com/problems/find-all-anagrams-in-a-string

https://leetcode.com/problems/first-unique-character-in-a-string

https://leetcode.com/problems/subdomain-visit-count

https://leetcode.com/problems/find-the-difference

https://leetcode.com/problems/sort-characters-by-frequency

https://leetcode.com/problems/most-common-word

https://leetcode.com/problems/sort-characters-by-frequency

https://leetcode.com/problems/set-mismatch

https://leetcode.com/problems/number-of-atoms

Recursion and Memoization

https://leetcode.com/problems/powx-n

https://leetcode.com/problems/best-time-to-buy-and-sell-stock

https://leetcode.com/problems/edit-distance

https://leetcode.com/problems/house-robber-ii

https://leetcode.com/problems/regular-expression-matching/

Dynamic programming

https://leetcode.com/problems/coin-change/

https://leetcode.com/problems/best-time-to-buy-and-sell-stock

https://leetcode.com/problems/edit-distance

https://leetcode.com/problems/house-robber-ii

https://leetcode.com/problems/regular-expression-matching/

resources

https://www.freecodecamp.org/news/demystifying-dynamic-programming-3efafb8d4296

https://hackernoon.com/dynamic-programming-python-80f944aa6e6c

Queues

https://leetcode.com/problems/first-unique-character-in-a-string/

https://leetcode.com/problems/implement-stack-using-queues/

https://leetcode.com/problems/implement-queue-using-stacks/

https://leetcode.com/problems/rotate-array

Graphs

BFS https://leetcode.com/problems/course-schedule

BFS/DFS https://leetcode.com/problems/island-perimeter

BFS https://leetcode.com/problems/is-graph-bipartite

BFS https://leetcode.com/problems/word-search

Top Sort https://leetcode.com/problems/course-schedule-ii

Top Sort https://www.geeksforgeeks.org/given-sorted-dictionary-find-precedence-characters/

https://leetcode.com/problems/longest-increasing-path-in-a-matrix