码迷,mamicode.com
首页 >  
搜索关键字:非递归    ( 1549个结果
树的遍历总结 (包括递归,非递归),轻松理解后序遍历
参考大神的神作:http://blog.csdn.net/fightforyourdream/article/details/16843303  对于后序遍历,我们理解为将右节点为先的先序遍历翻转,会思考上简单很多,就是用右节点为先的先序遍历做,再用第二个栈进行翻转,就是后序遍历。 {CSDN:CODE:472449}...
分类:其他好文   时间:2014-09-21 18:47:50    阅读次数:190
PAT-1013 Battle Over Cities (25)
求解连通性问题,最好用的当然是并查集了,可以使用深搜或者广搜。这道题目的意思是给定一些道路,如果把其中一个顶点去掉,那么需要建立多少条道路才能联通所有顶点。这道题目如果用朴素的并查集的话第四个测试用例会超时,因此想到带路径压缩的并查集。递归或者非递归方式都可以,对于这道题目来说不会差别很大,不过用递...
分类:其他好文   时间:2014-09-19 22:19:06    阅读次数:229
69 快速排序的递归和非递归实现
quicksort-recursively-and-non-recursively
分类:其他好文   时间:2014-09-18 12:50:33    阅读次数:241
Reverse Nodes in k-Group[leetcode]递归和非递归的解法
题目不难,但是容易出错,需要考虑各种边界情况 非递归代码如下: ListNode *reverseKGroup(ListNode *head, int k) { if (head == NULL || k <= 1) return head; ListNode * start = NULL, * end = NULL, *newHead = NULL, *p...
分类:其他好文   时间:2014-09-16 19:00:54    阅读次数:201
编程算法 - 链表逆序 代码(C)
链表逆序 代码(C)本文地址: http://blog.csdn.net/caroline_wendy链表逆序, 作为链表操作的基础必须要熟练手写.主要包含3个部分, 一个指针记录后面节点, 一个指针记录前面节点, 把当前节点指到前面节点, 移动到后面节点, 前后指针依次移动.非递归链表逆序算法的核心代码只有10行.代码:/* * main.cpp * * Created on: 2014...
分类:其他好文   时间:2014-09-16 12:44:10    阅读次数:166
二叉树的非递归遍历
先序遍历: void preOrder(Node *p) //非递归 { if(!p) return; stack s; Node *t; s.push(p); while(!s.empty()) { t=s.top(); printf("%d\n",t->data); s.pop(); if(t->ri...
分类:其他好文   时间:2014-09-15 19:36:09    阅读次数:152
【编程题目】题目:定义 Fibonacci 数列 输入 n,用最快的方法求该数列的第 n 项。
第 19 题(数组、递归):题目:定义 Fibonacci 数列如下:/ 0 n=0f(n)= 1 n=1/ f(n-1)+f(n-2) n=2输入 n,用最快的方法求该数列的第 n 项。思路:递归和非递归的 下面的代码有个问题,没有考虑大数越界。返回值应该设成long long型的递归速度非常慢/...
分类:其他好文   时间:2014-09-15 14:11:38    阅读次数:194
夯实基础——归并排序
归并排序分析: 最优时间复杂度:O(n) 最坏时间复杂度:O(nlog2n) 平均时间复杂度:O(nlog2n) 最差空间复杂度:O(n) 稳定性:稳定 归并排序C语言实现 递归与非递归...
分类:其他好文   时间:2014-09-15 12:57:28    阅读次数:140
最大公约数
最大公约数,根据《编程之美》递归版写的非递归版:1. 对于y和x来说,如果y=k*y1, x = k * x1。那么有gcd(y,x)=k*gcd(y1, x1);2. 如果x=p*x1, p是素数(质数),并且y%p != 0,那么gcd(x, y) = gcd(p * x1, y) = gcd(...
分类:其他好文   时间:2014-09-15 12:54:18    阅读次数:129
递归、非递归 反转单链表
定义链表结构struct ListNode{ int val; ListNode *next; ListNode(int v) : val(v), next(NULL) {}};非递归反转单链表ListNode* reverse(ListNode *root){ if (ro...
分类:其他好文   时间:2014-09-12 23:21:44    阅读次数:235
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!