LeetCode
文章平均质量分 64
cuihaolong
这个作者很懒,什么都没留下…
展开
-
328. Odd Even Linked List
题目Given a singly linked list, group all odd nodes together followed by the even nodes. Please note here we are talking about the node number and not the value in the nodes.You should try to原创 2016-03-28 11:21:20 · 229 阅读 · 0 评论 -
191. Number of 1 Bits
题目Write a function that takes an unsigned integer and returns the number of ’1' bits it has (also known as the Hamming weight).For example, the 32-bit integer ’11' has binary representatio原创 2016-03-28 10:41:21 · 222 阅读 · 0 评论 -
13. Roman to Integer
题目Given a roman numeral, convert it to an integer.Input is guaranteed to be within the range from 1 to 3999.分析罗马字母向整数转换,小数在大数左边做减法,小数在大数右边做加法,倒序扫描字符串,用current_num保存上一次循环扫描的字符,map_it->sec原创 2016-03-24 20:53:26 · 273 阅读 · 0 评论 -
206. Reverse Linked List
题目Reverse a singly linked list.Hint:A linked list can be reversed either iteratively or recursively. Could you implement both?分析链表转向问题,通过遍历链表,将其拆分为已经转置和待转置两部分,改变next指针即可。/** * Defin原创 2016-03-23 11:49:19 · 306 阅读 · 0 评论 -
169. Majority Element
题目Given an array of size n, find the majority element. The majority element is the element that appears more than ⌊ n/2 ⌋ times.You may assume that the array is non-empty and the majority原创 2016-03-23 11:14:29 · 226 阅读 · 0 评论 -
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 elem原创 2016-03-21 16:25:45 · 284 阅读 · 0 评论 -
242. Valid 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.分析由于存在原创 2016-03-21 11:40:28 · 282 阅读 · 0 评论 -
83. Remove Duplicates from Sorted List
题目Given a sorted linked list, delete all duplicates such that each element appear only once.For example,Given 1->1->2, return 1->2.Given 1->1->2->3->3, return 1->2->3.分析当前结点与下一个结点值比较原创 2016-03-29 15:51:56 · 271 阅读 · 0 评论 -
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?分析有一段楼梯有10级台阶,规定每一步只原创 2016-03-29 15:36:01 · 238 阅读 · 0 评论 -
231. Power of Two
题目Given an integer, write a function to determine if it is a power of two.分析循环除2。class Solution {public: bool isPowerOfTwo(int n) { if(n<=0) return false; if原创 2016-03-30 10:41:07 · 216 阅读 · 0 评论 -
202. 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 integer, replace the number by the sum of the原创 2016-03-30 10:26:23 · 207 阅读 · 0 评论 -
263. 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. For example, 6, 8 are ugly while 14 is not u原创 2016-03-29 16:05:24 · 221 阅读 · 0 评论 -
232. Implement Queue using Stacks
题目Implement the following operations of a queue using stacks.push(x) -- Push element x to the back of queue.pop() -- Removes the element from in front of queue.peek() -- Get the front elemen原创 2016-03-31 10:49:12 · 237 阅读 · 0 评论 -
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.分析先创建一个空结点当做哨位结点,merge_tail指向合并链表的尾部,比较l1和l2,循环原创 2016-03-31 09:54:47 · 219 阅读 · 0 评论 -
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 adjace原创 2016-04-04 13:13:17 · 235 阅读 · 0 评论 -
27. Remove Element
题目Given an array and a value, remove all instances of that value in place and return the new length.Do not allocate extra space for another array, you must do this in place with constant mem原创 2016-04-05 10:18:15 · 214 阅读 · 0 评论 -
235. Lowest Common Ancestor of a Binary Search Tree
题目Given a binary search tree (BST), find the lowest common ancestor (LCA) of two given nodes in the BST.According to the definition of LCA on Wikipedia: “The lowest common ancestor is define原创 2016-03-28 10:00:15 · 270 阅读 · 0 评论 -
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 nev原创 2016-04-04 14:03:10 · 224 阅读 · 0 评论 -
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 3B原创 2016-04-04 14:26:26 · 225 阅读 · 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,#,#原创 2016-04-05 09:56:58 · 232 阅读 · 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.分析相加结果模10,进位原创 2016-04-05 18:32:02 · 247 阅读 · 0 评论 -
172. Factorial Trailing Zeroes
题目Given an integer n, return the number of trailing zeroes in n!.Note: Your solution should be in logarithmic time complexity.分析n!可以写成k*10^m,所以末尾会有m个0。对n!分解可得n!=(2^x)*(3^y)*(5^z)...由于2*5原创 2016-04-05 19:51:39 · 198 阅读 · 0 评论 -
118. Pascal's Triangle
题目Given numRows, generate the first numRows of Pascal's triangle.For example, given numRows = 5,Return[ [1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1]]分析初始化第1行,然后循环根据上一行原创 2016-04-05 18:48:24 · 200 阅读 · 0 评论 -
225. Implement Stack using Queues
题目Implement the following operations of a stack using queues.push(x) -- Push element x onto stack.pop() -- Removes the element on top of the stack.top() -- Get the top element.empty() -- Ret原创 2016-04-08 21:48:50 · 208 阅读 · 0 评论 -
9. Palindrome Number
题目Determine whether an integer is a palindrome. Do this without extra space.click to show spoilers.Some hints:Could negative integers be palindromes? (ie, -1)If you are thinking of c原创 2016-04-08 17:13:59 · 222 阅读 · 0 评论 -
119. Pascal's Triangle II
题目Given an index k, return the kth row of the Pascal's triangle.For example, given k = 3,Return [1,3,3,1].Note:Could you optimize your algorithm to use only O(k) extra space?分析最基原创 2016-04-08 16:19:39 · 218 阅读 · 0 评论 -
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原创 2016-04-08 15:32:32 · 195 阅读 · 0 评论 -
112. Path Sum
题目Given a binary tree and a sum, determine if the tree has a root-to-leaf path such that adding up all the values along the path equals the given sum.For example:Given the below binary tree原创 2016-04-08 21:28:40 · 241 阅读 · 0 评论 -
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原创 2016-04-13 14:03:37 · 292 阅读 · 0 评论 -
190. Reverse Bits
题目Reverse bits of a given 32 bits unsigned integer.For example, given input 43261596 (represented in binary as 00000010100101000001111010011100), return 964176192 (represented in binary as00原创 2016-04-13 15:43:20 · 223 阅读 · 0 评论 -
299. Bulls and Cows
题目You are playing the following Bulls and Cows game with your friend: You write down a number and ask your friend to guess what the number is. Each time your friend makes a guess, you provide原创 2016-04-13 16:23:45 · 289 阅读 · 0 评论 -
58. Length of Last Word
题目Given a string s consists of upper/lower-case alphabets and empty space characters ' ', return the length of last word in the string.If the last word does not exist, return 0.Note: A原创 2016-04-13 20:49:25 · 249 阅读 · 0 评论 -
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 fil原创 2016-04-10 19:54:25 · 223 阅读 · 0 评论 -
160. Intersection of Two Linked Lists
题目Write a program to find the node at which the intersection of two singly linked lists begins.For example, the following two linked lists:A: a1 → a2 ↘原创 2016-04-10 20:31:50 · 208 阅读 · 0 评论 -
219. Contains Duplicate II
题目Given an array of integers and an integer k, find out whether there are two distinct indices i and j in the array such that nums[i] = nums[j] and the difference between i and jis at most k原创 2016-04-11 15:40:08 · 223 阅读 · 0 评论 -
205. Isomorphic Strings
题目Given two strings s and t, determine if they are isomorphic.Two strings are isomorphic if the characters in s can be replaced to get t.All occurrences of a character must be replaced w原创 2016-04-11 15:43:01 · 230 阅读 · 0 评论 -
38. Count and Say
题目The count-and-say sequence is the sequence of integers beginning as follows:1, 11, 21, 1211, 111221, ...1 is read off as "one 1" or 11.11 is read off as "two 1s" or 21.21 is read原创 2016-04-21 10:02:17 · 218 阅读 · 0 评论 -
203. Remove Linked List Elements
题目Remove all elements from a linked list of integers that have value val.ExampleGiven: 1 --> 2 --> 6 --> 3 --> 4 --> 5 --> 6, val = 6Return: 1 --> 2 --> 3 --> 4 --> 5分析遍历链表找next->val原创 2016-04-21 10:45:43 · 208 阅读 · 0 评论 -
257. Binary Tree Paths
题目Given a binary tree, return all root-to-leaf paths.For example, given the following binary tree: 1 / \2 3 \ 5All root-to-leaf paths are:["1->2->5", "1->3"]分原创 2016-04-21 19:47:30 · 209 阅读 · 0 评论 -
234. Palindrome Linked List
题目Given a singly linked list, determine if it is a palindrome.Follow up:Could you do it in O(n) time and O(1) space?分析判断一个链表中的值是否是回文字,因为判断回文字需要两个指针,一个从头向尾移动,一个从尾向头移动,如果要一次遍历完成,则需要使原创 2016-06-02 16:52:24 · 327 阅读 · 0 评论