算法导论进行中。。。。
文章平均质量分 70
jiefen111
这个作者很懒,什么都没留下…
展开
-
k路归并 Young氏矩阵的相关算法(转)
二.基于堆的K路合并问题.题:请给出一下时间为O(n*lgk),用来将 k 个已排序链表合并为一个排序链表的算法.此处,n 次所有输入链表中元素的总数.答:新建一个链表,再申请一个大小为 k 的数组A,首先把 k 个已排序链表的第一个元素压入 A 中,将 A 建成一个最小堆,花费O(k) 的时间.然后将堆 A 的第一个元素 min(也就是最小的那个)放入链表中.再将min->nextNod原创 2009-12-19 10:30:00 · 599 阅读 · 0 评论 -
求两个大小为n的已排序数组的中位数
数组x和Y 1.如果n为奇数,每个数组的中位数为x[m],y[m], n=2m+1; a.. 如果x[]==y[]则返回x[m]; b.. 若前者大于后者,则下次寻找范围为x[m+1......n] y[0.......m-1]; c.. 若前者大于后者,则下次寻找范围为x[0....m-1] y[m+1....n];2.如果n为偶数,每个数组的中位数原创 2009-12-21 20:19:00 · 609 阅读 · 1 评论 -
二叉树中序遍历的非递归算法(栈为辅助数组)
#include#include#define STACK_INIT_SIZE 100//栈初始分配的空间数#define STACKINCREAMENT 10//栈空间不够时增加的空间数typedef char eletype;//二叉树结点信息类型typedef struct BiTNode//二叉树结点类型{ struct BiTNode *lchil转载 2009-12-21 21:18:00 · 1026 阅读 · 0 评论 -
利用广义表非递归构造二叉树
#includeusing namespace std;const int nax=100;typedef struct tr{ int data,left,right; int label;}btree;btree tree[100];bool ck[100];int recreat(int *mid,int *post,int len)//len结点个数{ int i,j,root=0,tro转载 2009-12-21 21:25:00 · 716 阅读 · 0 评论