(zhn)现在的位置Q?/strong> 跨考网频道考研报名正文

数据l构W五章算法设计题[3]_跨考网

最后更新时_(d)(x)2011-11-22 13:29:47
辅导评Q?a target="_blank" rel="nofollow">暑期集训 在线咨询
复习(fn)紧张Q焦头烂额?逆风轻袭Q来跨考秋季集训营Q帮你寻Ҏ(gu)Q定Ҏ(gu)Q?/span> ?jin)解一?>

1Q编写一个过E,对一?/span>n×n矩阵Q通过行变换,使其每行元素的^均值按递增序排列。【中U院软g所 1996 ?/span>

  【参考答案?/span>

  [题目分析]题目中要求矩阵两行元素的q_值按递增序排序Q由于每行元素个数相{,按^均值排列与按每行元素之和排列是一个意思。所以应先求出各行元素之和,攑օ一l数l中Q然后选择一U排序方法,对该数组q行排序Q注意在排序时若有元素移动,则与之相应的行中各元素也必须做相应变动?/span>

  void TranslationQ?/span>float *matrixQ?/span>int nQ?/span>

  //本算法对n×n的矩?/span>matrixQ通过行变换,使其各行元素的^均值按递增排列?/span>

  {int i,j,k,lQ?/span>

  float sumQ?/span>minQ?/span> //sum暂存各行元素之和

  float *p, *pi, *pk;

  for(i=0; i<n; i++)

  {sum=0.0; pk=matrix+i*n; //pk指向矩阵各行W?/span>1个元?/span>.

  for (j=0; j<n; j++){sum+=*(pk); pk++;} //求一行元素之?/span>.

  *(p+i)=sum; //一行元素之和存入一l数l?/span>.

  }//for i

  for(i=0; i<n-1; i++) //用选择法对数组pq行排序

  {min=*(p+i); k=i; //初始讄i行元素之和最?/span>.

  for(j=i+1;j<n;j++) if(p[j]<min) {k=j; min=p[j];} //记新的最值及(qing)行号.

  if(i!=k) //若最行不是当前?/span>,要进行交?/span>(行元素及(qing)行元素之?/span>)

  {pk=matrix+n*k; //pk指向W?/span>k行第1个元?/span>.

  pi=matrix+n*i; //pi指向W?/span>i行第1个元?/span>.

  for(j=0;j<n;j++) //交换两行中对应元?/span>.

  {sum=*(pk+j); *(pk+j)=*(pi+j); *(pi+j)=sum;}

  sum=p[i]; p[i]=p[k]; p[k]=sum; //交换一l数l中元素之和.

  }//if

  }//for i

  free(p); //释放p数组.

  }// Translation

  [法分析] 法中用选择法排?/span>,比较ơ数较多,但数据交?/span>(Ud)较少.若用其它排序Ҏ(gu),虽可减少比较ơ数,但数据移动会(x)增多.法旉复杂度ؓ(f)O(n2).

跨考考研评

班型 定向班型 开班时?/td> 高定?/td> 标准?/td> 评介绍 咨询
U季集训 冲刺?/td> 9.10-12.20 168000 24800?/td> 班面授+专业??+专业译֮向辅?协议加强评(高定?+专属规划{疑(高定?+_化答?复试资源(高定?+复试译֌(高定?+复试指导(高定?+复试班主?v1服务(高定?+复试面授密训(高定?+复试1v1(高定?
2023集训畅学 非定向(政英?数政qQ?/td> 每月20?/td> 22800?协议? 13800?/td> 先行阶在U课E?基础阶在U课E?强化阶在U课E?真题阶在U课E?冲刺阶在U课E?专业NҎ(gu)一对一评+班主dE督学服?全程规划体系+全程试体系+全程_化答?择校择专业能力定位体p?全年关键环节指导体系+初试加强?初试专属服务+复试全科标准班服?/td>

①凡本网注明“稿件来源:(x)跨考网”的所有文字、图片和韌频稿Ӟ版权均属北京学博教育咨询有限公司Q含本网和跨考网Q所有,M媒体、网站或个h未经本网协议授权不得转蝲、链接、{帖或以其他Q何方式复制、发表。已l本|协议授权的媒体、网站,在下载用时必须注明“稿件来源,跨考网”,q者本|将依法q究法律责Q?/p>

②本|未注明“稿件来源:(x)跨考网”的?囄Eg均ؓ(f)转蝲E,本网转蝲仅基于传递更多信息之目的Qƈ不意味着再通{载稿的观Ҏ(gu)证实其内容的真实性。如其他媒体、网站或个h从本|下载用,必须保留本网注明的“稿件来源”,q自负版权等法律责Q。如擅自改为“稿件来源:(x)跨考网”,本网依法追I法律责仅R?/p>

③如本网转蝲E涉?qing)版权等问题Q请作者见E后在两周内速来?sh)与跨考网联系Q电(sh)话:(x)400-883-2220