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

找哪个网站做摩配手机网站制作教程

找哪个网站做摩配,手机网站制作教程,杭州号码百事通做网站,卖一手房做哪个网站好元素逆置 概述:其实就是将 第一个元素和最后一个元素交换,第二个元素和倒数第二个元素交换,依次到中间位置。用途:可用于数组的移动,字符串反转,链表反转操作,栈和队列反转等操作。 逆置图解 …

元素逆置

  • 概述:其实就是将 第一个元素和最后一个元素交换,第二个元素和倒数第二个元素交换,依次到中间位置。
  • 用途:可用于数组的移动,字符串反转,链表反转操作,栈和队列反转等操作。

逆置图解

代码

// 逆置元素算法
void Reverse(int R[] , int l , int r){// R 数组,l 左边 r 右边int i , j ,temp;for(i=l , j=r; i < j; i++,j--){					// i < j 不过数组个数是奇数还是偶数都行temp = R[i];R[i] = R[j];R[j] = temp;}
}

注意:逆置算法很简单,但是能延申其他的算法


循环移动算法

  • 考研常考的一个算法,结合逆置算法,可进行实现

循环左移(右移)算法

图解

  • 第一步:循环左移 p 个元素,就将 数组前 p 个(0~p-1)元素先进行逆置
  • 第二步:再将 数组 p-1位置 之后的(n-p)个元素进行逆置
  • 第三步:将 整个数组 整体进行逆置,即可得到 循环左移 p 个元素
代码
// 逆置元素算法
void Reverse(int R[] , int l , int r){// R 数组,l 左边 r 右边int i , j ,temp;for(i=l , j=r; i < j; i++,j--){temp = R[i];R[i] = R[j];R[j] = temp;}
}
// 循环左移算法
void LeftMove(int R[] , int n , int p){// r 数组 n 数组元素个数 p 循环左移个数if(p<0 || p>n){cout <<"ERROR"<<endl; }else{Reverse(r , 0 , p-1);        // 先逆置前p个Reverse(r , p , n-1);        // 再逆置后n-p个Reverse(r , 0 , n-1);        // 最后再把所有的都逆置}
}

时间复杂度分析

①:第一行 Reverse 执行频度为:1 + (p-1-0+1)/2
②:第二行 Reverse 执行频度为:1 + (n-1-p+1)/2
③:第三行 Reverse 执行频度为:1 + (n-1-0+1)/2
f(n) = 3 + n
T(n) = O(f(n)) = O(n)
空间复杂度

由于可以看到在 整个算法中,我们只定义了变量,并未定义其他数据结构,也未使用递归,所以空间复杂度是常数级别。为 O(1)

http://www.ds6.com.cn/news/11965.html

相关文章:

  • 德阳做网站企业网站推广外包
  • 唐山网站建设唐山做网站外贸网站建设
  • 万户网站做的怎样google chrome谷歌浏览器
  • 做彩票的网站吗网站发布与推广方案
  • 全国旅游大型网站建设seo关键词排名优化案例
  • 不会代码可以做网站维护吗百度号码
  • 网站收缩目录模板湖南正规关键词优化
  • 重庆专业网站建设费用百度搜索指数查询
  • 自己做的网站源码如何安装seo面试常见问题及答案
  • 银行网站建设国内网站排名
  • 网站建设的技术方案模板下载微信推广广告在哪里做
  • h5页面制作网站广告公司职位
  • 房产中介网站开发模板关键词检索怎么弄
  • 开办网站备案最近的头条新闻
  • 建设网站的用途郑州百度搜索优化
  • 代码外包接单平台seo是什么工作内容
  • 建设网站时怎么用外部字体提升seo搜索排名
  • 网站开发前景seo网站关键词优化报价
  • wordpress如何关闭rss网站seo服务商
  • 南昌网站建设公司国内十大软件测试培训机构
  • 手机单页网站教程磁力宅
  • 商城网站建设目标爱站网站长seo综合查询
  • 营销云产品seo推广员是做什么的
  • 医院网站做品牌推广需要哪些百度明星人气排行榜
  • 网站怎么看是什么程序做的推广普通话手抄报内容怎么写
  • 网站搭建合同百度地图导航网页版
  • 做k线图网站如何使用免费b站推广网站
  • 十大免费行情软件下载网站南阳本地网络推广优化公司
  • 网站建设需求调查表软件优化
  • 做影视网站被告怎么办seo优化什么意思