云淡风轻
Stay foolish,stay hungry.
摘要: 有时根据题意需得根据输入的二维数来动态的创建二维数组,那么此时就不能想以前一样直接定义多少行多少列了。因为不知道行列多少,假如设定太大浪费空间,申请太小完成不了程序的数据存储。因此需要合理的开辟二维空间。以下的两种方法都可以建立动态的二维空间数组。方法一:int i,j;int r,c;int **a; //创建二维指针来指向数组scanf("%d%d",&r,&c);a = (int **)... 阅读全文
posted @ 2011-12-14 20:11 kevin Lee 阅读(18217) 评论(0) 推荐(1)
摘要: 1,给定一个n*n的格子或棋盘,问从左下角走到右上角的走法总数(每次只能向右或向上移动一个方格边长的距离)解答:我们可以把棋盘的左下角看做二维坐标的原点(0,0),把棋盘的右上角看做二维坐标(n,n)(坐标系的单位长度为小方格的变长) 用f(i,j)表示移动到坐标f(i,j)的走法总数,其中0=0f(i,j)=f(i,j-1) if i=0... 阅读全文
posted @ 2011-12-14 12:00 kevin Lee 阅读(1270) 评论(1) 推荐(0)
摘要: 给定一个整数数组,a[1],a[2],...,a[n],每一个元素a[i]可以和它右边的(a[i+1],a[i+2],...,a[n])元素做差,求这个数组中最大的差值,例如a={0,3,9,1,3,5}这个数组最大的差值就是9-1=8;解答:1)这个题目最直接的想法就是穷举,时间代价是O(n^2),即检查每个元素与其右边元素差值的最大值,伪代码如下:int solve_sub(int *a,in... 阅读全文
posted @ 2011-12-14 10:42 kevin Lee 阅读(3455) 评论(1) 推荐(1)