第一题 结果为 m*(n-m+1) 比如 子串 001 主串 0001 这就是最坏情况
第二题 第一问 求a[5][7] 由a[0][0]=1000(地址); a[0][1]=1006(因为6个字节) ;所以对于a[5][7]可以用(5*8+7)*6+1000=1282;或者直接用1000+(6*8-1)*6=1282;同理a[1][4]用(1*8+4)*6+1000=1072;
第三题 由题a[1][1]=2048(地址) 因为按列储存 所以a[32][58] 就为
((58-1)*60+32-1)*2+2048=9050; 其实可以把二维数组相像成想x-y坐标系 把求地址相像成求数列;即an=a1+(n-1)*d;
在a[7[[6]前面共有a[0]到a[6] 七行,每行的下三角元素个数分别为1,2,3,4,5,6,7,加起来共28个。然后第a[7]行中,a[7][6]前面又有a[7][0]到a[7][5]共6个元素,所以,以行为主序时,a[7][6]前面要存储的元素共有28+6=34个,
所以a[7][6]的地址为:&a[7][6]=2000+34*3=2012
第三题答案8950