2014-02-23 85 views
0

我需要搜索列表中的所有元素x,其中x.key = k。我會創建一個空的列表G,在那裏存儲有關索引的信息。搜索列表中包含x.key = k的所有元素

search(L,G,k) 
    x <- L.head 
    y <- G.head 
    i <- 0 
    while (x.next != null) 
     x <- x.next 
     i <- i+1 
     if(x.key = k) 
      y.next <- new y 
      y <- y.next 
      y.key <- i 

它正確嗎?我該如何正確書寫新的y?我希望如果來自L的元素具有密鑰k,則新元素與具有密鑰i的G列表相連,其中i是索引。

回答

0

我會做一些更正:

while (x != null) 
     if(x.key = k) 
      do some stuff with y 
     i <- i+1 
     x <- x.next 

因爲(x.next = NULL)是最後一個元素,但隨着數據的關鍵有效的元素。

哪裏是使一個地方增量我< - 我+ 1 - 取決於記數的公約 - 零基礎或1爲主

附:你使用虛擬頭節點嗎?

相關問題