经典算法题
文章平均质量分 84
沁园春.雪.
这个作者很懒,什么都没留下…
展开
-
array-Two Sum
题目描述: Given an array of integers, return indices of the two numbers such that they add up to a specific target. You may assume that each input would have exactly one solution, and you may not use the原创 2017-12-22 23:26:59 · 171 阅读 · 0 评论 -
使用动态规划求解字符串问题
72. Edit Distance--字符串编辑问题问题描述:Given two words word1 and word2, find the minimum number of steps required to convert word1 to word2. (each operation is counted as 1 step.)You have the fo原创 2018-01-08 10:52:24 · 2103 阅读 · 0 评论 -
array-股票买卖问题--- Best Time to Buy and Sell Stock
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 trans原创 2018-01-30 19:51:27 · 280 阅读 · 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],原创 2018-01-23 21:55:25 · 777 阅读 · 0 评论 -
二分查找在array中找数
BinarySearch-33. Search in Rotated Sorted Array问题描述:Suppose an array sorted in ascending order is rotated at some pivot unknown to you beforehand.(i.e., 0 1 2 4 5 6 7 might become 4 5 6 7原创 2017-12-27 21:25:54 · 328 阅读 · 0 评论 -
DFS和BFS的使用
所谓DFS,就是深度遍历,一般用到的就是递归。BFS一般就是广度遍历,一般就是利用辅助栈或者队列,来实现层次遍历。130. Surrounded Regions问题描述:Given a 2D board containing 'X' and 'O' (the letter O), capture all regions surrounded by 'X'.A reg原创 2018-01-30 20:06:12 · 463 阅读 · 0 评论 -
利用stack求柱状图的最大矩形面积
84. Largest Rectangle in Histogram问题描述:Given n non-negative integers representing the histogram's bar height where the width of each bar is 1, find the area of largest rectangle in the histogr原创 2018-01-08 21:14:47 · 611 阅读 · 0 评论 -
array问题---2Sum、3Sum、4Sum
1.Two Sum题目描述:Given an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would have exactly one solution, and y原创 2018-02-01 16:03:53 · 388 阅读 · 0 评论 -
array--31. Next Permutation
问题描述:Implement next permutation, which rearranges numbers into the lexicographically next greater permutation of numbers.If such arrangement is not possible, it must rearrange it as the lo原创 2018-02-01 17:48:30 · 211 阅读 · 0 评论 -
array---42. Trapping Rain Water
问题描述:Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it is able to trap after raining.For example, Given [0,1,0,2,1,0,1原创 2018-02-01 22:29:22 · 250 阅读 · 0 评论 -
hash_table---数独问题
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原创 2018-02-03 18:05:05 · 256 阅读 · 0 评论 -
Math--29. Divide Two Integers
问题描述:Divide two integers without using multiplication, division and mod operator.If it is overflow, return MAX_INT.问题解析:1.此题的题意是求两个整数相除的结果,但是不能用到乘法、除法或者求模运算。如果溢出就输出最大整数。2. 此题能用的只有加法和原创 2018-02-05 14:27:53 · 266 阅读 · 0 评论 -
Math--43. Multiply Strings大数乘法
题目描述:Given two non-negative integers num1 and num2 represented as strings, return the product of num1 and num2.Note:The length of both num1 and num2 is Both num1 and num2 contains原创 2018-02-05 14:44:59 · 248 阅读 · 0 评论 -
math---65. Valid Number
问题描述:Validate if a given string is numeric.Some examples:"0" => true" 0.1 " => true"abc" => false"1 a" => false"2e10" => trueNote: It is intended for the problem statement to原创 2018-02-05 14:52:29 · 218 阅读 · 0 评论 -
算法中的一些数学问题
1.欧几里得算法(辗转相除法) 该算法用来快速计算两个整数的最大公约数。 递归算法:int gcd(int a,int b){ if(b==0) return a; return gcd(b,a%b);} 非递归算法://辗转相除法int gcd(int a,int b){ int x, y; x = a>b?a:b; y ...原创 2018-03-16 23:27:08 · 2292 阅读 · 0 评论 -
二叉树问题
关于二叉树的笔试面试问题很多,涉及到深度遍历和广度遍历,以及相关路径搜索,树的重构,以及与二叉搜索平衡树相关的基础问题。。94. Binary Tree Inorder Traversal---考察二叉树中序遍历题目描述:Given a binary tree, return the inorder traversal of its nodes' values.Fo原创 2018-01-17 21:50:47 · 359 阅读 · 0 评论 -
回溯的使用
刷letecode老是能碰到很多需要使用回溯来解决的问题。研究了一下,简单来说就是,当你并不知道这条路能不能能走的通时,那就先走,走不通了就返回走另外一条。当然,时间复杂度是不低的,但是解决问题很有效。 利用回溯思想解决问题时。使用递归是极其方便的。在函数执行时,通过使用递归来走不同的路,当结果不对时返回,再走其它的路。但是一定注意:(1)在终止条件上要写正确。(2)回溯函数返回时原创 2017-12-28 21:00:49 · 671 阅读 · 0 评论 -
字符串处理问题----判断是否有效数字和unix路径简化
关于给定字符串的处理,一般没有什么复杂的算法,就是写逻辑。根据题意,考虑清楚,逻辑层次清晰,AC不是难事。65. Valid Number题目描述:Validate if a given string is numeric.Some examples:"0" => true" 0.1 " => true"abc" => false"1 a" => f原创 2018-01-04 16:04:16 · 418 阅读 · 0 评论 -
array- Median of Two Sorted Arrays
题目描述:There are two sorted arrays nums1 and nums2 of size m and n respectively. Find the median of the two sorted arrays. The overall run time complexity should be O(log (m+n)). Example 1: nums1 = [1原创 2017-12-22 23:49:41 · 175 阅读 · 0 评论 -
String-3.Longest Substring Without Repeating Characters
题目描述:Given a string, find the length of the longest substring without repeating characters. Examples: Given “abcabcbb”, the answer is “abc”, which the length is 3. Given “bbbbb”, the answer is “b”,原创 2017-12-23 10:32:17 · 176 阅读 · 0 评论 -
String-5. Longest Palindromic Substring
题目描述: Given a string s, find the longest palindromic substring in s. You may assume that the maximum length of s is 1000. Example: Input: “babad” Output: “bab” Note: “aba” is also a valid answer.原创 2017-12-23 11:38:25 · 211 阅读 · 0 评论 -
string-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 N原创 2017-12-23 22:43:45 · 232 阅读 · 0 评论 -
string-10.Regular Expression Matching
题目描述:Implement regular expression matching with support for '.' and '*'.'.' Matches any single character.'*' Matches zero or more of the preceding element.The matching should cover the entir原创 2017-12-23 23:04:48 · 223 阅读 · 0 评论 -
Math-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原创 2017-12-23 23:21:37 · 258 阅读 · 0 评论 -
array-3Sum
题目描述:Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find all unique triplets in the array which gives the sum of zero.Note: The solution set must no原创 2017-12-24 19:10:33 · 223 阅读 · 0 评论 -
string-49. Group Anagrams
题目描述:Given an array of strings, group anagrams together.For example, given: ["eat", "tea", "tan", "ate", "nat", "bat"], Return:[ ["ate", "eat","tea"], ["nat","tan"], ["bat"]]题原创 2017-12-31 17:05:51 · 254 阅读 · 0 评论 -
全排列问题
求一个数组或者string的全排列是很经典的问题。解决此类问题,首先在自己大脑思考,通常自己求一个数组的全排列会怎么求,比如arr[1, 2, 3],答案是:[1, 2, 3]、[1, 3, 2]、[2, 1, 3]、[2, 3, 1]、[3, 2, 1]、[3, 1, 2]。思路就是:从第一个字符开始和后面的字符进行交换,再从第二个字符开始和后面的进行交换,再第n-1和第n个交换。这样能够保证不原创 2017-12-31 16:51:59 · 400 阅读 · 0 评论 -
贪心算法的使用
贪心算法(又称贪婪算法)是指,在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,他所做出的是在某种意义上的局部最优解。 既然贪心总是在求局部最优,所有使用贪心要首先判断,我每次求局部最优,最后能不能达到全局最优。如果是,那么就可以使用贪心算法了。45. Jump Game II题目描述:Given an array of no原创 2017-12-29 23:56:03 · 918 阅读 · 0 评论 -
string-28.Implement strStr()
题目描述:Return the index of the first occurrence of needle in haystack, or -1 if needle is not part of haystack.Example 1:Input: haystack = "hello", needle = "ll"Output: 2Example 2:Input:原创 2017-12-26 17:13:16 · 218 阅读 · 0 评论 -
括号问题
Stack-20. Valid Parentheses:问题描述:Given a string containing just the characters '(', ')', '{', '}', '[' and ']', determine if the input string is valid.The brackets must close in the co原创 2017-12-25 20:34:38 · 811 阅读 · 0 评论 -
使用动态规划求方格路径问题
经常遇到给定的m×n中求左上角开始起步,到达右下角的问题。这类问题可以统一用辅助数组,利用dp来解决。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 d原创 2018-01-02 15:15:08 · 2781 阅读 · 0 评论 -
Pow()函数、sqrt()函数的实现
对于一些球指数幂、开方等函数经常会出现在笔试面试中。50. Pow(x, n)题目描述:Implement pow(x, n).Example 1:Input: 2.00000, 10Output: 1024.00000Example 2:Input: 2.10000, 3Output: 9.26100题目解析:1. 本题是想求:一个doub原创 2017-12-31 17:18:11 · 6771 阅读 · 3 评论 -
暴力枚举相关问题---利用二进制枚举法
1. 李白喝酒问题题目描述:话说大诗人李白,一生好饮。幸好他从不开车。一天,他提着酒壶,从家里出来,酒壶中有酒两斗。他边走边唱: 1. 无事街上走,提壶去打酒。 2. 逢店加一倍,遇花喝一斗。这一路上,他一共遇到店5次,遇到花10次,已知最后一次遇到的是花,他正好把酒喝光了。请你计算李白遇到店和花的次序,有多少种可能得方案。题目解析:1. 此...原创 2018-03-12 17:06:21 · 830 阅读 · 3 评论