王道线性表习题

发布时间 2023-07-12 10:48:27作者: ylanren

2024数据结构习题

p17 部分

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

#define MaxSize 50
typedef struct {
    ElemType data[MaxSize];
    int length;
}Sqlist;
void reverse(Sqlist &L){
    for(int i=0;i<L.lengrh/2;i++){
        temp=data[i];
        data[i]=data[length-i-1];
        data[length-i-1]=temp;
    }
}

2010年统考题

void reverse(Sqlist &L,int head,int tail){
	char temp;
    for(int i=head;i<(head+tail+1)/2;i++){
        temp=L.data[i];
        L.data[i]=L.data[tail+head-i];
        L.data[tail+head-i]=temp;
    }
}
void cirleft(Sqlist &L,int p){
	reverse(L,0,p-1);
	reverse(L,p,L.length-1);
	reverse(L,0,L.length-1);
}