資源簡介 1.3認識數據結構同步練習粵教版高中信息技術選修1學校:___________姓名:___________班級:___________考號:___________一、選擇題1.有如下python程序段:a=[[3,2],[2,3],[7,1],[1,0]]p=head=0while a[p][1]!=head: print(a[p][0],end="->") print(a[p][0])上述程序段要遍歷鏈表中的所有元素,劃線處應添加的代碼是()A.p+=1 B.a[p][1]+=1 C.p=a[p][1] D.a[p][1]=a[a[p][1]][1]2.線性結構中元素之間存在()關系,樹結構中元素之間存在()關系,圖形結構中元素之間存在()關系A.一對多 多對多 一對一 B.一對一 一對多 多對多C.多對多 一對一 一對多 D.一對一 多對一 多對多3.集合是一個可變容器,集合是無序的存儲結構,集合內的數據沒有先后關系,集合內的數據對象都是唯一的(不能重復),集合相當于是只有鍵沒有值得字典(鍵就是集合中的數據),集合內的元素是不可變的,下列說法正確的是()A.s={1,2,3,3,2,1},pring(s)執行后,輸出:{1,2,3}B.s={6,7,8,9},s.add(1)添加1后s={6,7,8,9,1}C.s={6,7,8,9},s.pop()執行后,s={6,7,8}D.s={3,4,5,6,7,8,9},s.remove(5)執行后,s={3,4,5,6,7,9}4.下列選項中不是圖結構的是( )。A.城市交通圖 B.電話網C.公司組織架構圖 D.互聯網5.下圖是物流配送線路圖,是樹結構,下列說法錯誤的是( )A.一級快件集散中心是樹的根結點B.二級公共配送中心進行地域分配,是一級快件集散中心根結點下的子樹C.共同配送點是二級公共配送中心的子樹D.共同配送點-社區便利店的樹的深度是36.有一入棧序列為“ABCD”,以下以“C”開頭的出棧序列中不正確的是( )A.CABD B.CBAD C.CBDA D.CDBA7.char 型數據通常占的字節數是( )A.1 B.2 C.3 D.48.下列關于數據結構的說法正確的是( )A.同一數據元素中各數據項的數據類型一定相同B.跳躍表是立足鏈表、借鑒二分查找的思想而形成的數據結構C.若入棧序列為 abcd,則出棧序列可能為 dbcaD.在瀏覽器中執行“后退”、“前進”操作的原理與隊列的特點相同9.隊列是一種有限制的( )結構。特點是數據元素只能在( )依次添加(稱為[ ]), 在( )依次刪除(稱為[ ])。A.線性;一端;進隊;另一端;出隊 B.線性;二端;進隊;二端;出隊C.隊列;一端;進隊;另一端;出隊 D.隊列;二端;進隊;二端;出隊10.在一個單向鏈表(如圖)中,若在尾指針tail所指節點之后插入新節點(r所指節點),則執行的操作是( )A.tail所指節點的data3值賦為r所指節點的data4值B.r所指節點的next值賦為tailC.r所指節點的next值賦為-lD.tail所指節點的next賦為r,r所指節點的next值賦為-l11.以下選項中不屬于線性數據結構的是( )。A.線性表 B.二叉樹 C.隊列 D.棧12.現有如下Python程序: List = [ "Happy", "new", "year!" ] s = List[ 1 ] d = s[ : -1 ]執行該程序后,d的值為()A."py" B."Happ" C."ew" D."ne"13.單車道胡同路邊停車,先進去的車只能從另一出口出來,閱讀程序代碼,下列說法錯誤的是( )listque=[] #定義列表listque存儲停車狀況max=8 #停車位最大容量while(True): print('\n1.停車') #\n表示換行打印 print('2. 開車離開') print('3. 查看停車庫') print('其他. 退出') x=input("輸入你的選擇:") #輸入選擇項 if x=='1': if len(listque) print("還有"+str(max-len(listque))+"個停車位。") listque.append(input("請輸入停車車牌:")) else: print("對不起,停車位已滿。") elif x=='2': if len(listque)==0: print("停車庫為空。") else: print(listque.pop(0)+"開出。") elif x=='3': print(listque) else: breakA.listque.append( )語句的作用是輸入停車車牌B.listque.pop(0)表示開車離開,刪除停車車牌C.此程序的數據結構方式是先進先出的棧D.while(True)語句表示永遠執行循環14.除了首元素沒有前趨元素,尾元素沒有后續元素外其他所有元素都只有一個前趨元素和后續元素,這種數據結構屬于( )A.樹結構 B.圖結構 C.線性結構 D.集合結構15.如圖所示的線性數據結構,下列說法錯誤的是( )A.正向編號,首元素索引號為0,向后走,索引號遞增B.反向編號,尾元素編號為-1,向首元素方向依次遞減C.線性數據結構只包括隊列與棧D.棧:后進先出,添加和刪除都在棧頂實現,隊列:先進先出,刪除在隊首,添加在隊尾16.某DataFrame對象df中包含“品牌”、“銷量”等手機月銷售量的信息,下列語句能輸出銷量大于1000的記錄的是( )①print(df.銷量>1000) ②print(df[df.銷量>1000]) ③print(df[df['銷量']>1000]) ④print(df.head(1000))A.①② B.①③ C.②③ D.②④17.圖中有關數據結構的概念中錯誤的是( )A.圖中有9個數據元素B.圖中每個數據元素有7個數據項C.數據項名稱為“姓名”的數據值類型是一樣的D.第4個數據元素第3個數據項的值為“86”18.線性結構是數據元素之間存在一種( )關系A.一對多 B.多對多 C.多對一 D.一對一二、操作題19.有個火車站的鐵軌調度方法如下:火車從一方1,2,3,4…依次進入,由于每個火車皮要去的目標車站不一樣,想讓車皮到站后能以最少的時間從火車上脫離,就讓最近到的車皮放在整列火車的最后。因此需要轉換站來達成這樣的目標,轉換站只能在同一個地方進與出。例如有四個車皮1,2,3,4進入,2,4,3,1到站,即2號車皮目的地最遠,4號車皮倒數第二遠,3號車皮倒數第三遠,1號車皮最近。為了能快速指揮車輛進出站轉換,小王編寫例如下程序a=[1,2,3,4,5,6] #待車皮進站b=[3,2,1,6,5,4] #出站順序stack=[0]*len(a)top=0stack[top]=a[0]s=str(a[0])+"進"ha=1;hb=0while :while top>-1 and _______ :s=s+str(stack[top])+"出"top-=1____if hatop+=1stack[top]=a[ha]s=s+str(a[ha])+"進"ha+=1elif ha==len(a) and top>-1 and _______ :print("無法調度")breakif top==-1:print(s)代碼顯示結果:1進2進3進3出2出1出4進5進6進6出5出4出(1)修改加框處代碼________(2)將劃線處代碼補充完整,使功能完善20.雙向鏈表也叫雙鏈表,也是鏈表的一中,它的每個數據都有兩個指針,分別指向前驅節點和后繼節點。在python中用二維列表來模擬雙向鏈表,用包含3個元素的列表來表示每一個節點,其中第一個元素存儲數據,后兩個元素分別存儲指向前驅節點和后繼節點的指針。若沒有前驅或后繼節點則對應的指針值為-1。下列程序產生了一些兩位隨機正整數,并依次存儲到雙向鏈表a中。現要求刪除其中值為偶數的節點,請完善代碼:import randoma=[]head=-1for i in range(8): node=[_______① ,head,-1] a.append(node) if head!=-1: a[head][2]=i head=_____②p=head=0while p!=-1: if a[p][0]%2==0: if _______③ : a[a[p][1]][2]=a[p][2] if a[p][2]!=-1: a[a[p][2]][1]=a[p][1] if head==p: head=_____④ p=a[p][2]試卷第1頁,共3頁試卷第1頁,共3頁參考答案:1.C2.B3.A4.C5.D6.A7.A8.B9.A10.D11.B12.D13.C14.C15.C16.C17.D18.D19. top>-1 and hb<=len(b) stack[top]==b[hb] hb+=1 stack[top]!=b[hb]20. random.randint(10,99) i a[p][1]!=-1 a[p][2]答案第1頁,共2頁答案第1頁,共2頁 展開更多...... 收起↑ 資源預覽 縮略圖、資源來源于二一教育資源庫