怎么理解鏈表這個反轉函數?
首先p是Shape這個類的指針,指向當前元素q是復制p的指針,用于反轉鏈表位置r是上一個位置的指針while(p)即while(p!=NULL),說明沒有到鏈表的結束(NULL)r=q就是復制q的值,即上一個位置的指針q=p是復制當前的地址p=p->next是將p向后移動q->next=r是將q指向r,即后一個指向前一個,實現反轉的功能在最后,就是p=NULL的時候,q仍保存著鏈表的末尾,這時將head替換成q,將鏈表頭換成鏈表尾,結束整個反轉
怎么理解鏈表這個反轉函數?
首先p是Shape這個類的指針,指向當前元素q是復制p的指針,用于反轉鏈表位置r是上一個位置的指針while(p)即while(p!=NULL),說明沒有到鏈表的結束(NULL)r=q就是復制q的值,即上一個位置的指針q=p是復制當前的地址p=p->next是將p向后移動q->next=r是將q指向r,即后一個指向前一個,實現反轉的功能在最后,就是p=NULL的時候,q仍保存著鏈表的末尾,這時將head替換成q,將鏈表頭換成鏈表尾,結束整個反轉