01 Matrix
Given an m x n binary matrix mat, return the distance of the nearest 0 for each cell.
Given an m x n binary matrix mat, return the distance of the nearest 0 for each cell.
You are given two non-empty linked lists representing two non-negative integers...
We are given an array asteroids of integers representing asteroids in a row.
Given a string s representing a valid expression, implement a basic calculator to evaluate it, and return the result of the evaluation.
Given a string s which represents an expression, evaluate this expression and return its value.
You are given an array prices where prices[i] is the price of a given stock on the ith day. You want to maximize your profit by choosing a single day to buy one stock and choosing a different day in the future to sell that stock.
Given an array of integers nums which is sorted in ascending order, and an integer target, write a function to search target in nums...
Given the root of 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.
Return the least number of buses you must take to travel from source to target. Return -1 if it is not possible.
You are climbing a staircase. It takes n steps to reach the top. Each time you can either climb 1 or 2 steps. In how many distinct ways can you climb to the top?
You are given an integer array coins representing coins of different denominations and an integer amount representing a total amount of money.
You are given an integer array height of length n. There are n vertical lines drawn such that the two endpoints of the...
Given an integer array nums, return true if any value appears at least twice in the array, and return false if every element is distinct.
For example, the pair [0, 1], indicates that to take course 0 you have to first take course 1. Return true if you can finish all courses. Otherwise, return false.
Return the ordering of courses you should take to finish all courses. If there are many valid answers, return any of them. If it is impossible to finish all courses, return an empty array.
Given an array of integers temperatures represents the daily temperatures, return an array answer such that answer[i] is the number of days you have to wait after the ith day to get a warmer temperature.
Given a string s containing only digits, return the number of ways to decode it.
Design a data structure that supports adding new words and finding if a string matches any previously added string.
Given the root of a binary tree, return the length of the diameter of the tree.
You are given an array of strings tokens that represents an arithmetic expression in a Reverse Polish Notation.
Given two strings s and p, return an array of all the start indices of p's anagrams in s. You may return the answer in any order.
Given a sorted integer array arr, two integers k and x, return the k closest integers to x in the array.
Given the sorted rotated array nums of unique elements, return the minimum element of this array.
A peak element is an element that is strictly greater than its neighbors.
There is only one repeated number in nums, return this repeated number.
Implement a function to find the first bad version. You should minimize the number of calls to the API.
An image is represented by an m x n integer grid image where image[i][j] represents the pixel value of the image.
Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses.
Given an array of strings strs, group the anagrams together. You can return the answer in any order.
Implement a first in first out (FIFO) queue using only two stacks. The implemented queue should support all the functions of a normal queue...
Implement the RandomizedSet class...
You are given two lists of closed intervals, firstList and secondList, where firstList[i] = [starti, endi] and secondList[j] = [startj, endj]. Each list of intervals is pairwise disjoint and in sorted order.
Given the root of a binary tree, invert the tree, and return its root.
Given the root of a binary search tree, and an integer k, return the kth smallest value (1-indexed) of all the values of the nodes in the tree.
Given an n x n matrix where each of the rows and columns is sorted in ascending order, return the kth smallest element in the matrix.
Given a string containing digits from 2-9 inclusive, return all possible letter combinations that the number could represent. Return the answer in any order.
Given an unsorted array of integers nums, return the length of the longest consecutive elements sequence.
Given an m x n integers matrix, return the length of the longest increasing path in matrix.
Given a string s, return the longest palindromic substring in s.
Given a string s, find the length of the longest substring without repeating characters.
Given a string containing just the characters '(' and ')', return the length of the longest valid (well-formed) parentheses substring.
Given a binary search tree (BST), find the lowest common ancestor (LCA) node of two given nodes in the BST.
Given a binary tree, find the lowest common ancestor (LCA) of two given nodes in the tree.
Design a data structure that follows the constraints of a Least Recently Used (LRU) cache.
Given an array nums of size n, return the majority element.
Given an m x n binary matrix filled with 0's and 1's, find the largest square containing only 1's and return its area.
Given an integer array nums, find the subarray which has the largest sum and return its sum.
Given the root of a binary tree, return the maximum width of the given tree.
Given two sorted arrays nums1 and nums2 of size m and n respectively, return the median of the two sorted arrays.
You are given an array of k linked-lists lists, each linked-list is sorted in ascending order.
You are given the heads of two sorted linked lists list1 and list2.
Given the head of a singly linked list, return the middle node of the linked list.
Design a stack that supports push, pop, top, and retrieving the minimum element in constant time.
Among all possible rooted trees, those with minimum height (i.e. min(h)) are called minimum height trees (MHTs).
There are some spherical balloons taped onto a flat wall that represents the XY-plane...
Given two strings s and t of lengths m and n respectively, return the minimum window substring of s such that every character in t (including duplicates) is included in the window.
Given an integer array nums, move all 0's to the end of it while maintaining the relative order of the non-zero elements.
The n-queens puzzle is the problem of placing n queens on an n x n chessboard such that no two queens attack each other.
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.
Given a non-empty array nums containing only positive integers, find if the array can be partitioned into two subsets such that the sum of elements in both subsets is equal.
Given an integer array nums and an integer k, return true if it is possible to divide this array into k non-empty subsets whose sums are all equal.
An array arr a mountain if the following properties hold...
Given an array nums of distinct integers, return all the possible permutations. You can return the answer in any order.
Implement pow(x, n), which calculates x raised to the power n.
Given an integer array nums, return an array answer such that answer[i] is equal to the product of all the elements of nums except nums[i].
You need to implement the function pickIndex(), which randomly picks an index in the range [0, w.length - 1] (inclusive) and returns it.
Given a string s, rearrange the characters of s so that any two adjacent characters are not the same.
Given a signed 32-bit integer x, return x with its digits reversed.
Given the head of a singly linked list, reverse the list, and return the reversed list.
Given a roman numeral, convert it to an integer.
Given an integer array nums, rotate the array to the right by k steps, where k is non-negative.
You have to rotate the image in-place, which means you have to modify the input 2D matrix directly.
Given the array nums after the possible rotation and an integer target, return the index of target if it is in nums, or -1 if it is not in nums.
Design an algorithm to serialize and deserialize a binary tree.
Given a non-empty array of integers nums, every element appears twice except for one. Find that single one.
You are given an array of integers nums, there is a sliding window of size k which is moving from the very left of the array to the very right. You can only see the k numbers in the window.
The median is the middle value in an ordered integer list. If the size of the list is even, there is no middle value. So the median is the mean of the two middle values.
Given an m x n matrix, return all elements of the matrix in spiral order.
Given an integer array nums sorted in non-decreasing order, return an array of the squares of each number sorted in non-decreasing order.
Implement the myAtoi(string s) function, which converts a string to a 32-bit signed integer (similar to C/C++'s atoi function).
Given an array of integers nums and an integer k, return the total number of subarrays whose sum equals to k.
Write a program to solve a Sudoku puzzle by filling the empty cells.
Given the root of a binary tree, check whether it is a mirror of itself (i.e., symmetric around its center).
You want to build an expression out of nums by adding one of the symbols '+' and '-' before each integer in nums and then concatenate all the integers.
Given a characters array tasks, representing the tasks a CPU needs to do, where each letter represents a different task.
Given an integer array nums and an integer k, return the k most frequent elements. You may return the answer in any order.
Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it can trap after raining.
Given an array of integers nums and an integer target, return indices of the two numbers such that they add up to target.
Given two strings s and t, return true if t is an anagram of s, and false otherwise.
A phrase is a palindrome if, after converting all uppercase letters into lowercase letters and removing all non-alphanumeric characters, it reads the same forward and backward. Alphanumeric characters include letters and numbers.
Given a string s containing just the characters '(', ')', '{', '}', '[' and ']', determine if the input string is valid.
Determine if a 9 x 9 Sudoku board is valid.
Given the root of a binary tree, determine if it is a valid binary search tree (BST).
A transformation sequence from word beginWord to word endWord using a dictionary wordList is a sequence of words beginWord -> s1 -> s2 -> ... -> sk such that...
Given an m x n grid of characters board and a string word, return true if word exists in the grid.
Given an m x n board of characters and a list of strings words, return all words on the board.