算法和刷题
vanturman
这个作者很懒,什么都没留下…
展开
-
利用动态规划解决袋鼠过河问题
最近开始刷牛客上的题目,由于本科学的算法基本都忘了,因此写几个帖子记录下自己刷题学到的东西,正好复习一下算法了。 我们都知道,动态规划算法是算法设计中非常重要的一种方法,是一个多阶段决策的过程。在使用动态规划算法之前需要先判断问题是否满足优化原则,如果不满足优化原则是不能使用动态规划算法的。举个最简单的例子,已知S是起点,T是终点,在S和T之间有三个中间节点,每个节点间的路径都有两条,代价为2或者原创 2018-01-18 15:46:33 · 4861 阅读 · 0 评论 -
leetcode 456. 132 Pattern
Given a sequence of n integers a1, a2, ..., an, a 132 pattern is a subsequence ai, aj, ak such that i < j < k and ai < ak < aj. Design an algorithm that takes a list of n numbers as input ...原创 2018-06-03 14:58:19 · 130 阅读 · 0 评论 -
最长公共子序列与最长公共子串(DP)
1. 问题描述子串应该比较好理解,至于什么是子序列,这里给出一个例子:有两个母串cnblogsbelong比如序列bo, bg, lg在母串cnblogs与belong中都出现过并且出现顺序与母串保持一致,我们将其称为公共子序列。最长公共子序列(Longest Common Subsequence,LCS),顾名思义,是指在所有的子序列中最长的那一个。子串是要求更严格的一种子序列,要求在母串中连续...转载 2018-05-16 16:45:11 · 464 阅读 · 0 评论 -
String to Integer
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 cases....原创 2018-05-16 19:46:42 · 233 阅读 · 0 评论 -
求和问题总结(leetcode 2Sum, 3Sum, 4Sum, K Sum)
做过leetcode的人都知道, 里面有2sum, 3sum(closest), 4sum等问题, 这些也是面试里面经典的问题, 考察是否能够合理利用排序这个性质, 一步一步得到高效的算法. 经过总结, 本人觉得这些问题都可以使用一个通用的K sum求和问题加以概括消化, 这里我们先直接给出K Sum的问题描述和算法(递归解法), 然后将这个一般性的方法套用到具体的K, 比如leetcode中的2...转载 2018-05-16 21:41:09 · 673 阅读 · 0 评论 -
leetcode : 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 ...原创 2018-05-23 19:12:38 · 113 阅读 · 0 评论 -
LeetCode : 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 / \ 15...原创 2018-05-23 19:13:39 · 100 阅读 · 0 评论 -
LeetCode : 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 {...原创 2018-05-23 19:14:43 · 181 阅读 · 0 评论 -
leetcode : 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 \ / ...原创 2018-05-24 15:19:13 · 88 阅读 · 0 评论 -
leetcode Linked List Cycle II
Given a linked list, return the node where the cycle begins. If there is no cycle, return null.Note: Do not modify the linked list.Follow up:Can you solve it without using extra space?如下图所示,X,Y,Z分别为链表...原创 2018-05-26 09:17:45 · 121 阅读 · 0 评论 -
Binary Tree Preorder Traversal
Given a binary tree, return the preorder traversal of its nodes' values.ExampleGiven: 1 / \ 2 3 / \4 5return [1,2,4,5,3].class Solution { public: vector<int> preorderTrave...原创 2018-04-01 18:25:49 · 106 阅读 · 0 评论 -
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 diffe...原创 2018-04-01 16:40:20 · 130 阅读 · 0 评论 -
Insert Node in a Binary Search Tree
Given a binary search tree and a new tree node, insert the node into the tree. You should keep the tree still be a valid binary search tree. Can you do it without recursion?递归/** * Definition of Tree...原创 2018-04-01 17:11:25 · 198 阅读 · 0 评论 -
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 / \ 15...原创 2018-04-01 17:29:00 · 132 阅读 · 0 评论 -
Lintcode Search a 2D Matrix
DescriptionWrite 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 ea...原创 2018-05-17 17:04:12 · 208 阅读 · 0 评论 -
Lintcode 127. Topological Sorting
Given an directed graph, a topological order of the graph nodes is defined as follow:For each directed edge A -> B in graph, A must before B in the order list.The first node in the order can be any...原创 2018-05-12 22:48:59 · 330 阅读 · 0 评论 -
LeetCode四道Permutations问题详解
LeetCode中与Permutations相关的共有四题: 31. Next Permutation 46. Permutations 47. Permutations II 60. Permutation Sequence 大致包括了所有全排列问题可能考到的题型。 本文按序列出了解这四道题的详细思路和AC代码。在各题之间,尽可能地使用了不同的解法,使大家对各种方法能有个...原创 2018-05-13 11:04:24 · 226 阅读 · 0 评论