熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> 數據結構 >> 正文

數據結構之單鏈表基本運算的實現[3]

2013-11-15 15:13:46  來源: 數據結構 

   求表長

  由於單鏈表采用離散的存儲方式並且沒有顯示表長的存儲信息因此要求出單鏈表的表長必須將單鏈表遍歷一遍

  算法思路設一個移動指針p和計數器 count 初始化後p指向頭結點p 後移一個結點count 加 直至 p 為NULL算法如下

  int Length_LinkList (LinkList H)

  { /* 求單鏈表表長入口參數單鏈表頭指針出口參數表長表示單鏈表不存在*/

  LinkList p=H; /* p指向頭結點*/

  int count= ; /*H帶頭結點所以從開始*/

  while ( p) /* p所指的是第 count + 個結點*/

  {

  p=p>next;

  count++;

  } /*while */

  return (count);

  }

  該算法的時間復雜度為O(n)其中n為單鏈表的結點數

[]  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  []  


From:http://tw.wingwit.com/Article/program/sjjg/201311/23085.html
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.