Gas Station

Title: Gas Station Source: leetcode.com There are N gas stations along a circular route, where the amount of gas at station i is gas[i]. You have a car with an unlimited gas tank and it costs cost[i] of gas to travel from station i to its next station (i+1). You begin the journey with an ...

Game of Life

Title: Game of Life Source: leetcode.com According to the Wikipedia’s article: “The Game of Life, also known simply as Life, is a cellular automaton devised by the British mathematician John Horton Conway in 1970.” Given a board with m by n cells, each cell has an initial state live (1) or dead (0). Each cell ...

Flatten Binary Tree to Linked List

Title: Flatten Binary Tree to Linked List Source: leetcode.com Given a binary tree, flatten it to a linked list in-place. For example, Given 1 / \ 2 5 / \ \ 3 4 6 12345          1        / \       2   5      / \   \     3   4   6 1 \ 2 \ 3 \ 4 \ 5 \ ...

Evaluate Reverse Polish Notation

Title: Evaluate Reverse Polish Notation Source: leetcode.com Evaluate the value of an arithmetic expression in Reverse Polish Notation. Valid operators are +, -, *, /. Each operand may be an integer or another expression. Some examples: ["2", "1", "+", "3", "*"] -> ((2 + 1) * 3) -> 9 ["4", "13", "5", "/", "+"] -> ...

Combination Sum

Title: Combination Sum Source: leetcode.com Given a set of candidate numbers (C) and a target number (T), find all unique combinations in C where the candidate numbers sums to T. The same repeated number may be chosen from C unlimited number of times. Note: All numbers (including target) will be positive integers. Elements in a ...

Combinations

Title: Combinations Source: leetcode.com Given two integers n and k, return all possible combinations of k numbers out of 1 … n. For example, If n = 4 and k = 2, a solution is: [ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4], ] 12345678 [  [2,4],  [3,4],  [2,3],  [1,2],  [1,3],  [1,4],] Python solution (a) Python ''' https://leetcode.com/problems/combinations/ ''' class Solution(object): def ...

Binary Tree Postorder Traversal

Title: Binary Tree Postorder Traversal Source: leetcode.com Given a binary tree, return the postorder traversal of its nodes’ values. For example: Given binary tree {1,#,2,3}, 1 \ 2 / 3 12345    1    \     2    /   3 return [3,2,1]. Note: Recursive solution is trivial, could you do it iteratively? Python solution (Iterative) Python ''' https://leetcode.com/problems/binary-tree-postorder-traversal/ ''' # ...

Binary Tree Zigzag Level Order Traversal

Title: Binary Tree Zigzag Level Order Traversal Source: leetcode.com Given a binary tree, return the zigzag level order traversal of its nodes’ values. (ie, from left to right, then right to left for the next level and alternate between). For example: Given binary tree {3,9,20,#,#,15,7}, 3 / \ 9 20 / \ 15 7 12345 ...

Binary Tree Right Side View

Title: Binary Tree Right Side View Source: leetcode.com Given a binary tree, imagine yourself standing on the right side of it, return the values of the nodes you can see ordered from top to bottom. For example: Given the following binary tree, 1 <--- / \ 2 3 <--- \ \ 5 4 <--- 12345 ...

Word Pattern 1

Title: Word Pattern Source: leetcode.com Given a pattern and a string str, find if str follows the same pattern. Here follow means a full match, such that there is a bijection between a letter in pattern and a non-empty word in str. Examples: pattern = "abba", str = "dog cat cat dog" should return true. ...