namespace //反转一维数组的部分元素的元素顺序
{
class Program
{
static void Main(string[] args)
{
int []b=new int[]{1,2,43,11,23,56,67};//要反转的数组
int []a= Reverse(b,2,6);//调用反转数组的值的方法
for (int j = 0; j < a.Length; j++)
{
Console.WriteLine(a[j]);
}
Console.ReadKey();
}
/// <summary>
/// 反正数组的方法
/// </summary>
/// <param name="array">要反转的数组</param>
/// <param name="begin">开始的下标</param>
/// <param name="end">结束的小标</param>
/// <returns>反转后的数组</returns>
public static int[] Reverse(int[] array,int begin,int end)
{
int i = 0, count = 0, num = 0, temp = 0;
num = end - begin+1;//要转换的数字的个数
//计算要转换的次数
if (num % 2 == 0) count = num / 2;
else count = num / 2 + 1;
//开始转换
for (int j = 0; j < array.Length; j++)
{
if (j>=begin&&j<=end)
{
if (i < count)
{
temp = array[end - j + begin];
array[end - j + begin] = array[j];
array[j] = temp;
i++;
}
else break;
}
}
return array;
//Array.Reverse 系统中的Array也有这个方法
}
}
}