leetcode
文章平均质量分 55
知之可否
这个作者很懒,什么都没留下…
展开
-
拓扑排序:课程表Course Schedule
There are a total of n courses you have to take, labeled from 0 to n - 1.Some courses may have prerequisites, for example to take course 0 you have to first take course 1, which is expressed as a pair:原创 2016-05-31 16:28:56 · 1667 阅读 · 0 评论 -
拓扑排序:课程表Course Schedule2
https://leetcode.com/problems/course-schedule-ii/class Solution {public: vector<int> findOrder(int numCourses, vector<pair<int, int>>& prerequisites) { vector<int> res; vector<int>原创 2016-05-31 16:44:39 · 800 阅读 · 0 评论 -
合并区间 Merge Intervals
https://leetcode.com/problems/merge-intervals/先对区间按照左边界排序,然后顺序扫描,合并重叠的区间即可。/** * Definition for an interval. * struct Interval { * int start; * int end; * Interval() : start(0), end(0)原创 2016-06-07 16:57:05 · 2087 阅读 · 0 评论 -
插入区间Insert Interval
https://leetcode.com/problems/insert-interval/参考 http://blog.csdn.net/linhuanmars/article/details/22238433基本思路就是先扫描走到新的interval应该插入的位置,接下来就是插入新的interval并检查后面是否冲突,一直到新的interval的end小于下一个interval的start,然后原创 2016-06-07 19:55:09 · 676 阅读 · 0 评论 -
Nim游戏 Nim Game
https://leetcode.com/problems/nim-game/博弈论中极为经典的尼姆游戏。有总数为n的石头,每个人可以拿1~m个石头,两个人交替拿,拿到最后一个的人获胜。究竟是先手有利,还是后手有利?1个石子,先手全部拿走; 2个石子,先手全部拿走; 3个石子,先手全部拿走; 4个石子,后手面对的是先手的第1,2,3情况,后手必胜; 5个石子,先手拿走1个让后手面对第4种情况原创 2016-06-24 22:02:10 · 654 阅读 · 0 评论 -
Add Digits
https://leetcode.com/problems/add-digits/Given a non-negative integer num, repeatedly add all its digits until the result has only one digit.For example:Given num = 38, the process is like: 3 + 8 = 11,原创 2016-06-24 22:17:18 · 420 阅读 · 0 评论 -
202. Happy Number
https://leetcode.com/problems/happy-number/Write an algorithm to determine if a number is "happy".A happy number is a number defined by the following process: Starting with any positive原创 2016-06-24 22:50:12 · 945 阅读 · 0 评论 -
263. Ugly Number 丑数
https://leetcode.com/problems/ugly-number/Write a program to check whether a given number is an ugly number.Ugly numbers are positive numbers whose prime factors only include 2, 3, 5. Fo原创 2016-06-25 09:43:07 · 261 阅读 · 0 评论 -
264. Ugly Number II
https://leetcode.com/problems/ugly-number-ii/Write a program to find the n-th ugly number.这次又犯了一次错误:注意三个if判断,不能用else if。因为有可能有多个if同时满足!class Solution {public: int nthUglyN原创 2016-06-25 10:26:10 · 259 阅读 · 0 评论 -
23. Merge k Sorted Lists 合并K个有序链表
https://leetcode.com/problems/merge-k-sorted-lists//** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next原创 2016-06-25 11:46:41 · 549 阅读 · 0 评论 -
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.注意 : 12 这样的二原创 2016-06-25 15:22:26 · 353 阅读 · 0 评论 -
110. Balanced Binary Tree 平衡二叉树(重点!!)
https://leetcode.com/problems/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 whic原创 2016-06-25 15:46:03 · 481 阅读 · 0 评论 -
226. Invert Binary Tree 翻转二叉树
https://leetcode.com/problems/invert-binary-tree/invert a binary tree. 4 / \ 2 7 / \ / \1 3 6 9to 4 / \ 7 2 / \ / \9 6 3 1/** * Defin原创 2016-06-25 16:36:38 · 312 阅读 · 0 评论 -
101. Symmetric Tree 对称树 (难点!)
https://leetcode.com/problems/symmetric-tree/Given a binary tree, check whether it is a mirror of itself (ie, symmetric around its center).For example, this binary tree [1,2,2,3,4,4,3] i原创 2016-06-25 19:14:34 · 550 阅读 · 0 评论 -
179. Largest Number 排成最大的数字(重要!)
https://leetcode.com/problems/largest-number/Given a list of non negative integers, arrange them such that they form the largest number.For example, given [3, 30, 34, 5, 9], the largest原创 2016-06-26 16:44:11 · 1005 阅读 · 0 评论 -
235. Lowest Common Ancestor of a Binary Search Tree 二叉搜索树的最低公共祖先(难)
https://leetcode.com/problems/lowest-common-ancestor-of-a-binary-search-tree/[思路]如果如果p,q 比root小, 则LCA必定在左子树, 如果p,q比root大, 则LCA必定在右子树. 如果一大一小, 则root即为LCA./** * Definition for a binar原创 2016-06-25 23:13:44 · 379 阅读 · 0 评论 -
349. Intersection of Two Arrays 两个数组交集
https://leetcode.com/problems/intersection-of-two-arrays/Given two arrays, write a function to compute their intersection.Example:Given nums1 = [1, 2, 2, 1], nums2 = [2, 2], return [2].原创 2016-06-26 22:41:06 · 386 阅读 · 0 评论 -
237. Delete Node in a Linked List
https://leetcode.com/problems/delete-node-in-a-linked-list/Write a function to delete a node (except the tail) in a singly linked list, given only access to that node.Supposed the linked l原创 2016-06-27 09:36:06 · 246 阅读 · 0 评论 -
100. Same Tree 树是否相同
https://leetcode.com/problems/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 identica原创 2016-06-27 09:56:20 · 595 阅读 · 0 评论 -
242. Valid Anagram 有效的Anagram
Given two strings s and t, write a function to determine if t is an anagram of s.For example,s = "anagram", t = "nagaram", return true.s = "rat", t = "car", return false.Note:You may ass原创 2016-06-27 10:10:20 · 328 阅读 · 0 评论 -
168. Excel Sheet Column Title Excel表列名 和 171. Excel Sheet Column Number
Given a positive integer, return its corresponding column title as appear in an Excel sheet.For example: 1 -> A 2 -> B 3 -> C ... 26 -> Z 27 -> AA 28 -> AB class原创 2016-06-27 10:40:17 · 745 阅读 · 0 评论 -
Contains Duplicate 包含重复
217. Contains DuplicateGiven 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 retur原创 2016-06-28 11:29:42 · 1080 阅读 · 0 评论 -
326. Power of Three ,231. Power of Two ,
326. Power of Threelogn3=logn10log310class Solution {public: bool isPowerOfThree(int n) { double logRes = log10(n) / log10(3); if (logRes - (int)logRes == 0){ return true; } r原创 2016-06-28 15:09:10 · 323 阅读 · 0 评论 -
229. Majority Element II (重要!)
Given an integer array of size n, find all elements that appear more than ⌊ n/3 ⌋ times. The algorithm should run in linear time and in O(1) space.若num与n1或n2相同,则将其对应的出现次数加1否则,若c1或c2为0,则将原创 2016-06-28 16:30:01 · 403 阅读 · 0 评论 -
236. Lowest Common Ancestor of a Binary Tree
跟这题相似 235. Lowest Common Ancestor of a Binary Search Tree 二叉搜索树的最低公共祖先(难)Given a binary tree, find the lowest common ancestor (LCA) of two given nodes in the tree.According to the definiti原创 2016-06-29 15:32:44 · 380 阅读 · 0 评论 -
121. Best Time to Buy and Sell Stock
Say you have an array for which the ith element is the price of a given stock on day i.If you were only permitted to complete at most one transaction (ie, buy one and sell one share of the stock),原创 2016-06-29 15:46:52 · 284 阅读 · 0 评论 -
122. Best Time to Buy and Sell Stock II
Say you have an array for which the ith element is the price of a given stock on day i.Design an algorithm to find the maximum profit. You may complete as many transactions as you like (ie, buy on原创 2016-06-29 16:14:51 · 344 阅读 · 0 评论 -
6. ZigZag Conversion
The string "PAYPALISHIRING" is written in a zigzag pattern on a given number of rows like this: (you may want to display this pattern in a fixed font for better legibility)P A H NA P L S I原创 2016-07-11 15:02:32 · 318 阅读 · 0 评论 -
189. Rotate Array
Rotate an array of n elements to the right by k steps.For example, with n = 7 and k = 3, the array [1,2,3,4,5,6,7] is rotated to [5,6,7,1,2,3,4].class Solution {public: void rotate(vector&原创 2016-07-11 16:08:56 · 231 阅读 · 0 评论 -
165. Compare Version Numbers(重要)
Compare two version numbers version1 and version2.If version1 > version2 return 1, if version1 version2 return -1, otherwise return 0.You may assume that the version strings are non-empty and co原创 2016-07-11 16:48:40 · 560 阅读 · 0 评论 -
8. String to Integer (atoi) (重要)
Implement atoi to convert a string to an integer.Hint: Carefully consider all possible input cases. If you want a challenge, please do not see below and ask yourself what are the possible input ca原创 2016-07-11 19:40:00 · 336 阅读 · 0 评论 -
24. Swap Nodes in Pairs
Given a linked list, swap every two adjacent nodes and return its head.For example,Given 1->2->3->4, you should return the list as 2->1->4->3.Your algorithm should use only constant space. Y原创 2016-06-29 16:30:06 · 300 阅读 · 0 评论 -
331. Verify Preorder Serialization of a Binary Tree(难)
One way to serialize a binary tree is to use pre-order traversal. When we encounter a non-null node, we record the node's value. If it is a null node, we record using a sentinel value such as #.原创 2016-07-22 11:46:48 · 713 阅读 · 0 评论 -
78. Subsets 90. Subsets II
78. SubsetsGiven a set of distinct integers, nums, return all possible subsets.Note: The solution set must not contain duplicate subsets.For example,If nums = [1,2,3], a solution is:原创 2016-07-22 12:22:40 · 367 阅读 · 0 评论 -
338. Counting Bits
iven a non negative integer number num. For every numbers i in the range 0 ≤ i ≤ num calculate the number of 1's in their binary representation and return them as an array.Example:For num =原创 2016-07-11 20:15:48 · 206 阅读 · 0 评论 -
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.一个整数按位存储于一个int数组中,排列原创 2016-06-30 10:35:59 · 347 阅读 · 0 评论 -
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,null,null,1原创 2016-06-30 11:13:18 · 356 阅读 · 0 评论 -
137. Single Number II
Given an array of integers, every element appears three times except for one. Find that single one.Note:Your algorithm should have a linear runtime complexity. Could you implement it without u原创 2016-07-12 15:05:27 · 354 阅读 · 0 评论 -
260. Single Number III
Given an array of numbers nums, in which exactly two elements appear only once and all the other elements appear exactly twice. Find the two elements that appear only once.For example:Given原创 2016-07-12 15:25:07 · 407 阅读 · 0 评论 -
347. Top K Frequent Elements
Given a non-empty array of integers, return the k most frequent elements.For example,Given [1,1,1,2,2,3] and k = 2, return [1,2].Note: You may assume k is always valid, 1 ≤ k ≤ number原创 2016-07-12 16:29:24 · 272 阅读 · 0 评论