1. 程式人生 > >資料結構與演算法題目集(中文)(6-1 單鏈表逆轉(20 分))

資料結構與演算法題目集(中文)(6-1 單鏈表逆轉(20 分))

List Reverse( List L )
{
  PtrToNode h,ln;
  int i=0;
  if(!L) return NULL;                    //空表
  else if(!L->Next) return L;        //只有一個結點
  else{
    ln=L->Next;                           //逆轉第一個結點
    h=L;
    L->Next=NULL;
    L=ln;
    ln=ln->Next;
    i++;
  while(ln)
  {
    L->Next=h;                       //逆轉後續結點
    h=L;
    L=ln;
    ln=ln->Next;
  }
  L->Next=h;                         //收尾操作
  h=L;
  }
  return h;
}