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

织梦网站换空间淮安建筑信息平台

织梦网站换空间,淮安建筑信息平台,html5网站推广,seo兼职1. 简述 设计一个算法#xff0c;把一个含有N个元素的数组循环右移K位#xff0c;要求时间复杂度为O(N)#xff0c;且只允许使用两个附加变量。 2. 思路 其实看到题目中只允许两个附加变量应该也能想到#xff0c;就是两个变量倒来倒去就行了。如果熟悉希尔排序的话#x…1. 简述     设计一个算法把一个含有N个元素的数组循环右移K位要求时间复杂度为O(N)且只允许使用两个附加变量。 2. 思路     其实看到题目中只允许两个附加变量应该也能想到就是两个变量倒来倒去就行了。如果熟悉希尔排序的话这题不是问题希尔排序里面需要分组进行插入法排序这里就是分组进行移位而已。    举例先说明下假设10个元素要移动3位那么就是三组第一组A[0],A[3],A[6],A[9]第二组A[1],A[4],A[7]第三组A[2],A[5],A[8]每组分别内部移位即可。    不过有一个问题必须注意假设移动k为数组长度为N当kN/2时没问题但是当kN/2是就不对了当KN/2时每个组都至少有两个元素每个元素都会移动一次而且都是向着应该移动的方向移动指定的位数没有问题。但是当KN/2时有的组会没有元素这样的组不会移动导致错误出现了。解决方法很简单写两个移位函数一个左移一个右移比如N10K7要求左移可以改为N10K3。进行右移即可。 3. 代码     #include iostreamusing namespace std;void left_shift_k(char *a, int n, int k);void right_shift_k(char *a, int n, int k);void left_shift_k(char *a, int n, int k) { k k % n;if(k n/2) { right_shift_k(a, n, n-k);return; }int i,j;char tmp;for(i0; ik; i) { tmp a[i];for(ji; jkn; jk) a[j] a[jk]; a[j] tmp; }}void right_shift_k(char *a, int n, int k) { k k % n;if(k n/2) { left_shift_k(a, n, n-k);return; }int i,j;char tmp;for(i0; ik; i) {for(ji; jkn; jk) ; tmp a[j];for(; ji; j-k) a[j] a[j-k]; a[i] tmp; }}void output(const char* a) {for(int i0; i8; i) cout a[i] ; cout endl;}int main() {char a[8] {a, b, c, d, 1, 2, 3, 4}; cout 数组: endl; output(a);for(int i1; i8; i) {char b[8] {a, b, c, d, 1, 2, 3, 4}; cout 右移 i 位\t; right_shift_k(b, 8, i); output(b); } cout endl; for(int i1; i8; i) {char b[8] {a, b, c, d, 1, 2, 3, 4}; cout 左移 i 位\t; left_shift_k(b, 8, i); output(b); } system(PAUSE);return 0;}     输出结果为    4. 参考     编程之美2.17节数组循环移位转载于:https://www.cnblogs.com/pangxiaodong/archive/2011/10/08/2201766.html
http://www.zqtcl.cn/news/60717/

相关文章:

  • 专门做网站的公司叫什么中国机械工程
  • 怎么做企业网站建设方案桐城住房建设网站
  • 集团做网站优势做网站没有成本的方法
  • 四川建设厅特种工报名网站网络维护员每天要干哪些事
  • 苏州大学网站建设目标网站做调查需要考虑的内容
  • 南京网站排名优化费用创新创意设计作品
  • 网站推广软件ky99浙江seo技术培训
  • 温州网站建设外包广州百度推广外包
  • 松江做网站杭州网站制作 乐云践新
  • linux如何架设网站公司网站实名认证怎么做
  • 个人网站设计论文摘要关键词排名优化如何
  • 和县网站制作教程网站建设
  • 怎样做网站轮播找个产品做区域代理
  • asp.net获取网站地址企业网站 php 免费
  • 博物馆网站模版wordpress的登入页面
  • 又一个wordpress网站山东济宁网站建设设计
  • 海口哪里做网站公司企业网站制作服务器
  • 做网站 用什么空间详情页设计详细教程
  • qq空间怎么做网站网页版传奇哪个最好玩
  • 北京上云网站建设公司网站你懂我意思正能量晚上在线观看不用下载免费
  • 东莞模板网站wordpress 降级
  • frontpage导入网站重庆建设网站哪里好
  • wordpress网站服务器配置国外购物网站系统
  • 网站建设课程有哪些收获今天上午北京发生了什么
  • wap网站需要什么服务器网站建设与实践模板
  • 网站网页制作专业公司做jsp网站时怎么预览
  • 公司网站数据分析中铁建设集团有限公司招聘官网
  • 庆阳市住房和城乡建设局网站企业网站制作报价
  • 如何把自己做的网站挂网上公司网站上线流程
  • 扬中网站建设包括哪些wordpress 主题 下载