将一个数组中的值按逆序重新存放。例如,原来顺序为8,6,5,4,1。要求改为1,4,5,6,8。
时间: 2023-04-28 14:06:23 浏览: 89
可以使用双指针法,从数组两端开始交换元素,直到两个指针相遇。具体步骤如下:
1. 定义两个指针,一个指向数组的第一个元素,另一个指向数组的最后一个元素。
2. 循环交换两个指针所指向的元素,直到两个指针相遇。
3. 交换完成后,数组中的元素顺序就被逆序了。
代码实现如下:
void reverse(int arr[], int len) {
int left = 0, right = len - 1;
while (left < right) {
int temp = arr[left];
arr[left] = arr[right];
arr[right] = temp;
left++;
right--;
}
}
调用该函数即可将数组中的元素按逆序重新存放。
相关问题
将一个数组的值按逆序重新存放,例如,原来顺序为:8,6,5,4,1。要求改为:1,4,5,6,8
要将一个数组的值按逆序重新存放,可以使用如下的代码:
```python
arr = [8, 6, 5, 4, 1]
arr.reverse()
print(arr)
```
输出结果为:[1, 4, 5, 6, 8]。
以上是Python的实现方法,其他编程语言的实现方法可能有所不同。
c语言将一个数组的值按逆序重新存放,例如,原来顺序为:8,6,5,4,1。要求改为:1,4,5,6,8。
可以通过循环遍历数组并交换数组元素的位置来实现将数组按逆序重新存放的功能。具体实现代码如下:
```
#include <stdio.h>
void reverseArray(int arr[], int size){
int i, temp;
for(i = 0;i < size/2;++i){
temp = arr[i];
arr[i] = arr[size-i-1];
arr[size-i-1] = temp;
}
}
int main(){
int arr[] = {8,6,5,4,1};
int size = sizeof(arr)/sizeof(int);
reverseArray(arr, size);
int i;
for(i = 0; i < size; ++i){
printf("%d ", arr[i]);
}
return 0;
}
```
这段代码实现了将数组元素按逆序重新存放的功能,应该可以满足你的需求。
阅读全文