單向鏈表反轉-JS實現

function reverse(list){
  2     var p=list.head,q=null;
  3     while(p.next!==null){
  4         q=p.next;
  5         p.next=q.next;
  6         q.next=list.head.next;
  7         list.head.next=q;
  8     }
  9     return list;
 10 }

定義兩個指針P,Q;
Q是P的next;
貫穿的思想是將P後面的一個插入到Head以後,後面的鏈接起來;
前提是P的後一個非空數組

最笨的方法:將其存儲爲數組,數組逆序再存爲鏈表,浪費空間和時間指針

相關文章
相關標籤/搜索