[DAY2]数据结构代码题学习笔记

题目

设计一个高效算法,将顺序表L的所有元素逆置,要求空间复杂度为O(1)

设计思路

顺序表L元素逆置即将顺序表首尾元素交换对应交换位置,可以参考简单思路找一个中间空间进行交换

实现代码

方法一

void Reverse(SqList&L)
{
ElemType temp;//辅助空间
for(i=0;i<L.lenth/2;i++;)
{
temp=L.data[i];
L.data[i]=L.data[L.lenth-1-i];
L.data[lenth-1-i]=temp;
}
}

方法二(递归思想)

void Reverse(int *A,int low, int high)
{
if(low<high)
{
swap(A[low],A[high]};
Reverse(A.low+1, A.high-1;
}
}
posted @ 2022-10-23 22:50  出色的你  阅读(31)  评论(0)    收藏  举报