自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 在无向图中求割点

割点的定义:  在一个无向图中,去掉某一个点,该无向图不再连通,这样的点称为割点   求点割集的方法:利用tarjan算法的思想,用数组dfn[v]存储DFS遍历到点v的时间,数组low[v]存储点v能追溯到最早的祖先节点。 判断一点是否是割点: 1.如果这个点是根节点并且这割点有不少于两个儿子则该节点一定是割点(去掉根节点的树其他的分支一定不再连通) 如果这个点v不是根节点,但是这个点存在

2015-12-22 01:08:00 713

原创 iOS中对数据的存储的一种方法--归档

归档是一种对文件存储的一种方法## encodeObject ## 用这个方法来申明哪些数据需要存储 nsstring *name; nsstring *phone; nsstring *chatCall; nsstring *qqNumber; - (void)encodeWithCoder:(NSCoder *)encoder{ [encoder encodeObject:s

2015-12-14 23:37:51 267

原创 欧几里得算法的证明

证明要证欧几里德算法成立,即证: gcd(a,b)=gcd(b,r),其中 gcd是取最大公约数的意思,r=a mod b 下面证 gcd(a,b)=gcd(b,r) 设 c是a,b的最大公约数,即c=gcd(a,b),则有 a=mc,b=nc,其中m,n为正整数,且m,n互为质数 由 r= a mod b可知,r= a- qb 其中,q是正整数, 则 r=

2015-12-14 00:29:54 1007

原创 单源最短路径-spfa算法

** int n; //表示n个点,从1到n标号 int s,t; //s为源点,t为终点 int d[N]; //d[i]表示源点s到点i的最短路 int p[N]; //记录路径(或者说记录前驱) queue q; //一个队列,用STL实现,当然可有手打队列,无所谓 bool vis[N]; //vis[i]=1表示点i在队列中 vis[i]=0表示不在队列中 *

2015-12-14 00:07:47 330

原创 HDU-3018-欧拉回路

题意:一笔画。。问最少几笔能画完。 如果是个欧拉回路一笔就可以完成,如果是个其它连通集,要根据这个集合的奇度数而定,笔划数=奇度数/2,用并查集来判断有多少个连通集,然后用vector来存这些连通集,通过判断度数是奇偶性来确定是否为欧拉回路;总之笔划数 = 奇度数/2 + 欧拉回路数// // main.cpp // hdu-3018-欧拉回路 // // Created by wuweiy

2015-12-13 20:55:24 273

原创 欧拉回路的判定

#include <iostream> #include <vector> #include <algorithm> #include <queue> #include <cstdio> #include <cstring> using namespace std; #define N 1005 int n,m; vector<int>Edge[N]; int deg[N]; bool vis[N]

2015-12-13 19:39:17 380

原创 HDU-1166-线段树

#include <cstdio>#include <cstring> struct seg { int l; int r; int n; } T[150011]; void build(int l,int r,int k)//建立线段树 { int mid; T[k].l = l; T[k].r = r; T[k].n = 0;//初始化线段

2015-12-13 17:43:28 252

原创 iOS键盘的关闭

通过点击背景view来关闭键盘UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(dismissKeyboard)]; [self.view addGestureRecognizer:tap]; [tap release];再定义一下选择器调用的方法d

2015-12-13 00:31:49 337

原创 iOS--tableView中的多余的线的去除方法

UIView*view = [UIViewnew]; view.backgroundColor= [UIColor clearColor]; [self.tableView setTableFooterView:view];

2015-12-13 00:15:17 558

原创 线段树

用线段树的方法解决区间操作类的问题很好用。如果用一般的数组来执行操作那么数据量只要过大,运行的时间就会超出系统所设定的通过时间,而线段树的操作是用区间的操作方法,并不是去改变每一个数组的元素;下面举个例子说明一下; N 个气球排成一排,从左到右依次编号为1,2,3....N. 每次给定2 个整数a b(a  便为骑上他的“ 小飞鸽" 牌电动车从气球a 开始到气球b 依次给每个气球涂一

2015-12-12 16:36:47 200

原创 fleury算法

在建立图的关系后应该最先找出每个点的入度和出度之和,连通图的奇度点只有两个,能构成回路的图是不存在奇度点的; 在建立了图的邻接矩阵后应该先找到奇度点的个数,来判断图是否连通; 算法在运行过程中删除了所有已走的路径,也就是说途中残留了所有没有行走的边。根据割边的定义,如果在搜索过程中遇到割边意味着当前的搜索路径需要改进,即提前输出某一个联通子集的访问序列,这样就能够保证访问完

2015-12-12 15:28:12 1460

原创 prime算法-最小生成树算法

Prime算法  分类: 算法总结2011-08-15 18:05 5363人阅读 评论(2) 收藏 举报 算法 普利姆(Prime)算法(只与顶点相关)   算法描述: 普利姆算法求最小生成树时候,和边数无关,只和定点的数量相关,所以适合求稠密网的最小生成树,时间复杂度为O(n*n)。 算法过程: 1.将一个图的顶点分为两部分,一部

2015-11-13 20:43:36 870

转载 RMQ算法

1. 概述 RMQ(Range Minimum/Maximum Query),即区间最值查询,是指这样一个问题:对于长度为n的数列A,回答若干询问RMQ(A,i,j)(i,j当然,该问题也可以用线段树(也叫区间树)解决,算法复杂度为:O(N)~O(logN),这里我们暂不介绍。 2.RMQ算法 对于该问题,最容易想到的解决方案是遍历,复杂度是O(n)。但当数据量非常大

2015-11-13 16:54:32 228

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除