线性表逆置

Posted jcahsy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了线性表逆置相关的知识,希望对你有一定的参考价值。

1.顺序表逆置

void turnback(int a[],int left,int right){
    int i=left,j=right;
    int temp=0;
    for(i,j;i<j;i++,j--){
        temp=a[i];
        a[i]=a[j];
        a[j]=temp;
    }
}

2.单链表的逆置

技术图片

 

 技术图片

 

 3.例

技术图片

 

 

void reverse(int a[],int left,int right,int k){
    int temp;
    for(int i=left,j=right;i<left+k && i<j;i++,j--){
        temp=a[i];
        a[i]=a[j];
        a[j]=temp;
    }
}

技术图片

 

 技术图片

 

 4.真题

技术图片

 

 

void reverse(int a[],int left,int right,int k){
    int temp;
    for(int i=left,j=right;i<left+k && i<j;i++,j--){
        temp=a[i];
        a[i]=a[j];
        a[j]=temp;
    }
}
void moveP(int a[],int n,int p){
    reverse(a,0,p-1,p);
    reverse(a,p,n-1;n-p);
    reverse(a,0,n-1,n);
}

 

以上是关于线性表逆置的主要内容,如果未能解决你的问题,请参考以下文章

单链表逆置

第02次作业-线性表

PTA 链表逆置

C++程序设计 编写程序实现单链表逆置功能。

单链表逆置

第02次作业-线性表