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

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

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

1. 设二l数l?/span>a[1..m, 1..n] 含有m*n 个整数?/span>

  (1) 写出法(pascalq程?/span>c函数)Q判?/span>a中所有元素是否互不相同输出相关信?/span>(yes/no)Q?/span>

  (2) 试分析算法的旉复杂度。【华中理工大?/span> 1999 ?/span> Q?/span>10分)?/span>

  【参考答案?/span>

  [题目分析]判断二维数组中元素是否互不相同,只有逐个比较,扑ֈ一对相{的元素Q就可结Zؓ不是互不相同。如何达到每个元素同其它元素比较一ơ且只一ơ?在当前行Q每个元素要同本行后面的元素比较一ơ(下面W一个@环控制变?/span>p?/span>for循环Q,然后同第i+1行及以后各行元素比较一ơ,q就是@环控制变?/span>k?/span>p的二?/span>for循环?/span>

  int JudgEqual(ing a[m][n],int m,n)

  //判断二维数组中所有元素是否互不相同,如是Q返?/span>1Q否则,q回0?/span>

  {for(i=0;i<m;i++)

  for(j=0;j<n-1;j++)

  { for(p=j+1;p<n;p++) //和同行其它元素比?/span>

  if(a[i][j]==a[i][p]) {printf(?/span>no?/span>); return(0); }

  //只要有一个相同的Q就l论不是互不相同

  for(k=i+1;k<m;k++) //和第i+1行及以后元素比较

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

  if(a[i][j]==a[k][p]) {printf(?/span>no?/span>); return(0); }

  }// for(j=0;j<n-1;j++)

  printf(yes?/span>); return(1); //元素互不相同

  }//JudgEquall束

  Q?/span>2Q二l数l中的每一个元素同其它元素都比较一ơ,数组中共m*n个元素,W?/span>1个元素同其它m*n-1个元素比较,W?/span>2个元素同其它m*n-2 个元素比较,……,W?/span>m*n-1个元素同最后一个元?/span>(m*n)比较一?/span>,所以在元素互不相等时ȝ比较ơ数?/span> (m*n-1)+(m*n-2)+?/span>+2+1=Q?/span>m*nQ?/span>(m*n-1)/2。在有相同元素时,可能W一ơ比较就相同,也可能最后一ơ比较时相同,讑֜(m*n-1)个位|上均可能相?/span>,q时的^均比较次数约为(m*nQ?/span>(m*n-1)/4Qȝ旉复杂度是O(n4)?/span>

跨考考研评

班型 定向班型 开班时?/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>

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

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

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