递归||回溯||分治
文章平均质量分 78
别哔哔好伐
安静的coder
展开
-
快速幂取模
用二分,使复杂度由 O(n) 变为 O(logn)#include#includeusing namespace std;/// (b^n)mod m; (a*b mod m) = (a mod m)*(b mod m)mod m O(log n)/// (b^n)mod m; (a - b ) mod m =( (a mod m)-(b mod m)原创 2015-07-09 15:20:02 · 784 阅读 · 0 评论 -
八皇后
八皇后(可以扩展为N皇后问题)每行每列每个对角线都不允许有两个或两个以上的皇后回溯,递归求解#include/// 八皇后#includeusing namespace std;int c[10]; /// 第i行 列为a[i]int total;int n;/// 在一条主对角线上 则它们的 x-y相同 y=x+b/// 在一条负对角线上 则它们的 x+y相原创 2015-06-23 22:22:20 · 979 阅读 · 0 评论 -
leetcode-101-Symmetric Tree
Symmetric TreeFor example, this binary tree is symmetric: 1 / \ 2 2 / \ / \3 4 4 3But the following is not: 1 / \ 2 2 \ \ 3 3Note:B原创 2015-09-21 21:13:19 · 318 阅读 · 0 评论 -
leetcode-102-Binary Tree Level Order Traversal
Binary Tree Level Order TraversalGiven 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,#,原创 2015-09-22 20:16:08 · 351 阅读 · 0 评论 -
leetcode-110-Balanced Binary Tree
Balanced Binary TreeGiven 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 subt原创 2015-09-21 12:57:37 · 347 阅读 · 0 评论 -
leetcode-111-Minimum Depth of Binary Tree
Minimum Depth of Binary TreeGiven 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原创 2015-07-23 22:04:57 · 508 阅读 · 0 评论 -
leetcode-53-Maximum Subarray
Maximum SubarrayFind the contiguous subarray within an array (containing at least one number) which has the largest sum.For example, given the array [−2,1,−3,4,−1,2,1,−5,4],the contiguous suba原创 2015-07-10 16:47:29 · 431 阅读 · 0 评论 -
leetcode-118-Pascal's Triangle
Pascal's TriangleGiven 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原创 2015-08-23 19:05:55 · 545 阅读 · 0 评论 -
leetcode-94-Binary Tree Inorder Traversal
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 / 3原创 2015-06-21 23:08:45 · 399 阅读 · 0 评论 -
leetcode-112-Path Sum
Path SumGiven 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 bina原创 2015-07-09 21:46:10 · 516 阅读 · 0 评论 -
leetcode 46-Permutations and 47-Permutations II
PermutationsGiven a collection of numbers, return all possible permutations.For example,[1,2,3] have the following permutations:[1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], and [3,2,1]原创 2015-07-09 20:22:06 · 765 阅读 · 0 评论 -
leetcoder-50-Pow(x, n)
Pow(x, n) 可以直接用库函数pow(x,n)一步搞定,但明显这样就没意思了。参考快速幂取模二分,复杂度为O(logn)递归方法class Solution {public: double myPow(double x, int n) { if(n<0) return 1.0/myPow_1(x,-n);原创 2015-07-09 16:46:30 · 859 阅读 · 0 评论 -
leetcode-230-Kth Smallest Element in a BST
Kth Smallest Element in a BST Given a binary search tree, write a function kthSmallest to find the kth smallest element in it.Note: You may assume k is always valid, 1 ≤ k ≤ BST's to原创 2015-07-09 12:10:36 · 862 阅读 · 0 评论 -
leetcode-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-03-03 11:29:29 · 297 阅读 · 0 评论