数组数据循环移动

原创 2007年09月26日 16:43:00
 
/**//*有n个整数,使其前面各数顺序向后移m个位置,最
后m个数变成最前面的m个数
*/

#include 
<stdio.h>
#define N 8
void move(int x[], int n, int m)  /**//*长度为n的数组,循环移动的变量为m*/
...{
   
int i, *starta, *startb;
   
int b[N];                /**//*b数组作为临时数组储存*/
   starta 
= x;
   startb 
= b;
   
for(i = 0; i < n; i++)
   
...{
      
*(startb +(m+i)%n) = *(starta + i);   /**//*循环移动*/
   }

   
for(i = 0; i < n; i++)
   
...{
      x[i] 
= b[i];
   }

}


void main(void)
...{
   
int a[N];
   
int i, n, m;
   printf(
"input the array;");
   
for(i = 0; i < N; i++)
   
...{
      scanf(
"%d",&a[i]);
   }

   printf(
" input the move data;");
   scanf(
"%d",&m);
   move(a,N,m);
   printf(
"output the array:");
   
for(i = 0; i < N; i++)
   
...{
      printf(
"%2d",a[i]);
   }

    getch();
}

不知道写些什么,经过WIN-TC验证

【算法思想】循环移动一个数组

问题:如何将一个数组循环左移或者右移k位?        在下面的解决方案中,我们以循环左移为例。 我们最容易想到的是,将前k个元素复制到一个临时的数组中,然后将剩下的n-k个元素向左移动k个位置,...
  • tengweitw
  • tengweitw
  • 2014年05月07日 19:33
  • 1891

最高效的数组移动

原文地址: http://bbs.csdn.net/topics/300031593 比如要将数组      int a[]={1, 2,  3,   4, 5, 6, 7, 8, 9, 10...
  • angelamoby
  • angelamoby
  • 2015年08月31日 17:58
  • 414

数组循环移位的几种解法

题目描述: 设计一个算法,把一个含有N个元素的数组循环右移K位。解法一: 最容易想到的就是每次将数组中的元素右移一位,循环K次。#include using...
  • mayh554024289
  • mayh554024289
  • 2015年08月23日 23:02
  • 4133

1162: 循环移动(指针专题)

Description 有n个整数,使前面各数顺序向后移动k个位置,移出的数再从开头移入。输出移动后的数组元素。  题目没有告诉你n的范围,希望你读入n之后用malloc()函数动态申请内存空...
  • lvhaoye
  • lvhaoye
  • 2017年07月30日 18:31
  • 290

C语言 数组循环左移问题

如有元素个数为n的序列: abcdefgh 要求循环左移 p位(如设置p=3),则要求操作后的序列从 abcdefgh 变为: defghabc 把 abc 设为序列A,defgh设为序列B 先将...
  • u014453898
  • u014453898
  • 2017年09月01日 15:19
  • 364

一个有n个整数的递增有序数组。对它进行向左或向右循环移动若干次后,要求给出一个代码实现,尽可能快地从这个数组中寻找指定值所在的位置

题目:一个有n个整数的递增有序数组。对它进行向左或向右循环移动若干次后,要求给出一个代码实现,尽可能快地从这个数组中寻找指定值所在的位置,不在数组中返回-1. 例如:输入:5 (然后在数组(15 1...
  • lsx991947534
  • lsx991947534
  • 2015年03月27日 15:21
  • 620

循环移动字符串

最近钻研算法,找到一个不错的文章《程序员编程艺术》,作个笔记。         题目:对给定字符串实现循环左移或右移,比如“abcdefg”,循环左移2位变成“cdefgab”。         方法...
  • u011214306
  • u011214306
  • 2014年03月31日 11:11
  • 836

用java实现数组的循环逐步移位操作

用java实现数组的循环移位操作 设计一个类,并为其添加一个带有一个参数的构造函数,同时封装一个方法。当连续调用该方法时,依次产生下列元素输出   第一次调用输出: 5 7 4 8 9 1  第二次...
  • u010043538
  • u010043538
  • 2013年10月16日 02:22
  • 3779

数组的循环移动

数组的循环移动是考查的算法中比较常见的,有循环左移,循环右移之类的。当然,不会直接就考查移动的算法,还会有一定的时间复杂度,空间复杂度的要求之类的,这才是算法要求的,所以这两天刚好看到类似的题目,就记...
  • LilyNothing
  • LilyNothing
  • 2017年03月21日 18:08
  • 507

数组循环移动

数组循环移动 个人信息:就读于燕大本科软件工程专业 目前大三; 本人博客:google搜索“cqs_2012”即可; 个人爱好:酷爱数据结构和算法,希望将来从事算法工作为人民作出...
  • cqs_2012
  • cqs_2012
  • 2014年06月13日 17:11
  • 967
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:数组数据循环移动
举报原因:
原因补充:

(最多只允许输入30个字)