会员
周边
众包
新闻
博问
闪存
赞助商
所有博客
当前博客
我的博客
我的园子
账号设置
简洁模式
...
退出登录
注册
登录
lineaar
博客园
首页
新随笔
联系
管理
订阅
上一页
1
2
3
4
5
下一页
2017年3月30日
左式堆
摘要: 数据结构中最欣欣向荣的两个分支就是:平衡树 和可合并堆,高级树结构的核心都是围绕如何使树到达平衡而展开,高级堆结构的核心就是如何有效地进行合并。左式堆由于使用二叉链表的存储结构,对动态操作支持良好,在需要合并操作的场合,是极佳的选择。 左式堆的性质: 1.【堆性质】:任意节点的关键字大于等于其孩子节
阅读全文
posted @ 2017-03-30 16:56 lineaar
阅读(220)
评论(0)
推荐(0)
编辑
2017年3月29日
双调巡游
摘要: 问题 给定平面上n个点作为输入,求出连接所有n个点的最短巡游路线。 J.L.Bentley建议将问题简化,限制巡游路线为双调巡游,即从最左边的点开始,严格向右前进,直至最右边的点,然后调头严格向右前进,直至回到起始点。 设计一个O(n^2)时间的最优双调巡游路线算法,可以认为任何两点的x坐标均不同,
阅读全文
posted @ 2017-03-29 23:13 lineaar
阅读(1156)
评论(0)
推荐(0)
编辑
最长回文算法2
摘要: 问题: 求给定输入字符串的最长回文子序列(子序列不要求连续)。 用LPS(i,j)表示从字符串第i个字符到第j个字符的最长回文子序列的长度,字符串的长度为n,则要求LPS(1,n),则: LPS(i,j)=0; i>j; LPS(i,j)=1; i==j; LPS(i,j)=LPS(i+1,j-1)
阅读全文
posted @ 2017-03-29 21:30 lineaar
阅读(202)
评论(0)
推荐(0)
编辑
散列表保存多项式链表相乘的结果
摘要: 多项式用链表保存,设多项式的最高次为M和N,则申请一个大小为M+1+N的散列表,其中M+1+N不必是素数,用结果多项式的阶次对M+1+N取余作为散列函数,可以把多项式第i阶次项的系数保存在散列表第i项上,方便后续重建多项式的链表。
阅读全文
posted @ 2017-03-29 15:54 lineaar
阅读(178)
评论(0)
推荐(0)
编辑
最长回文(通过比较原字符串和其翻转字符串)
摘要: // zuichanghuiwen.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include #include #include using namespace std; void palindrome(string str) { stack sta; //翻转字符串 for (int i...
阅读全文
posted @ 2017-03-29 09:45 lineaar
阅读(219)
评论(0)
推荐(0)
编辑
2017年3月28日
开放定址散列表
摘要: 再散列之后散列函数要重新计算。
阅读全文
posted @ 2017-03-28 21:06 lineaar
阅读(303)
评论(0)
推荐(0)
编辑
散列表(冲突用链表解决)
摘要: #include "stdafx.h" #include #include using namespace std; #ifndef _HashSsp_ struct ListNode; typedef struct ListNode *Position; struct HashTbl; typedef struct HashTbl *HashTable; HashTable Initiali...
阅读全文
posted @ 2017-03-28 16:50 lineaar
阅读(498)
评论(0)
推荐(0)
编辑
2017年3月24日
最优二叉树搜索
摘要: // zuiyousousuoerchashu.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include using namespace std; double p[] = { 0,0.15,0.1,0.05,0.10,0.2 }; double q[] = { 0.05,0.10,0.05,0.05,0.05,0.10}; double ...
阅读全文
posted @ 2017-03-24 17:25 lineaar
阅读(368)
评论(0)
推荐(0)
编辑
最长公共子序列
摘要: // zuidazixulie.cpp : 定义控制台应用程序的入口点。 // #include "stdafx.h" #include #include using namespace std; char b[10][10]; int c[10][10]; void Lcs(string x, string y) { int m = x.length(); int n =...
阅读全文
posted @ 2017-03-24 14:43 lineaar
阅读(120)
评论(0)
推荐(0)
编辑
2017年3月22日
队列和栈
摘要: 使用标准库的栈和队列时,先包含相关的头文件 #include<stack> #include<queue> 定义栈如下: stack<int> s; 定义队列如下: queue<int> q;
阅读全文
posted @ 2017-03-22 22:36 lineaar
阅读(153)
评论(0)
推荐(0)
编辑
上一页
1
2
3
4
5
下一页
公告