摘要: 我大概领会到了最大生成树主要是由以下几个部分构成的:1.并查集(这是基础,个人感觉同时也是基础思想吧)2.邻接表(存储数据)3.排序4.循环n-1次加边操作,构成一个树具体的实现看裸题即可 阅读全文
posted @ 2014-03-24 23:53 polebug 阅读(632) 评论(0) 推荐(0) 编辑
摘要: 扔了快排的代码在这里:void sort(int l,int r){ int i=l,j=r,mid=d[(l+r)/2]; while (imid) i++; while (d[j]<mid) j--; if (i<=j){ swap(d[i],d[j]); i++;j--; }} if (i<r)sort(i,r); if (l<j)sort(l,j);} 虽然转c++之后更懒,习惯直接用stl里的sort来排,但毕竟有时候sort并不能用上,快排还是要会打的嗯 阅读全文
posted @ 2014-03-24 23:51 polebug 阅读(222) 评论(0) 推荐(0) 编辑
摘要: void add(int x,int y,int z){//邻接表e[tot].from=x;//头结点e[tot].to=y;//尾结点e[tot].w=z;//边权e[tot].next=head[x];head[x]=tot++;} 阅读全文
posted @ 2014-03-24 23:48 polebug 阅读(1027) 评论(0) 推荐(0) 编辑
摘要: 题目:relationRelations (rela.pas rela.in rela.out)或许你并不知道,你的某个朋友是你的亲戚。他可能是你的曾祖父的外公的女婿的外甥的表姐的孙子。如果能得到完整的家谱,判断两个人是否亲戚应该是可行的,但如果两个人的最近公共祖先与他们相隔好几代,使得家谱十分庞... 阅读全文
posted @ 2014-03-24 16:52 polebug 阅读(179) 评论(0) 推荐(0) 编辑