随笔分类 -  数据结构

摘要:#include #include#include#include #define MAX_VERTEX_NUM 20 using namespace std;typedef struct ArcBox{ int tailVex, headVex;//该弧的尾和头顶点的位置 st... 阅读全文
posted @ 2015-07-15 19:57 hjzqyx 阅读(673) 评论(0) 推荐(0) 编辑
摘要:#include #include#include#include#include#includeusing namespace std;class GLNode{ public: int tag; string node; class { ... 阅读全文
posted @ 2015-07-13 00:08 hjzqyx 阅读(735) 评论(0) 推荐(0) 编辑
摘要:三对角矩阵,从第二行开始选中的元素的个数都为3个。对于a[i,j]将要存储的位置k,首先前(i-1)行元素的个数是(i-2)*3 +2(第一行元素的个数为2),又a[i,j]属于第i行被选中元素的第j-i+1个元素,所以k= (i-2)*3 +2 + j-i+1 = 2*i+j-3如果知道了k,那么... 阅读全文
posted @ 2015-07-11 23:02 hjzqyx 阅读(4407) 评论(0) 推荐(1) 编辑
摘要:首先先介绍一下可变参数表需要用到的宏:头文件:#includevoid va_start( va_list arg_ptr, prev_param );type va_arg( va_list arg_ptr, type );void va_end( va_list arg_ptr );va_lis... 阅读全文
posted @ 2015-07-11 22:05 hjzqyx 阅读(840) 评论(0) 推荐(0) 编辑
摘要:题意:给定两个序列a ,b, 如果在a中存在一段连续的序列使得 a[i]-b[0]==k, a[i+1]-b[1]==k.... a[i+n-1]-b[n-1]==k 就说b串在a串中出现过!最后输出b串在a串中出现几次! 思路: KMP变形!如何转换成KMP求解呢? 举一个例子说明一下: a:... 阅读全文
posted @ 2014-09-27 20:53 hjzqyx 阅读(252) 评论(0) 推荐(0) 编辑
摘要://后序线索,这种方法不容易想到 1 #include 2 #include 3 #include 4 #include 5 6 using namespace std; 7 8 struct TREE{ 9 int val;10 TREE *ch[2];11 T... 阅读全文
posted @ 2014-09-20 10:39 hjzqyx 阅读(4535) 评论(0) 推荐(0) 编辑
摘要:1 /* 2 题意:建立一棵二叉树,左子树和父节点占一个宽度,右子树另外占一个宽度! 3 使任意左右子树交换顺序,使得整个树的宽度最小! 4 思路:递归交换左右子树 ! 开始写的代码复杂了,其实左右子树不用真的交换,只要返回交换与不交换最小的宽度值... 阅读全文
posted @ 2014-08-24 23:14 hjzqyx 阅读(410) 评论(0) 推荐(0) 编辑
摘要:1 /* 2 森林转换成二叉树 3 思路:u的孩子节点为v1, v2, v3....(v1,v2,....互为兄弟节点) 4 那么将u的一个孩子节点(v1)连在u的左子树上,那么其他的孩子节点都连在v1的右子树上! 5 */ 6 #include 7 #incl... 阅读全文
posted @ 2014-08-20 16:36 hjzqyx 阅读(1890) 评论(0) 推荐(1) 编辑
摘要:1 /* 2 目大意:输入一个数t,表示测试组数。然后每组第一行两个数字n,m,n表示有n只昆虫,编号从1—n,m表示下面要输入m行交配情况,每行两个整数,表示这两个编号的昆虫为异性,要交配。 3 要求统计交配过程中是否出现冲突,即是否有两个同性的昆虫发生交配。 4 5 思路:并查集 6 ... 阅读全文
posted @ 2014-08-05 12:18 hjzqyx 阅读(239) 评论(0) 推荐(0) 编辑
摘要:1 /* 2 最小生成树 + 几何判断 3 Kruskal 球心之间的距离 - 两个球的半径 6 #include 7 #include 8 #include 9 #include10 using namespace std;11 int f[105];12 struct ba... 阅读全文
posted @ 2014-07-30 10:54 hjzqyx 阅读(381) 评论(0) 推荐(0) 编辑
摘要://用数组实现树 1 #include 2 #include 3 #include 4 #define N 10000 5 #define optd 1 6 #define optr 2 7 using namespace std; 8 int treeL[N], treeR[N]; 9 cla... 阅读全文
posted @ 2014-06-13 18:52 hjzqyx 阅读(837) 评论(0) 推荐(0) 编辑
摘要:1 /* 2 参考大神nb的代码,感觉思路不错!终于搞明白了!一开始不明白在计算表达式的时候,利用栈到底做了什么!现在感觉我们利用栈就是模拟我们书面上计算表达式, 3 将优先级高的运算先计算出来,然后放进栈中,等待下一次的计算 4 */ 5 #include... 阅读全文
posted @ 2014-06-13 13:23 hjzqyx 阅读(630) 评论(0) 推荐(0) 编辑