Leetcode
拾毅者
长期关注机器学习,数据挖掘和人工智能领域。
展开
-
Leetcode[70]-Climbing Stairs
You are climbing a stair case. It takes n steps to reach to the top.Each time you can either climb 1 or 2 steps. In how many distinct ways can you climb to the top?题意:给你一个n阶的台阶,你一次最多只能上2个台阶,请问一共有多少个走法?原创 2015-06-14 12:27:58 · 919 阅读 · 0 评论 -
Leetcode[102]-Binary Tree Level Order Traversal
Given a binary tree, return the level order traversal of its nodes’ values. (ie, from left to right, level by level).For example: Given binary tree {3,9,20,#,#,15,7}, 3 / \ 9 20 / \ 1原创 2015-06-13 10:49:07 · 1279 阅读 · 0 评论 -
Leetcode[145]-Binary Tree Postorder Traversal
Given a binary tree, return the postorder traversal of its nodes’ values.For example: Given binary tree {1,#,2,3}, 1 \ 2 / 3return [3,2,1].Note: Recursive solution is trivial, could原创 2015-06-13 10:10:29 · 1088 阅读 · 0 评论 -
Leetcode[144]-Binary Tree Preorder Traversal
Given a binary tree, return the preorder traversal of its nodes’ values.For example: Given binary tree{1,#,2,3}, 1 \ 2 / 3return [1,2,3].递归遍历:/**C++ * Definition for a binary tree n原创 2015-06-13 09:24:24 · 852 阅读 · 0 评论 -
Leetcode[110]-Balanced Binary Tree
Given a binary tree, determine if it is height-balanced.For this problem, a height-balanced binary tree is defined as a binary tree in which the depth of the two subtrees of every node never differ by原创 2015-06-12 23:00:48 · 1068 阅读 · 0 评论 -
Leetcode[173]-Binary Search Tree Iterator
Implement an iterator over a binary search tree (BST). Your iterator will be initialized with the root node of a BST.Calling next() will return the next smallest number in the BST.Note: next() and hasN原创 2015-06-12 22:34:58 · 701 阅读 · 0 评论 -
Leetcode[96]-Unique Binary Search Trees
Given n, how many structurally unique BST’s (binary search trees) that store values 1…n?For example, Given n = 3, there are a total of 5 unique BST’s. 1 3 3 2 1 \ /原创 2015-06-12 21:39:07 · 1666 阅读 · 0 评论 -
Leetcode[113]-Path Sum II
Given a binary tree and a sum, find all root-to-leaf paths where each path’s sum equals the given sum.For example: Given the below binary tree and sum = 22, 5 / \原创 2015-06-12 16:33:27 · 1809 阅读 · 0 评论 -
Leetcode[129]-Sum Root to Leaf Numbers
Given a binary tree containing digits from 0-9 only, each root-to-leaf path could represent a number.An example is the root-to-leaf path 1->2->3 which represents the number 123.Find the total sum of al原创 2015-06-12 14:15:32 · 956 阅读 · 0 评论 -
LeetCode[155]-Min Stack
Design a stack that supports push, pop, top, and retrieving the minimum element in constant time.push(x) – Push element x onto stack. pop() – Removes the element on top of the stack. top() – Get the原创 2015-06-12 08:56:37 · 1014 阅读 · 0 评论 -
Leetcode[111]-Minimum Depth of Binary Tree
Given a binary tree, find its minimum depth.The minimum depth is the number of nodes along the shortest path from the root node down to the nearest leaf node.递归法:/** * Definition for a binary tree nod原创 2015-06-11 22:23:13 · 971 阅读 · 0 评论 -
Leetcode[94]-Binary Tree Inorder Traversal
Given a binary tree, return the inorder traversal of its nodes’ values.For example: Given binary tree {1,#,2,3}, 1 \ 2 / 3return[1,3,2].递归遍历法:/** * Definition for a binary tree node原创 2015-06-11 20:23:17 · 881 阅读 · 0 评论 -
Leetcode[100]-Same Tree
Given two binary trees, write a function to check if they are equal or not.Two binary trees are considered equal if they are structurally identical and the nodes have the same value.思路:递归法判断 假设两棵树根结点为原创 2015-06-11 18:16:33 · 859 阅读 · 0 评论 -
Leetcode[104]-Maximum Depth of Binary Tree
Given a binary tree, find its maximum depth.The maximum depth is the number of nodes along the longest path from the root node down to the farthest leaf node.求最大深度,用递归的方法/** * Definition for a binary原创 2015-06-11 17:17:45 · 866 阅读 · 0 评论 -
Leetcode[20]-Valid Parentheses
Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the input string is valid.The brackets must close in the correct order, "()" and "()[]{}" are all valid but "原创 2015-06-11 14:45:26 · 838 阅读 · 0 评论 -
Leetcode[98]-Validate Binary Search Tree
Validate Binary Search TreeGiven a binary tree, determine if it is a valid binary search tree (BST).Assume a BST is defined as follows:The left subtree of a node contains only nodes with keys less than原创 2015-06-13 12:19:54 · 1035 阅读 · 0 评论 -
Leetcode[103]-Binary Tree Zigzag Level Order Traversal
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原创 2015-06-13 12:39:09 · 998 阅读 · 0 评论 -
Leetcode[114]-Flatten Binary Tree to Linked List
Given a binary tree, flatten it to a linked list in-place.For example, Given 1 / \ 2 5 / \ \ 3 4 6The flattened tree should look like: 1 \ 2原创 2015-06-13 13:01:06 · 1397 阅读 · 0 评论 -
Leetcode[215]-Kth Largest Element in an Array
Find the kth largest element in an unsorted array. Note that it is the kth largest element in the sorted order, not the kth distinct element.For example, Given[3,2,1,5,6,4]and k = 2, return 5.Note:原创 2015-06-13 20:58:12 · 1604 阅读 · 0 评论 -
Leetcode[107]-Binary Tree Level Order Traversal II
Given a binary tree, return the bottom-up level order traversal of its nodes’ values. (ie, from left to right, level by level from leaf to root).For example: Given binary tree {3,9,20,#,#,15,7}, 3原创 2015-06-13 11:08:55 · 1560 阅读 · 0 评论 -
Leetcode[9]-Palindrome Number
Determine whether an integer is a palindrome. Do this without extra space.Some hints: Could negative integers be palindromes? (ie, -1)If you are thinking of converting the integer to string, note the原创 2015-06-13 08:45:03 · 902 阅读 · 0 评论 -
Leetcode[7]-Reverse Integer
Reverse digits of an integer.Example1: x = 123, return 321 Example2: x = -123, return -321取一个数的最后一位,用x % 10,取一个数的前n-1位(共n位),用x/10,每一次取的时候,都将上一次取的数乘以10,然后再加上末尾的数即可,代码如下:Code(C++)class Solution {public原创 2015-06-12 23:09:40 · 999 阅读 · 0 评论 -
Leetcode[226]-Invert Binary Tree
Invert a binary tree. 4 / \ 2 7 / \ / \1 3 6 9to 4 / \ 7 2 / \ / \9 6 3 1Trivia: This problem was inspired by this original tweet by Max Howell: Google:原创 2015-06-12 17:32:00 · 1641 阅读 · 0 评论 -
Leetcode[101]-Symmetric Tree
Given a binary tree, check whether it is a mirror of itself (ie, symmetric around its center).For example, this binary tree is symmetric: 1 / \ 2 2 / \ / \3 4 4 3But the following is not原创 2015-06-11 23:00:32 · 871 阅读 · 0 评论 -
Leetcode[222]-Count Complete Tree Nodes
Given a complete binary tree, count the number of nodes.Definition of a complete binary tree from Wikipedia: In a complete binary tree every level, except possibly the last, is completely filled, and原创 2015-06-11 13:24:18 · 2139 阅读 · 0 评论 -
Leetcode[92]-Reverse Linked List II
Reverse a linked list from position m to n. Do it in-place and in one-pass.For example: Given 1->2->3->4->5->NULL, m = 2 and n = 4,return 1->4->3->2->5->NULL.Note: Given m, n satisfy the following co原创 2015-06-10 22:41:01 · 717 阅读 · 0 评论 -
Leetcode[82]-Remove Duplicates from Sorted List II
Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct numbers from the original list.For example, Given 1->2->3->3->4->4->5, return1->2->5. Given 1->1->1->2-原创 2015-06-10 20:33:01 · 792 阅读 · 0 评论 -
Leetcode[19]-Remove Nth Node From End of List
Given a linked list, remove the nth node from the end of list and return its head.For example, Given linked list: 1->2->3->4->5, and n = 2. After removing the second node from the end, the linked l原创 2015-06-10 19:58:39 · 783 阅读 · 0 评论 -
Leetcode[21]-Merge Two Sorted Lists
Merge two sorted linked lists and return it as a new list. The new list should be made by splicing together the nodes of the first two lists.思路:要求合并两个排好序的链表。开始我们初始化头front和尾tail,然后从两个单链表的头部比较两个单链表,两链表同时原创 2015-06-10 13:37:11 · 1065 阅读 · 0 评论 -
Leetcode[63]-Unique Paths II
Follow up for “Unique Paths”:Now consider if some obstacles are added to the grids. How many unique paths would there be?An obstacle and empty space is marked as 1 and 0 respectively in the grid.For ex原创 2015-06-14 13:29:34 · 948 阅读 · 0 评论 -
Leetcode[62]-Unique Paths
A robot is located at the top-left corner of a m x n grid (marked ‘Start’ in the diagram below).The robot can only move either down or right at any point in time. The robot is trying to reach the botto原创 2015-06-14 12:59:05 · 1180 阅读 · 0 评论 -
Leetcode[198]-House Robber
You are a professional robber planning to rob houses along a street. Each house has a certain amount of money stashed, the only constraint stopping you from robbing each of them is that adjacent houses原创 2015-06-14 11:18:29 · 1055 阅读 · 0 评论 -
Leetcode[125]-Valid Palindrome
Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignoring cases.For example,"A man, a plan, a canal: Panama" is a palindrome."race a car" is not a palindr原创 2015-06-11 14:12:35 · 930 阅读 · 0 评论 -
Leetcode[74]-Search a 2D Matrix
Write an efficient algorithm that searches for a value in an m x n matrix. This matrix has the following properties:Integers in each row are sorted from left to right. The first integer of each row is原创 2015-06-11 12:18:43 · 715 阅读 · 0 评论 -
Leetcode[36]-Valid Sudoku
Determine if a Sudoku is valid, according to: Sudoku Puzzles - The Rules.The Sudoku board could be partially filled, where empty cells are filled with the character ‘.’. A partially filled sudoku whic原创 2015-06-09 21:09:12 · 654 阅读 · 0 评论 -
Leetcode[88]-Merge Sorted Array
Given two sorted integer arrays nums1 and nums2, merge nums2 into nums1 as one sorted array.Note: You may assume that nums1 has enough space (size that is greater or equal to m + n) to hold additional原创 2015-06-09 13:13:13 · 1001 阅读 · 0 评论 -
Leetcode[18]-4Sum
Given an array S of n integers, are there elements a, b, c, and d in S such that a + b + c + d = target? Find all unique quadruplets in the array which gives the sum of target.Note: Elements in a quad原创 2015-06-09 19:21:18 · 612 阅读 · 0 评论 -
Leetcode[66]-Plus One
Given a non-negative number represented as an array of digits, plus one to the number.The digits are stored such that the most significant digit is at the head of the list.题意:给定一个数组,表示的是非负数的各个位的数,现在将该数原创 2015-06-09 15:54:09 · 1020 阅读 · 0 评论 -
Leetcode[219]-Contains Duplicate II
Given an array of integers and an integer k, find out whether there there are two distinct indices i and j in the array such that nums[i] = nums[j] and the difference between i and j is at most k.分析:用m原创 2015-06-09 15:28:46 · 1147 阅读 · 0 评论 -
Leetcode[217]-Contains Duplicate
Given an array of integers, find if the array contains any duplicates. Your function should return true if any value appears at least twice in the array, and it should return false if every element is原创 2015-06-09 11:03:10 · 1201 阅读 · 0 评论