## The Missing Semester of Your CS Education

When I was working as a teaching assistant last semester, I found that many students were not very familiar with some basic but efficient tools. So I was thinking that for students who have...

## Mount Rainier National Park

Everyone will be amazed at Rainier‘s glaciated peak and her gorgeous scenes. I have been there for two times, but it definitely deserves more visits!

## Guess what algorithm to use from input range when solving Leetcode problems or having coding interviews.

When coming into a tricky problem in coding interviews, you have no idea where to start with, and ugh, you mind just goes totally blank. The good news? It always happens to the best...

## [LeetCode] 773. Sliding Puzzle

Solution Bidirectional BFS Set two queues, src queue and dest queue. Init src queue with input board, and dest queue with final state [[1,2,3],[4,5,0]]. When both queues are not empty, expand the queue with...

## [LeetCode] 327. Count of Range Sum

Solution A similar question is Leetcode 493, counting reverse pairs. A data structure “Binary Indexed Tree”, BIT, would help. Steps: Calculate prefix sum. -> sum[] Work out all lower bounds and upper bounds for...

## Visit to Cancun

I made a visit to Cancun before the spread of the Rona this Spring break. If you love tropical scene with blue sky, book a ticker to there right now!

## [LeetCode] 215. Kth Largest Element in an Array

Solution Official solutions have several approaches including sorting, heap, and quick selecting. They are all great. I’d like to put forward another solution: Binary Search. First, we can come to that the answer must...

## [LeetCode]307. Range Sum Query – Mutable

Solution Use “Binary Indexed Tree (BIT)” (Fenwick Tree) data structure which supports querying prefix sum and adding a value to a single point. Binary Indexed Tree is a data structure not introduced on most...

## [LeetCode] 239. Sliding Window Maximum

Solution There are several approaches to solve this problem, like sliding window or DP. A more general description of this problem is how to quickly find a Maximum or Minimum between two indices in...

## [LeetCode] 968. Binary Tree Cameras

Solution This problem can be reduced to Minimum Dominating Set problem in Trees. Find minimum set of vertices such that every vertex is in or adjacent to set is NP-complete in general graphs, but...