practice in leetcode + analysis