码迷,mamicode.com
首页 >  
搜索关键字:复杂度    ( 16171个结果
Leetcode 树 Binary Tree Zigzag Level Order Traversal
题意:给定一棵二叉树,返回按zigzag层次遍历的结果 思路: 还是跟前面的Binary Tree Level Order Traversal的思路一样 即从上往下按层遍历二叉树,将每一层的节点存放到该层对应的数组中 最后将得到的总数组中奇数层(从0层开始计数)的子数组reverse一下就可以了 复杂度:时间O(n),空间O(n)...
分类:其他好文   时间:2014-05-15 15:15:50    阅读次数:374
Leetcode 树 Binary Tree Level Order Traversal
题意:给定一棵二叉树,返回按层遍历的结果 思路1:bfs,定义一个新的struct,记录指针向节点的指针和每个节点所在的层 复杂度1:时间O(n),空间O(n) 思路2:dfs 递归函数: void levelOrder(TreeNode *root, int level, vector<vector >&result) 表示把根为root的树按层存放在result中,其中level表示当前的层数 复杂度2:时间O(n),空间O(n) 相关题目:...
分类:其他好文   时间:2014-05-15 14:46:06    阅读次数:355
Leetcode 线性表 Linked List Cycle
题意:判断一个链表中是否有环 思路:快慢指针,如果有环,最终快慢指针会在非NULL相遇 注:用到fast->next前先要确保fast非NULL,要用fast->next->next前先要确保fast,fast->next非NULL 复杂度:时间O(n), 空间O(1) 相关题目:Linked List CycleII...
分类:其他好文   时间:2014-05-15 07:01:57    阅读次数:219
Leetcode 树 Binary Tree Level Order Traversal II
题意:从底往上按层遍历二叉树 思路: 思路和Binary Tree Level Order Traveral 一样, 即从上往下按层遍历二叉树,将每一层的节点存放到该层对应的数组中 最后将得到的数组倒转一下就可以了 按层遍历二叉树可用bfs,也可用dfs,但都要记录节点所在的层 复杂度:时间O(n), 空间O(n)...
分类:其他好文   时间:2014-05-15 06:32:14    阅读次数:278
Leetcode 树 Populating Next Right Pointers in Each Node II
题意:给定一棵任意二叉树(不一定是perfect binary tree),将它每一个节点的next指针都指向该节点右边的节点 思路:bfs 这里不能用dfs了,只能用bfs bfs遍历将同一层的节点存放在同一个数组里, 然后在遍历每个数组,将前面的节点和后面的节点connect起来, 最后一个节点和NULL connect起来 需要定义一个新的struct结构,保存指向每个节点的指针和该节点所在的层 复杂度:时间O(n), 空间O( n)...
分类:其他好文   时间:2014-05-15 06:12:13    阅读次数:294
第七章 快速排序
快速排序最坏情况下时间复杂度是O(n*n),但是它平均时间复杂度是O(N*logn),并且常数因子很小,可实现就地排序,所以被作为内排序的常用排序方法. #include using namespace std; void swap(int &i,int &j) { int temp=i; i=j; j=temp; } int partition(int *vector...
分类:其他好文   时间:2014-05-15 06:05:35    阅读次数:254
Leetcode 二分查找 Search Insert Position
题意:输出一个元素在一个已排序的数组中的位置,如果不存在输出它应该插入的位置 思路:二分查找,如果找到就输出位置,找不到就输出它应该插入的位置 复杂度:时间O(log n),空间O(1) 相关题目: Search for a Range Search a 2D Matrix...
分类:其他好文   时间:2014-05-15 05:57:32    阅读次数:271
leetCode-002 Median of Two Sorted Arrays
leetCode-002 Median of Two Sorted Arrays 【题目】 There are two sorted arrays A and B 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)). 【题意】 有两个有序的数组,找出这两数组整合后的中位数,要求时间复杂度O(nlogn)...
分类:其他好文   时间:2014-05-15 04:42:05    阅读次数:274
位图排序
基于比较的排序时间复杂度至少为O(nlgn),在时间上堆排序和快速排序基本上都达到了比较排序的极限,如果要获取更快的排序速度,就需要找不是基于比较的排序方法,位图排序就是其中的一个。 位图排序是效率最高的排序算法,其时间复杂度是O(n),空间复杂度也非常小,但是要求输入的数据不能重复,而且要知道数据的范围。 位图排序的思想比较简单,用计算机的每一位表示一个数,一个int类型的变量就能表...
分类:其他好文   时间:2014-05-15 04:41:27    阅读次数:262
UVALive 6609(Minimal Subarray Length)维护递增序列|RMQ
题意:给一个整数序列(可能有负数),求最短的连续序列使得序列之和大于等于整数x; 解法:第一种是On的复杂度:                   我们要的是sum[j]-sum[i]>=x,如果有两个决策j = sum[j'],那么j就是没用的。即维护一个sum[j]递增序列。然后每次可以二分查找,但是这里有个特点就是要得到最近的,可以同时维护一个left指针,left指针用于跟进更...
分类:其他好文   时间:2014-05-15 03:20:26    阅读次数:303
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!