1. 程式人生 > >Python練習資料結構筆記

Python練習資料結構筆記

#coding=utf-8
#1. 已知字串 a = "aAsmr3idd4bgs7Dlsf9eAF",要求如下
#
a = "aAsmr3idd4bgs7Dlsf9eAF"

#1.1 請將a字串的大寫改為小寫,小寫改為大寫。
#
a = "aAsmr3idd4bgs7Dlsf9eAF"
print a.swapcase()

#1.2 請將a字串的數字取出,並輸出成一個新的字串。
#
a = "aAsmr3idd4bgs7Dlsf9eAF"

print ''.join([s for s in a if s.isdigit()])

'''
[s for s in a if s.isdigit()]
''.join()

'''
#1.3 請統計a字串出現的每個字母的出現次數(忽略大小寫,a與A是同一個字母),並輸出成一個字典。 例 {'a':4,'b':2}
#
a = "aAsmr3idd4bgs7Dlsf9eAF"

a = a.lower()
print dict([(x,a.count(x)) for x in set(a)])
'''
dict([(x,a.count(x)) for x in set(a)])
dict()

[(x,a.count(x)) for x in set(a)]
'''
#1.4 請去除a字串多次出現的字母,僅留最先出現的一個。例 'abcabb',經過去除後,輸出 'abc'
#
a = "aAsmr3idd4bgs7Dlsf9eAF"
a_list = list(a) #轉換成list
set_list = list(set(a_list)) #去重以後再轉換回list
set_list.sort(key=a_list.index) #對去重以後的list進行原先的排序
print ''.join(set_list)#拼接成字串

#1.5 請將a字串反轉並輸出。例:'abc'的反轉是'cba'
#
a = "aAsmr3idd4bgs7Dlsf9eAF"

print a[::-1] #步進

#1.6 去除a字串內的數字後,請將該字串裡的單詞重新排序(a-z),並且重新輸出一個排序後的字串。(保留大小寫,a與A的順序關係為:A在a前面。例:AaBb)
#
'''
1.要有小寫字母從a-z的排序
2.大小寫不同,但值相同的字母,大寫在小寫的前面
'''
a = "aAsmr3idd4bgs7Dlsf9eAF"
l = sorted(a)

a_upper_list = []
a_lower_list = []

for x in l:
if x.isupper():
a_upper_list.append(x)
elif x.islower():
a_lower_list.append(x)
else:
pass

for y in a_upper_list:
y_lower = y.lower()
if y_lower in a_lower_list:
a_lower_list.insert(a_lower_list.index(y_lower),y)

print ''.join(a_lower_list)
#1.7 請判斷 'boy'裡出現的每一個字母,是否都出現在a字串裡。如果出現,則輸出True,否則,則輸 出False.
#
a = "aAsmr3idd4bgs7Dlsf9eAF"
search = 'boy'
u = set(a)
u.update(list(search))
print len(set(a)) == len(u)

##下列解答來自swfer同學,這樣更graceful:)
a = "aAsmr3idd4bgs7Dlsf9eAF"
print set('boy').issubset(set(a))
#1.8 要求如1.7,此時的單詞判斷,由'boy'改為四個,分別是 'boy','girl','bird','dirty',請判斷如上這4個字串裡的每個字母,是否都出現在a字串裡。
#
a = "aAsmr3idd4bgs7Dlsf9eAF"
search = ['boy','girl','bird','dirty']

b = set(a)
for i in search:
b.update(list(i))

print len(b) == len(set(a))
##下列解答來自swfer同學,這樣更graceful:)
a = "aAsmr3idd4bgs7Dlsf9eAF"
lst=['boy','girl','bird','dirty']
s=''.join(lst)
print set(s).issubset(set(a))

#1.9 輸出a字串出現頻率最高的字母
a = "aAsmr3idd4bgs7Dlsf9eAF"

l = ([(x,a.count(x)) for x in set(a)])
l.sort(key = lambda k:k[1],reverse=True)
print l[0][0]
#
#
#2.在python命令列裡,輸入import this 以後出現的文件,統計該文件中,"be" "is" "than" 的出現次數。
#

import os
m = os.popen('python -m this').read()
m = m.replace('\n','')
l = m.split(' ')
print [(x,l.count(x)) for x in ['be','is','than']]

#
#3.一檔案的位元組數為 102324123499123,請計算該檔案按照kb與mb計算得到的大小。
size = 102324123499123
print '%s kb'%(size >> 10)
print '%s mb'% (size >> 20)

#
#4.已知 a = [1,2,3,6,8,9,10,14,17],請將該list轉換為字串,例如 '123689101417'.
#
a = [1,2,3,6,8,9,10,14,17]
print str(a)[1:-1].replace(', ','')

#另外的幾個簡單的方法
list1=["1","2","3","4","5"]
print("".join(list1))
或則
list1=[1,2,3,4,5]
list1=map(str,list1)
print("".join(list1))

#

#第一部分:




#列表a = [11,22,24,29,30,32]


#1 把28插入到列表的末端
a.append(28)
a
[11, 22, 24, 29, 30, 32, 28]


#2 在元素29後面插入元素57
a.insert(4,57)
a
[11, 22, 24, 29, 57, 30, 32, 28]


#3 把元素11修改成6
a[0]=6
a
[6, 22, 24, 29, 57, 30, 32, 28]


#3 刪除元素32
a.pop(-2)
32
a
[6, 22, 24, 29, 57, 30, 28]


#4 對列表從小到大排序
a.sort()
a
[6, 22, 24, 28, 29, 30, 57]


##習題2:




#列表b = [1,2,3,4,5]




#1 用2種方法輸出下面的結果:


[1,2,3,4,5,6,7,8]
b+[6,7,8]
[1, 2, 3, 4, 5, 6, 7, 8]


b.extend([6,7,8])
b
[1, 2, 3, 4, 5, 6, 7, 8]
#2 用列表的2種方法返回結果:[5,4]
b[-4:-6:-1]
[5, 4]


d=[]
d.append(b[-4])
d.append(b[-5])
d
[5, 4]


#3 判斷2是否在列表裡
2 in b
True


##習題3:


#b = [23,45,22,44,25,66,78]


#用列表解析完成下面習題:




#1 生成所有奇陣列成的列表


b=[23,45,22,44,25,66,78]
b
[23, 45, 22, 44, 25, 66, 78]
[i for i in b if i % 2==1]
[23, 45, 25]


#2 輸出結果: ['the content 23','the content 45']


["the content %s" % m for m in b[0:2:1]]
['the content 23', 'the content 45']


#3 輸出結果: [25, 47, 24, 46, 27, 68, 80]
[m+2 for m in b]
[25, 47, 24, 46, 27, 68, 80]


##習題4:




#用range方法和列表推導的方法生成列表:


#[11,22,33]


range(11,34,11) #range(起始,結束+1,步長)
[11, 22, 33]
[m *11 for m in range(1,4,1)]
[11, 22, 33]
##習題5:




#已知元組:a = (1,4,5,6,7)




#1 判斷元素4是否在元組裡
4 in a
True


#2 把元素5修改成8
a(2)=8
SyntaxError: can't assign to function call
c=list(a)
c
[1, 4, 5, 6, 7]
c[2]=8
c
[1, 4, 8, 6, 7]
a=tuple(c)
a
(1, 4, 8, 6, 7)
##習題6:




#已知集合:setinfo = set('acbdfem')和集合finfo = set('sabcdef')完成下面操作:




#1 新增字串物件'abc'到集合setinfo
setinfo=set('abcdfem')
setinfo
set(['a', 'c', 'b', 'e', 'd', 'f', 'm'])
setinfo.add('abc')
setinfo
set(['a', 'c', 'b', 'e', 'd', 'f', 'm', 'abc'])


#2 刪除集合setinfo裡面的成員m
setinfo.remove('m')
setinfo
set(['a', 'c', 'b', 'e', 'd', 'f', 'abc'])


#3 求2個集合的交集和並集
finfo=set('sabcdef')
finfo
set(['a', 'c', 'b', 'e', 'd', 'f', 's'])
setinfo & finfo
set(['a', 'c', 'b', 'e', 'd', 'f'])
setinfo | finfo
set(['a', 'c', 'b', 'e', 'd', 'f', 's', 'abc'])


##習題7:




#用字典的方式完成下面一個小型的學生管理系統。




#1 學生有下面幾個屬性:姓名,年齡,考試分數包括:語文,數學,英語得分。


"""
比如定義2個同學:




姓名:李明,年齡25,考試分數:語文80,數學75,英語85




姓名:張強,年齡23,考試分數:語文75,數學82,英語78
"""
studentinfo={'liming':{'name':'LiMing','age':25,'score':{'chinese':80,'math':75,'english':85}}}
studentinfo
{'liming': {'age': 25, 'score': {'math': 75, 'chinese': 80, 'english': 85}, 'name': 'LiMing'}}
studentinfo['zhangqiang']={'age':25,'name':'ZhangQiang','score':{'chinese':75,'math':82,'english':78}}
studentinfo
{'liming': {'age': 25, 'score': {'math': 75, 'chinese': 80, 'english': 85}, 'name': 'LiMing'}, 'zhangqiang': {'age': 25, 'score': {'math': 82, 'chinese': 75, 'english': 78}, 'name': 'ZhangQiang'}}


#2 給學生新增一門python課程成績,李明60分,張強:80分
studentinfo['liming']['score']['python']=60
studentinfo['liming']
{'age': 25, 'score': {'python': 60, 'math': 75, 'chinese': 80, 'english': 85}, 'name': 'LiMing'}
studentinfo['zhangqiang']['score']['python']=80
studentinfo['zhangqiang']
{'age': 25, 'score': {'python': 80, 'math': 82, 'chinese': 75, 'english': 78}, 'name': 'ZhangQiang'}




#3 把張強的數學成績由82分改成89分
studentinfo['zhangqiang']['score']['math']=89
studentinfo['zhangqiang']
{'age': 25, 'score': {'python': 80, 'math': 89, 'chinese': 75, 'english': 78}, 'name': 'ZhangQiang'}




#4 刪除李明的年齡資料
del studentinfo['liming']['age']
studentinfo
{'liming': {'score': {'python': 60, 'math': 75, 'chinese': 80, 'english': 85}, 'name': 'LiMing'}, 'zhangqiang': {'age': 25, 'score': {'python': 80, 'math': 89, 'chinese': 75, 'english': 78}, 'name': 'ZhangQiang'}}




#5 對張強同學的課程分數按照從低到高排序輸出。
b=studentinfo['zhangqiang']['score'].values()
b
[80, 89, 75, 78]
b.sort()
b
[75, 78, 80, 89]


#6 外部刪除學生所在的城市屬性,不存在返回字串 beijing
studentinfo.pop('city','beijing')   #若存在鍵名'city'  返回其屬性  否則返回'beijing'
'beijing'


#第二部分
第二部分:


一.已經字串 s = "i,am,lilei",請用兩種辦法取出之間的“am”字元。
s="i,am,lilei"
s[2:4]              #字串切片
'am'
s.split(',')[1] 
'am'
更多關於split函式:http://blog.csdn.net/holyang_1013197377/article/details/49205065


二.在python中,如何修改字串?
s="i love php"
s.replace('php','python')
'i love python'


三.bool("2012" == 2012) 的結果是什麼。
bool("2012"==2012)
False




四.已知如下變數
________
a = "字串拼接1"
b = "字串拼接2"
________


1.請用四種以上的方式將a與b拼接成字串c。並指出每一種方法的優劣。
a="string1"
b="string2"
c1=a+b  #1不適合大量字串拼接


c2="%s%s" % (a,b) #2受順序限制


print 'format'
c3="{a}{b}" . format(a=a,b=b) #3 未受順序限制


c4="".join([a,b])  #4 只要申請一次記憶體
print c4


2.請計算出新拼接出來的字串長度,並取出其中的第七個字元。
lennum=len(c1.encode('utf-8'))
print c1.encode('utf-8')[6].encode('utf-8')


五.請閱讀string模組,並且,根據string模組的內建方法輸出如下幾題的答案。


1.包含0-9的數字。
print string.digits
0123456789


2.所有小寫字母。
print string.lowercase
abcdefghijklmnopqrstuvwxyz


3.所有標點符號。
print string.punctuation
!"#$%&'()*+,-./:;<=>

[email protected][\]^_`{|}~


4.所有大寫字母和小寫字母。
print string.ascii_uppercase
ABCDEFGHIJKLMNOPQRSTUVWXYZ
print string.lowercase
abcdefghijklmnopqrstuvwxyz


5.請使用你認為最好的辦法將{1}-{4}點中的字串拼接成一個字串。
string.digits+string.lowercase+string.uppercase+string.punctuation
'0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&\'()*+,-./:;<=>
[email protected]
[\\]^_`{|}~'


strinfo = []
strinfo.append(string.digits)
strinfo.append(string.lowercase)
strinfo.append(string.punctuation)
strinfo.append(string.ascii_lowercase)
strinfo.append(string.ascii_uppercase)
print "".join(strinfo)
print '\n'


strinfo = "%s%s%s%s%s" % (string.digits,string.lowercase,string.punctuation,string.ascii_lowercase,string.ascii_uppercase)
print strinfo


九.已知字串
________


a = "i,am,a,boy,in,china"
________


1.假設boy和china是隨時可能變換的,例boy可能改成girl或者gay,而china可能會改成別的國家,你會如何將上面的字串,變為可配置的。
exp1="i,am,a,%(sex)s,in,%(country)s" % {'sex':'boy','country':'China'}
print exp1
i,am,a,boy,in,China
exp2="i,am,a,{sex},in,{country}".format (sex='girl',country='USA')
print exp2
i,am,a,girl,in,USA


2.請使用2種辦法取出其間的字元"boy"和"china"。
print exp1[7:10]
boy
print exp1.split(',')[3]
boy
print exp1[-5:]
China
print exp1.split(',')[-1]
China


3.請找出第一個"i"出現的位置。
exp1.index('i')
0
exp1.find('i')
0


4.請找出"china"中的"i"字元在字串a中的位置。
print exp1.find('i',exp1.find('China'))
16
print exp1.rfind('i')       #找第二個'i'字元
16


5.請計算該字串一共有幾個逗號。
print exp1.count(',')
5


十.請將模組string的幫助文件儲存為一個檔案。
import sys
import string


f=open('string_help.log','w')
sys.stdout=f
help(string)
f.close()






 
#第三部分


1. 已知字串 a = "aAsmr3idd4bgs7Dlsf9eAF",要求如下
1.1 請將a字串的大寫改為小寫,小寫改為大寫。
print a.upper()
print a.lower()


1.2 請將a字串的數字取出,並輸出成一個新的字串。
print ''.join([s for s in a if s.isdigit()])
#解釋
[s      for s in a if s.isdigit()]
l=[]
for s in a:
    if s.isdigit():
        l.append(s)
print l


1.3 請統計a字串出現的每個字母的出現次數(忽略大小寫,a與A是同一個字母),並輸出成一個字典。 print a.count('a')
print dict([(x,a.count(x)) for x in set(a)])#set去重


1.4 請去除a字串多次出現的字母,僅留最先出現的一個。例 'abcabb',經過去除後,輸出 'abc'
a_list=list(a)
#print set(a_list)   #set 去重  無序  字典和集合不可排序
set_list=list(set(a_list)) #去重以後轉化為list
set_list.sort(key=a_list.index)#對去重後按照list原來排序
print ''.join(set_list)    #拼接成字串


1.5 請將a字串反轉並輸出。例:'abc'的反轉是'cba'
print a[::-1]


1.6 去除a字串內的數字後,請將該字串裡的單詞重新排序(a-z),並且重新輸出一個排序後的字元 串。(保留大小寫,a與A的順序關係為:A在a前面。例:AaBb)


1.要有小寫字母a-z的排序
2.大小寫相同的大寫在前面


l=sorted(a)
#print l  sort排序結果:字母數字分開排序
a_upper_list=[]     #宣告大寫list
a_lower_list=[]     #宣告小寫list
for x in l:         #遍歷排序過的list 將大小寫分別存在兩個list中
    if x.isupper():
        a_upper_list.append(x)
    elif x.islower():
        a_lower_list.append(x)
    else:
        pass


for y in a_upper_list: #遍歷大寫list 
    y_lower=y.lower()
    if y_lower in a_lower_list:
        a_lower_list.insert(a_lower_list.index(y_lower),y) #把大寫list中的字母插入到 原來這個位置是該字母小寫的位置 不覆蓋  順延 index定位
#print a_lower_list
print ''.join(a_lower_list)  #拼接成字串輸出




1.7 請判斷 'boy'裡出現的每一個字母,是否都出現在a字串裡。如果出現,則輸出True,否則,則輸 出False.
search='boy'
b=set(a)
b.update(search) #update特性  如果b中有的字元  search中的字元就插不進去
print len(set(a))==len(a)


1.8 要求如1.7,此時的單詞判斷,由'boy'改為四個,分別是 'boy','girl','bird','dirty',請判斷如上這4個字串裡的每個字母,是否都出現在a字串裡。
search=['boy','girl','bird','dirty']
b=set(a)
print b
for i in search:
    b.update(i)
print len(set(a))==len(a)


1.9 輸出a字串出現頻率最高的字母
#set 去重
l=([(x,a.count(x))for x in set(a)])
l.sort(key=lambda k:k[1],reverse=True) #兩次排序 :指定排序 第一個鍵  reverse從大向小排序
print l[0]
print l


2.一檔案的位元組數為 102324123499123,請計算該檔案按照kb與mb計算得到的大小。
size=102324123499123
print '%s kb' % (size>>10)
print '%s mb' % (size>>20)


3.已知  a =  [1,2,3,6,8,9,10,14,17],請將該list轉換為字串,例如 '123689101417'.
a =  [1,2,3,6,8,9,10,14,17]
print str(a)[1:-1].replace(', ','')

相關推薦

Python練習資料結構筆記

#coding=utf-8 #1. 已知字串 a = "aAsmr3idd4bgs7Dlsf9eAF",要求如下 # a = "aAsmr3idd4bgs7Dlsf9eAF" #1.1 請將a字串的大寫改為小寫,小寫改為大寫。 # a = "aAsmr3idd4bgs7Dl

python初級資料結構(list,tuple,dict)(補充筆記,初級)

List: 遞推式構造列表(List Comprehension),例: list = [x*2 for x in lm] 切片list[start: stop: step] sort 和 sorted: sort會改變list(in-place),而sorted返回排序好的列表(retu

資料結構筆記-棧與佇列python實現

概述 棧與佇列是程式設計中被廣泛應用的兩種重要的資料結構,都是在特定範圍的儲存單元記憶體儲資料,這些資料都可以被重新取出使用,與線性表相比,他們的插入和刪除受到更多的約束,固又稱限定性的線性表結構。他們是最簡單的快取結構,他們只支援資料項的儲存與訪問,不支援資料項之間的任何關係。因此,這兩種

Python 資料結構筆記(1):Python資料結構的效能

本系列部落格是閱讀《Problem Solving with Algorithms and Data Structures using Python》的筆記,原文連結 1、列表 List 索引和賦值是兩個非常常用的操作。這個兩個操作不論列表多長,它們的時間複雜

python演算法和資料結構筆記--漢諾塔問題超詳細遞迴過程圖解(堆疊資料結構

兩個盤子時:1移動到B,2移動到A,1移動到C N個盤子時:n-1移動到B,n移動到A,n-1移動到C 3個盤子為例子,如何將問題歸納為同類的子問題 我們的目標是的第一步先將1,2號盤子移動到B 當3號盤不存在,把B,C柱換個位置,問題轉化為將2個盤子藉助C移動到B子的問題。 要將1,2

python資料結構------列表

一、數字的處理函式 (一)int() 取整數部分,與正負號無關,舉例如下: 1 print(int(-3.6), int(-2.5), int(-1.4)) 2 print(int(3.6), int(2.5), int(1.4))執行結果如下:  -3 -2 -1 3 2 1 (二)/

python資料結構---字典

一、描述 由鍵值key-value組成的資料的集合 可變、無序的,key不可以重複 字典的鍵key要可hash(列表、字典、集合不可雜湊),不可變的資料結構是可雜湊的(字串、元組、物件、bytes) 字典的值value可以是任意的資料型別 二、字典的相關操作 1、訪問字典的值val

python資料結構---集合

一、描述 set翻譯為集合 set是可變的、無序的、不可重複的 set的元素要求可哈西(不可變的資料型別可哈西,可變的資料型別不可雜湊) set是無序的,因此不可以索引,也不可以修改 線型結構的查詢時間複雜度是O(n),隨著資料的增大而效率下降;set、dict內部使用hash值作為k

python資料結構的儲存方法

python中的一切都是物件,任何自定義的資料結構都可以寫成類 一、線性表 1.陣列實現 list, import array, np.array Python中list實現為動態陣列,而不是連結串列? 常用方法 append,extend, insert ,remove …

大話資料結構筆記_線性表

線性表的定義 :   簡而言之 : 0 個 或 多個元素(型別相同)的有限序列( 有順序 ) , 第一個元素無前驅 , 最後一個元素無後繼 , 其他元素 與有唯一的前驅 和 唯一的後繼  數學語言定義 : 若將線性表記為 ( a1 , a2 , ..... , ai - 1 , ai , ai+1 , ..

資料結構筆記---緒論

資料三要素 邏輯結構(線性,非線性) 儲存結構(物理結構) 資料運算 演算法的特性 有窮性,可行性,確定性,輸入,輸出 正確性,可讀性,健壯性(杭電17年考過的) 演算法度度量 演算

資料結構 筆記:程式演算法的選擇

如果兩個演算法都滿足功能性需求,那工程中最關心的其他特性是什麼?如何比較評判呢? ps:價效比(效率)是工程中最關注的演算法附加特性! 事後統計法 -比較不同演算法對同一組輸入資料的執行處理時間 -缺陷 ·為了獲得不同演算法的執行時間必須編寫相應程式 ·執行時間嚴重依賴硬體以

資料結構 筆記:程式的靈魂

資料結構靜態的描述了資料元素之間的掛你 高效的程式需要在資料結構的基礎上設計和選擇演算法 演算法是特定問題求解步驟的描述 在計算機中表現為指令的有限序列 算是獨立存在的一種解決問題的方法和思想,對於演算法而言,語言並不重要,重要的是思想。 演算法的特性: -輸入:演算法具有0

資料結構 筆記資料的藝術

資料的概念 -程式的操作物件,用於描述客觀事物 資料的特點 -可以輸入到計算機 -可以被計算機程式處理 資料中的新概念 -資料元素 ·組成資料的基本單位 -資料項 ·一個數據元素由若干資料項組成 -資料物件 ·性質相同的資料元素的結合 資料結構指資料物

資料結構 筆記:線性表的順序儲存結構

順序儲存的定義 線性表的順序儲存結構,指的是用一段地址連續的儲存單元一次儲存線性表中的資料元素。 順序儲存結構的元素插入操作 -判斷目標位置是否合法 -將目標位置之後的所有元素後移一個位置 -將新元素插入目標位置 -線性長度加1 順序儲存結構的元素插入示例 bool

資料結構 筆記:線性表的本質和操作

線性表(List)的表現形式 -零個或多個數據元素組成的集合 -資料元素在位置上是有序排列的 -資料元素的個數是有限的 -資料元素的型別必須相同 線性表(List)的抽象定義 線性表是具有相同型別的n( >= 0)個數據元素的有限序列 線性表(List)的性質

資料結構 筆記:演算法效率的度量

演算法的空間複雜度(space Complexity) -定義:S(n) = S(f(n)) ·n為演算法的問題規模 ·f(n)為空間使用函式,與n相關 推導時間複雜度的方法同樣適用於空間複雜度 空間與時間的策略 -多數情況下,演算法的時間複雜度更令人關注 -如果有必要,

資料結構 筆記:演算法的事件複雜度

判斷一個演算法的效率時,運算元量中的常數項和其他次要項常常可以忽略,只需要關注最高階項就能得出結論 演算法的複雜度 -時間複雜度 ·演算法執行後對時間需求量的定性描述 -空間複雜度 ·演算法執行後對空間需求量的定性描述 大O表示法 -演算法效率嚴重依賴於操作(Operat

資料結構 筆記:單鏈表的具體實現

LinkList設計要點 -類模板,通過頭結點訪問後繼結點 -定義內部結點型別Node,用於描述資料域和指標域 -實現線性表的關鍵操作(增,刪,查,等) template<typename T> class LinkList : public List<T>

資料結構 筆記:線性表的鏈式儲存結構

鏈式儲存的定義 為了表示每個資料元素與其直接後繼元素之間的邏輯關係;資料元素出了儲存本身的資訊外,還需要儲存直接後繼的資訊。 ps:在邏輯上,元素之間是相鄰的;在實體記憶體中元素之間並無相鄰關係。 鏈式儲存邏輯結構 -基礎鏈式儲存結構的線性表中,每個節點都包含資料域和指標域 ·資