当前位置: 首页 > news >正文

500强网站建设微网站与微信公众号

500强网站建设,微网站与微信公众号,定制app开发 杭州app开发公司,上海专业做网站公司地址文章目录 主要内容一.基础练习题1.从顺序表中删除具有最小值的元素#xff08;假设唯一#xff09;并由函数返回被删元素的值。空出位置由最后元素填补#xff0c;若顺序表为空#xff0c;则显示出错信息并退出运行。代码如下#xff08;示例#xff09;: 2.设计一个高效… 文章目录 主要内容一.基础练习题1.从顺序表中删除具有最小值的元素假设唯一并由函数返回被删元素的值。空出位置由最后元素填补若顺序表为空则显示出错信息并退出运行。代码如下示例: 2.设计一个高效算法将顺序表L的所有元素逆置要求算法的空间复杂度为O1。代码如下示例: 3.将两个有序顺序表合并为一个新的有序顺序表并由函数返回结果顺序表。代码如下示例: 4.已知在一维数组A[mn]中依次存放两个线性表a1,a2,....,am和b1,b2,...bn.编写一个函数将数组中两个顺序表的位置互换即将b1,b2,...bn放在a1,a2,...am的前面。代码如下示例: 5.设将n(n1)个整数存放到一维数组R中。设计一个在时间和空间两方面都尽可能高效的算法。将R中保存的序列循环左移p(Opn)个位置即将R中的数据由(X0,X1,..,Xn-1)变换为(Xp,Xp1,..Xn-1,X0,X1,...Xp-1)。代码如下示例: 总结 主要内容 顺序表基础练习题 一.基础练习题 1.从顺序表中删除具有最小值的元素假设唯一并由函数返回被删元素的值。空出位置由最后元素填补若顺序表为空则显示出错信息并退出运行。 代码如下示例: 算法思想搜索整个顺序表查找最小元素并记住其位置搜索结束后用最后一个元素填补空出的原最小值元素的位置。bool Del_Min(sqList L,ElemType value){ //删除顺序表L中最小元素结点并通过引用型参数value返回其值 //若删除成功则返回true否则返回falseif(L.length0)return false; //表空中止操作返回valueL.data[0];int pos0; //假定0号元素的值最小for(int i1;iL.length;i) //循环寻找具有最小值的元素if(L.data[i]value){ //让value记忆当前具有最小值的元素valueL.data[i];posei;}L.data[pos]L.data[L.length-1]; //空出的位置由最后一个元素提填补L.length--;return true; //此时value即为最小值 }2.设计一个高效算法将顺序表L的所有元素逆置要求算法的空间复杂度为O1。 代码如下示例: 算法思想扫描顺序表L的前半部分元素对于元素L.data[i](0iL.length/2), 将其与后半部分的对应元素L.data[L.length-i-1]进行交换。void Reverse(Sqlist L){Elemtype temp; //辅助变量for(i0;iL.length/2;i){tempL.data[i]; //交换L.data[i]与L.data[L.length-i-1]L.data[i]L.data[L.length-i-1];L.data[L.length-i-1]temp;} }3.将两个有序顺序表合并为一个新的有序顺序表并由函数返回结果顺序表。 代码如下示例: 算法思想首先按顺序不断取下两个顺序表表头较小的节点存入新的顺序表中。 然后看哪个表还有剩余将剩下的部分加到新的顺序表后面。bool Merge(SeqList A,SeqList B,SeqList C){ //将有序顺序表A和B合并为一个新的有序顺序表Cif(A.lengthB.lengthC.maxSize) //大于顺序表的最大长度return false;int i0,j0,k0;while(iA.lengthj.B.length){if(A.data[i]B.data[j])C.data[k]A.data[i];elseC.data[k]B.data[j];}while(iA.length) //还剩一个没有比较完的顺序表C.data[k]A.data[i];while(jB.length)C.data[k]B.data[j];C.lengthk;return true; }4.已知在一维数组A[mn]中依次存放两个线性表a1,a2,…,am和b1,b2,…bn.编写一个函数将数组中两个顺序表的位置互换即将b1,b2,…bn放在a1,a2,…am的前面。 代码如下示例: 算法思想先将数组A[mn]中的全部元素a1,a2,...am,b1,b2,...bn原地逆置为bn,bn-1,...b1,am,am-1,..a1, 再对前n个元素和后m个元素分别使用逆置算法即可得到b1,b2,..bn,a1,a2,...am,从而实现顺序表的位置互换。typedef int DataType;void Reverse(DataType A[],int left,int right,int arraySize){if(leftright || rightarraySize)return;int mid(leftright)/2;for(i0;imid-left;i){DataType tempA[lefti];A[lefti]A[right-i];A[right-i]temp;} } void Exchange(DataType A[],int m,int n,int araySize){Reverse(A,0,mn-1,arraySize);Reverse(A,0,n-1,arraySize);Reverse(A,n,mn-1,arraySize); }5.设将n(n1)个整数存放到一维数组R中。设计一个在时间和空间两方面都尽可能高效的算法。将R中保存的序列循环左移p(Opn)个位置即将R中的数据由(X0,X1,…,Xn-1)变换为(Xp,Xp1,…Xn-1,X0,X1,…Xp-1)。 要求:1) 给出算法的基本设计思想。 2)根据设计思想采用 C或 C或 Java 语言描述算法关键之处给出注释 3) 说明你所设计算法的时间复杂度和空间复杂度 代码如下示例: 算法思想可将这个问题视为把数组 ab 转换成数组 ba(a代表数组的前p 个元素b代表数组中余下的n-p个元素) 先将a逆置得到a^(-1)b再将b逆置得到a^(-1)b^(-1最后将整个a逆置得到(a^(-1)b^(-1)^-1 ba。 设 Reverse 函数执行将数组元素逆置的操作对abcdefgh 向左循环移动3(p3)个位置的过程如下: Reverse(0p-1)得到 cbadefgh: Reverse(pn-1)得到 cbahgfed; Reverse(0,n-1)得到defghabc; 注:Reverse 中两个参数分别表示数组中待转换元素的始末位置。void Reverse(int R[],int from,int to){int i,temp;for(i0;i(to-from1)/2;i){tempR[fromi];R[fromi]R[to-i];R[to-i]temp;} } //Reverse void Converse(int R[],int n,int p){Reverse(R,0,p-1Reverse(R,p,n-1Reverse(R,0,n-1 }上述算法中三个Reverse函数的时间复杂度分别为 O(p/2)、O((n-p)/2)和 0(n/2) 故所设计的算法的时间复杂度为 O(n)空间复杂度为 O(1)。 另解借助辅助数组来实现。 算法思想:创建大小为p的辅助数组 S将R中前p 个整数依次暂存在 S中同时将 R中后 n-p 个整数左移 然后将 S中暂存的p个数依次放回到R中的后续单元。时间复杂度为 O(n)空间复杂度为 O(p)。总结 以上是今天要讲的内容练习了一些线性表–顺序表的习题。
http://www.yutouwan.com/news/304155/

相关文章:

  • 网站建设条件招聘网站建设计划 文库
  • 常平镇网站仿做wordpress 4.7.2 被黑
  • wordpress网站插件下载免费自助建站网站一览自助建站平台
  • 网站开发需要什么人才那个网站详情页做的好
  • 手机有软件做ppt下载网站有哪些外墙清洗
  • 自建网站国家审核要多久做企业云网站的企业邮箱
  • 门户网站视频模板尺寸规格及价格
  • 做美缝在哪个网站接单百度电商广告代运营
  • 专业网站建设排名Php外贸网站建设新浪博客
  • 网站建设公司的发展前景品牌营销策划方案报价
  • 商丘网站公司电话号码百度推广账户登录
  • 北京做手机网站的公司在哪做网站关键词
  • 徐州网站关键词wordpress导航自定义
  • 上海外包公司网站建设平面设计公司创业计划书
  • 手机 网站 开发广州建网站白云区
  • 微网站建设制作wordpress电影网站主题
  • 网站开发服务转包合同范本特产网站建设的目的
  • 招远专业做网站公司万网是做网站的吗
  • 网站维护服务简述网站的制作步骤
  • nas网站怎么做网站网站建设横幅标语
  • 分类信息网站系统cms免费自助建下下载
  • 做网站cookie传值wordpress主机建站
  • 健身会所网站模板做视频教学网站
  • 江苏建设官方网站国外美容院网站
  • 网站四对联广告代码开设一个网站的费用
  • 青海企业网站制作设计网站国外
  • 青岛网站建设全包网站平台建设心得
  • 手游传奇新开服网站网站建设策划方案怎么写
  • 石碣镇网站仿做网站公司怎么做运营商
  • 青岛百度seo排名电商运营seo