#鍊錶的python實現
#建立乙個node類
class
node
:def
__init__
(self,initdata)
: self.data = initdata
self.
next
=none
defgetdata
(self)
:return self.data
defgetnext
(self)
:return self.
next
defsetdata
(self,newdata)
: self.data = newdata
defsetnext
(self,newnext)
: self.
next
= newnext
#實現無序列表
class
unorderedlist
:def
__init__
(self)
: self.head =
none
defisempty
(self)
:return self.head ==
none
defadd
(self,item)
: temp = node(item)
temp.setnext(self.head)
self.head = temp
defsize
(self)
: current = self.head
count =
0while current !=
none
: count = count +
1 current = current.getnext(
)return count
defsearch
(self,item)
: current = self.head
found =
false
while current !=
none
andnot found:
if current.getdata(
)== item:
found =
true
else
: current = current.getnext(
)return found
defremove
(self,item)
: current = self.head
previous =
none
found =
false
while
not found:
if current.getdata(
)== item:
found =
true
else
: previous = current
current = current.getnext(
)if previous ==
none
:#當要刪除的項恰好是第一項是,第一項的下一項變成頭結點
self.head = current.getnext(
)else
:#刪除項的後一項變成刪除項前一項的後一項
previous.setnext(current.getnext())
#實現有序列表
class
orderedlist
:def
__init__
(self)
: self.head =
none
defsearch
(self,item)
: current = self.head
found =
false
stop =
false
while current !=
none
andnot found and
not stop:
if current.getdata(
)== item:
found =
true
else
:if current.getdata(
)> item:
stop =
true
else
: current = current.getnext(
)return found
defadd(self,item)
: current = self.head
previous =
none
stop =
false
while current !=
none
andnot stop:
if current.getdata(
)> item:
stop =
true
else
: previous = current
current = current.getnext()
temp = node(item)
if previous ==
none
: temp.setnext(self.head)
self.head = temp
else
: temp.setnext(current)
previous.setnext(temp)
列表(抽象資料型別)
列表 抽象資料型別 維基百科,自由的百科全書 這篇文章是關於順序資料結構。對於隨機訪問資料結構,請參閱陣列資料型別。在電腦科學中,列表或序列是一種抽象資料型別,表示可數數量的有序值,其中相同的值可能會出現多次。列表的例項是有限序列的數學概念的計算機表示 列表的 潛在地 無限型別是流。1 3.5列表是...
Python 抽象資料型別
定義 指的是乙個值的集合和定義在該值集合上的一組操作的總稱。資料結構不同於資料型別,也不同於資料物件,它不僅要描述資料型別的資料物件,而且要描述資料物件各元素之間的相互關係。定義 指乙個數學模型及定義在該模型上的一組操作。作用 目的在於隱藏運算實現的細節和內部資料結構,同時向使用者提供該資料型別的介...
抽象資料型別
本篇文章簡單的講解下表 棧 佇列。首先先了解一下什麼是抽象資料型別。它是這麼定義的 抽象資料型別 abstract data type,即adt 是帶有一組操作的一些物件的集合。那麼adt怎麼理解呢?首先你只需要記住表 集合 圖以及與他們各自的操作一起形成的物件都可以被看做抽象資料型別.這就跟整型 ...