PK计划
Java_beginer1
爱好算法
展开
-
堆排序
堆排序原创 2013-09-17 01:37:20 · 856 阅读 · 0 评论 -
unix 网路编程(卷一)第一个程序编译过程
unix网络编程原创 2013-08-03 16:01:46 · 1056 阅读 · 0 评论 -
乱侃c++
就在刚才我感觉c++真的好复杂,函数重载,多态,虚函数,虚函数表,模版,继承等一大坨东西好恶心,c++既然完全支持C语言,当然是把它的优缺点统统接下了,C语言中指针本身并不太难,是C语言的精华,当年刚开始学习C时看到说,学不会指针C和没学一样,当时真是熬夜看我们系老师自己编的那本白皮书,看指针看的眼花,东西学的再多,长时间不用很快又会忘得,就像是记英语单词一回事,学了不用东西永远不是自己的。指原创 2013-07-29 17:58:19 · 792 阅读 · 0 评论 -
http://poj.org/problem?id=2187
#include #include #include #include #includeusing namespace std;#define N 50005const double Pi = acos(-1.0);struct Point{ int x,y;}P[N],S[N];int n,top,L;int Dis(const Point& p1,const P原创 2012-09-06 09:25:30 · 1005 阅读 · 0 评论 -
dfs&&hdu1010奇偶剪枝
很神奇的剪枝条件:奇偶剪枝用到奇偶剪枝原理:#include#include#include#include#include#include#includeusing namespace std;int dx[]={1,-1,0,0},dy[]={0,0,-1,1};char Map[7][7];int n,m,t;bool vis[7][7];bool ok;i原创 2012-07-24 15:25:37 · 656 阅读 · 0 评论 -
http://poj.org/problem?id=1988 &&hdu 2818并查集的很好应用
这题在去年的做并查集专题的时候,就看过当时不理解题意,一直放到现在才解决,真心蒟蒻,ORZ,,,弱爆了,最近状态不是很好,所以要调整心态;本题是在并查集查找时,回溯更新under[]数组的值;用到三个数组,fa[x],记录x的父节点,经过路径压缩后fa[x]的值就是x所属的集合;con[x],表示x所在堆的个数,under[x],表示x下面节点数;很好的并查集题目;#include#in原创 2012-07-23 10:59:40 · 603 阅读 · 0 评论 -
http://poj.org/problem?id=1011经典搜索dfs
自己第一次在linux下用vim 编写的代码,并且A题的,很高兴;就是poj上面的一个搜索题;题目很是经典,搜索剪枝优化;#include#include#include#includeusing namespace std;int num[65];bool vis[65];int Max;int sum;bool ok;int n;int len;vo原创 2012-07-19 18:00:32 · 803 阅读 · 0 评论 -
hdu 1518 square
很是经典的深搜dfs,之前这题用了很长时间根本就没有思路,不知道如何下手,上网搜了一下别人的代码,感觉写的很好,而且思路很清晰,就自己写了;#include#include#includeusing namespace std;int num[25];int sum=0,len;int n;bool ok;bool vis[25]; void dfs(int s,int k,原创 2012-07-16 16:52:25 · 582 阅读 · 0 评论 -
http://acm.hdu.edu.cn/showproblem.php?pid=3926
题目意思就是判断两个图是不是同构,就是两个图是不是一样,由于该题的图是非常特殊的,度只能为2,所以图是由若干个链组成,或是若干个环,即1--->2--->3--->1,,,,,,1---》2--->3;;;这两个图是不一样的,特殊的,(1--->1,,,,2--->2,,,,), 1,,,,2;这两个图是不一样的;前面一个是两个自环,后面的是两个点;这题刚开始各种ORZ,,,,ORZ,,,,OTL原创 2012-07-14 10:26:54 · 720 阅读 · 0 评论 -
hdu1856并查集
#include#includeusing namespace std;int num[1000006],con[1000006];bool vis[1000006];int find(int x){ return x==num[x]?x:num[x]=find(num[x]);}int main(){ int n; while(~scanf("%d",&n)) {i原创 2012-07-10 16:56:38 · 894 阅读 · 0 评论 -
http://poj.org/problem?id=2524并查集简单应用
用总人数减去合并的次数得到的就是所要求的:#include#includeint num[50001];int find(int x){ return x==num[x]?x:num[x]=find(num[x]);}int main(){ int n,m,t=1; while(~scanf("%d%d",&n,&m)&&n+m) { for(int i=0;i<原创 2012-07-10 15:07:24 · 493 阅读 · 0 评论 -
PK计划关于数据结构
关于数据结构的计划 数据结构分为线性数据结构,非线性的两类,其中线性的有线性链表,循环线性链表,双向链表,栈(模拟递归,迷宫求解,回溯法),队列(BFS和DFS),串(KMP),数组 (树状数组,并查集),广义表(矩阵压缩); 非线性结构包原创 2011-08-30 14:51:33 · 382 阅读 · 0 评论