### Algorithm Pattern – Binary Search

Algorithm Pattern 1 – Find the target element class Solution { public int search(int[] nums, int target) { int left = 0, right = nums.length – 1; while(left <= right){ int mid = left + (right – left) / 2; if(nums[mid] == target){ return mid; } else if(nums[mid] < target){ left = mid + 1; …

### Algorithm Pattern – Sliding Window

Problem Usually if you are asked to find out substring based on one string pattern in another string, it means you have to check all possible substring in one string, so you should maintain a sliding window to check each substring candidate. Thought For convenience, I call two strings as pattern string and explore string. …

### Algorithm Pattern – Rotate & Spiral Array (LC 48 54 59)

Thought For the rotation question, we could get an easy approach by observing the rotation result. For the Spiral question, we should set the four dimension ranges and keep updating them. Example 48. Rotate Image (https://leetcode.com/problems/rotate-image/) You are given an n x n 2D matrix representing an image, rotate the image by 90 degrees (clockwise). …

### Algorithm Pattern – Monotone Stack (LC 496 739 503)

Question Monotone Stack question usually ask you to find the next greater integer in an array. Approach Maintain a monotone stack, which stores index of descending integers, and while you face an element greater than the top of stack, we could assign this element as the next greater integer. Algorithm Pattern Deque<Integer> stack = new …

### Properties and advantages of REST APIs

Client-server architecture The API defines all communication between the client and the server, which are separate components and free to be developed independently. Layered system The client is indifferent to whether it is communicating directly or indirectly with the server. Cacheability A response can be cached if the same request will return the same result …

![image description](relative/path/in/repository/to/image.svg) or <img src="relative/path/in/repository/to/image.svg" width="128"/>

### How to upload project to another GitHub repo

Sometimes we may combine our own project with a GitHub remote repository, it may be school repo or work repo. However, what if you want to upload the project into your own repository for future review? Try this: git remote rename origin upstream git remote add origin URL_TO_GITHUB_REPO git push origin master

### How to load images stored in Firebase in Flutter

Use the code below: final ref = FirebaseStorage.instance.ref().child('image_path_without_extension'); var url = await ref.getDownloadURL(); Image.network(url);

### How to configure Firebase in Flutter?

1. Configure Dependencies \$ flutter pub add firebase_core Resolving dependencies… + firebase_core 1.10.5 + firebase_core_platform_interface 4.2.2 + firebase_core_web 1.5.2 + flutter_web_plugins 0.0.0 from sdk flutter + js 0.6.3 test_api 0.4.3 (0.4.8 available) Changed 5 dependencies! \$ flutter pub add firebase_auth Resolving dependencies… + firebase_auth 3.3.3 + firebase_auth_platform_interface 6.1.8 + firebase_auth_web 3.3.4 + intl 0.17.0 test_api …