迭代器就是把不同的資料結構 "相同功能 "的函式裝到乙個名字相同的函式裡,這樣的話你在寫演算法的時候就可以不管你要操作的資料結構的邏輯結構了。
比如不管是鍊錶,陣列還是別的什麼,統一都用迭代器進行訪問的話可能都是 next()表示下乙個元素 pre()表示上乙個元素等等 。
其實意思就是,不管你用的是鍊錶,2叉樹、3叉樹、n叉樹,還是向量。 迭代器都可以讓你從first開始,使用next,到達last,而且乙個不漏滴都走一遍。
你不必知道在next的時候,迭代器是怎樣從當前節點跳到下乙個節點的。
就和猴子一樣,你不必知道猴子是怎樣從這個樹的節點跳到那個樹的!總之,猴子可以把樹的所有節點跳一邊(再次強調:乙個不漏)
迭代器是:
無論你用的是什麼結構(鍊錶也好、陣列也好、數也好、圖也好、hash表也好),總之, 你可以不關心任何細節遍歷細節,(下面看好了) 從乙個起點(begin)觸發到達,到達終點(end),並且保證每個節點都能走到且只走一次。
迭代器的作用
迭代器1 import time class classmates object def init self self.names list defadd self,name def iter self 如果想要乙個物件成為乙個可以迭代的物件,即可以使用for,那麼必須實現 iter 方法 retu...
STL中迭代器的作用,有指標為何還要迭代器
1 迭代器 iterator 迭代器 模式又稱cursor 游標 模式,用於提供一種方法順序訪問乙個聚合物件中各個元素,而又不需暴露該物件的內部表示。或者這樣說可能更容易理解 iterator模式是運用於聚合物件的一種模式,通過運用該模式,使得我們可以在不知道物件內部表示的情況下,按照一定順序 由i...
python迭代器的作用 python的迭代器
迭代是指能夠從序列中訪問出素的一種方式,在我們遍歷使用for.in.的物件都是可迭代物件。這裡需要補充一點的是python中一切都是物件。判斷乙個物件是否是可迭代物件可以通過instance函式 像我們常用的列表,字典,字串,集合,元組都是可迭代物件。那麼我們是否可以自定義乙個可迭代物件呢,答案是肯...