# FrontEndCollection (Keep updating everyday, hopefully...)

## Web Development Basics

📖

HTML 1. What happens when you type in a URL

2. GET vs POST

3. What can we do to improve a website's performance?

4. HTML5 offline storage mechanism

5. Common time and space-complexity

6. What has been deprecated, and what is new on HTML5?

7. How the DOM really works?

8. Inline elements, Block elements, and what are the differences?

9. Several ways to call a function

10. A brief introduction of the differences between "src" and "href"

11. A brief introduction of Call, Apply, Bind

12. Time and space complexity for common sorting algorithm

💎

CSS 1. What is the difference between display:none and visibility:hidden style?

2. What is BFC(Block Formatting Context)

📦

JavaScript Concepts `this`

keyword

Bubbling and Capturing

Execution Context

Higher Order Function

Event Loop

Closures

Throttling and Debouncing

Promises

🖥

JavaScript Demos
💡

React Concepts
### React Projects (In ascending order of difficulty)

🟢

Node.js Demos
## Projects

1. Accordion

2. ModalBox

3. Drum Kit

4. Mini Clock

5. Playing with Variables

## Deep Dive in Javascript

1. Implement Curry()

2. implement Array.prototype.flat()

3. Implement curry() with placeholder support

## Data Structures & Algorithms in JavaScript

### Array

#### Easy

Two Sum

Two Sum II - Input Array Is Sorted

Search Insert Position

Squares of a Sorted Array

Move Zeros

Last and Second Last

#### Easy - Medium

Reverse Linked List

Rotate Array

Meeting Rooms II

Intersection of Two Arrays II

Remove Nth Node From End of List

K Closest Points to Origin
Maximum Subarray

Best Time to Buy and Sell Stock

First Bad Version

Meeting Rooms

#### Medium

Container With Most Water

Trapping Rain Water

Product of Array Except Self

Merge Intervals

Longest Consecutive Sequence

Spiral Matrix

Coin Change

Gas Station

Top K Frequent Elements

3 Sum

Count Binary Substrings

Word Search

Subarray Sum Equals K

Subdomain Visit Count

Next Permutation

Expressive Words

Verifying an Alien Dictionary

4Sum(nSum universal solution)

3Sum Closest

Jump Game

Jump Game II

Minimum Size Subarray Sum

Matrix Summation

Counting Analogous Arrays

Custom Sorted Array

Reformat Date

Game of Life

Search a 2D Matrix II

Kth Largest Element in an Array

Insert Delete GetRandom O(1)

Reaching Points

Pow(x, n)

Sum of Square Numbers

Minimum Moves to Equal Array Elements
Buying Show Tickets

Count Duplicate Elements

Password Creation

### String

⭐

Reverse String

Reverse Words in a String III

⭐ ⭐

Longest Common Prefix

Valid Palindrome II

⭐ ⭐ ⭐

Longest Substring Without Repeating Characters

Letter Combinations of a Phone Number

Generate Parentheses

Decode String

Longest Palindromic Substring

Time Based Key-Value Store

Roman to Integer

Longest String Chain

Robot Bounded In Circle

Word Break

Minimum Number of Steps to Make Two Strings Anagram

Reorganize String

Group Anagrams

Shortest Word Distance II

Zigzag Conversion

Simplify Path

Search Suggestions System

Remove All Adjacent Duplicates in String II

Fraction to Recurring Decimal

Accounts Merge

Longest Happy String

Minimum Deletions to Make Character Frequencies Unique

### Stack

Buildings With an Ocean View

Valid Parentheses

Minimum Remove to Make Valid Parentheses

### Linked-List

⭐

Linked List Cycle

Middle of the Linked List

⭐ ⭐

⭐ ⭐ ⭐

Add Two Numbers

Design Linked List

LRU Cache

### Tree

⭐

Binary Tree Preorder Traversal

Binary Tree Inorder Traversal

⭐ ⭐

Construct Binary Tree from Preorder and Inorder Traversal

Invert Binary Tree

Lowest Common Ancestor of a Binary Tree

Recover Binary Search Tree

⭐ ⭐ ⭐

Range Sum of BST

Binary Tree Vertical Order Traversal

Validate Binary Search Tree

Sum Root to Leaf Numbers

Binary Tree Right Side View

### Recursion & Backtracking

### BFS & DFS

Flood Fill

Max Area of Island

Merge Two Binary Trees

Populating Next Right Pointers in Each Node

01 Matrix

Rotting Oranges

Number of Islands

Minimum Knight Moves

### Binary Search

Binary Search

Find First and Last Position of Element in Sorted Array

Search in Rotated Sorted Array

Find Peak Element

## Foundations of Algorithms

*This is probably the hardest section in this repository, and totally optional, but why I am writting this....?*

This section is based on CSE 551 (Foundations of Algorithms) from Arizona State University. I believe it will be good learning materials for frontend software engineers who did not receive a systematic CS education.

This section will **NOT** teach you about Frontend enginnering, but will cover the core about **Computer Science** and **Algorithms**.....

Basics of Algorithm Analysis

Divide and Conquer - Merge Sort

Graphs

Introduction to Stable Matching

Knowledge Check: Introduction to Stable Matching

Five Representative Problems

Greedy Algorithm - Interval Scheduling and Interval Partitioning

Amortized Analysis

**Database Management**

Unit 2 Exploring Databases and SQL

ER diagram, Relational Algebra, SQL / NOSQL

Unit 3: Data Storage

Unit 4: Data Indexing

Unit 5: Transactions and Recovery
Unit 6: Concurrency

Unit 1 - 6 Practice Questions Solutions

**TikTok **🎶

Count Analogous Array

Is this a tree

Longest String Chain

Fizz Buzz

Last and Second Last

Custom Sorted Array

Gas Station

Minimum Number of Steps to Make Two Strings Anagram

Count Binary Substrings

Anagram Difference

Counting Analogous Arrays

Reformat Date

Alaaddin Carpet

Reaching Points

OA with not answers