数组元素的逆置
数组元素的逆置
设数组arr有n个元素,要对数组的n个元素进行逆置。
int start=0;
int end=sizeof(arr)/sizeof(arr[0])-1;
//当元素个数为偶数个数时,刚好把每个元素的位置都进行互换了,循环条件为start<end
//当元素个数为奇数个数时,中间位置的元素不变,其余位置的元素要进行互换,此时
//循环条件为start<end
//综上,无论元素个数是奇数还是偶数,循环条件都同样是start<end
while(start<end)
{
//实现元素的互换
int temp=arr[start];
arr[start]=arr[end];
arr[end]=temp;
//下标进行更新
start++;
end--;
}
或者有更简单直白的方式:
int n=sizeof(arr)/sizeof(arr[0]);
//无论n是奇数或者偶数,都需要交换n/2次
for(i=0;i<n/2;i++)
{
int temp=a[i];
arr[i]=arr[n-1-i];
arr[n-1-i]=temp;
}