已知长度为n的线性表A采用顺序存储结构,设计一个算法,使得该线性表中的数据元素按逆序重新排列。
时间: 2024-03-25 11:36:12 浏览: 151
线性表的顺序存储结构实现.
可以使用两个指针,分别指向线性表的第一个元素和最后一个元素,交换它们的值,然后依次向中间移动指针,重复交换,直到两个指针相遇。
具体实现可以参考以下代码:
```
void ReverseList(int A[], int n)
{
int i = 0, j = n - 1;
while (i < j) {
int temp = A[i];
A[i] = A[j];
A[j] = temp;
i++;
j--;
}
}
```
其中,A为线性表的数组表示,n为线性表的长度。该算法的时间复杂度为O(n/2),空间复杂度为O(1)。
阅读全文