2020考研计算机《数据结构(C语言版)》详解答案(23)
2019.05.20 18:23

  2020年计算机考研复习已经开始,新东方在线在此整理了2020考研计算机《数据结构(C语言版)》详解答案(23),希望能帮助大家!

  指出以下算法中的错误和低效之处,并将它改写为一个既正确又高效的算法。

  Status DeleteK(SqList &a,int i,int k)

  {

  //本过程从顺序存储结构的线性表a中删除第i个元素起的k个元素

  if(i<1||k<0||i+k>a.length) return INFEASIBLE;//参数不合法

  else {

  for(count=1;count

  //删除第一个元素

  for(j=a.length;j>=i+1;j--) a.elem[j-i]=a.elem[j];

  a.length--;

  }

  return OK;

  }

  解:

  Status DeleteK(SqList &a,int i,int k)

  {

  //从顺序存储结构的线性表a中删除第i个元素起的k个元素

  //注意i的编号从0开始

  int j;

  if(i<0||i>a.length-1||k<0||k>a.length-i) return INFEASIBLE;

  for(j=0;j<=k;j++)

  a.elem[j+i]=a.elem[j+i+k];

  a.length=a.length-k;

  return OK;

  }


MORE+

    相关阅读 MORE+

    版权及免责声明
    1.凡本网注明"稿件来源:新东方在线"的所有文字、图片和音视频稿件,版权均属北京新东方迅程网络科技有限公司所有,任何媒体、网站或个人未经本网协议授权不得转载、链接、转贴或以其他方式复制发表。已经本网协议授权的媒体、网站,在下载使用时必须注明"稿件来源:新东方在线",违者本网将依法追究责任。
    2.本网末注明"稿件来源:新东方在线"的文/图等稿件均为转载稿,本网转载出于传递更多信息之目的,并不意味着赞同其观点或证实其内容的真实性。如其他媒体、网站或个人从本网下载使用,必须保留本网注明的"稿件来源",并自负版权等法律责任。如擅自篡改为"稿件来源:新东方在线”,本网将依法追究责任。
    3.如本网转载稿涉及版权等问题,请作者致信weisen@xdfzx.com,我们将及时外理

    Copyright © 2011-202

    All Rights Reserved