1. Given an m x n 2D binary grid grid which represents a map of '1's (land) and '0's (water), return the number of islands.
2. Design a Least Recently Used (LRU) cache.
3. Write a query to extract unique values.
4. Design a lift system.
5. You are given an n x n 2D matrix representing an image, rotate the image by 90 degrees (clockwise). You have to rotate the image in-place, which means you have to modify the input 2D matrix directly. DO NOT allocate another 2D matrix and do the rotation.