实现顺序表的就地逆置,即利用原表的存储空间将线性表(a1,a2,…,an),逆置为(an,an-1,…,a1)。
顺序表类型定义如下:
typedef struct {
ElemType *elem;
int length;
int listsize;
} SqList;
实现函数如下:
void Inverse(SqList &L)
{
int i;
ElemType *p,temp;
p = L.elem;
for(i = 0; i < (L.length)/2; i++){
temp = *(L.elem + i);
*(L.elem + i) = *(L.elem + L.length - i - 1);
*(L.elem + L.length - i - 1) = temp;
}
}