高中信息技術(shù) (高考復(fù)習(xí))專題七數(shù)據(jù)的組織(習(xí)題部分)_第1頁
高中信息技術(shù) (高考復(fù)習(xí))專題七數(shù)據(jù)的組織(習(xí)題部分)_第2頁
高中信息技術(shù) (高考復(fù)習(xí))專題七數(shù)據(jù)的組織(習(xí)題部分)_第3頁
高中信息技術(shù) (高考復(fù)習(xí))專題七數(shù)據(jù)的組織(習(xí)題部分)_第4頁
高中信息技術(shù) (高考復(fù)習(xí))專題七數(shù)據(jù)的組織(習(xí)題部分)_第5頁
已閱讀5頁,還剩141頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

考點一數(shù)組考點集訓(xùn)1.(2022浙北G2聯(lián)盟期中,15)有如下Python程序段:importrandoma=[]foriinrange(10):a.append(random.randint(1,100))i=0whilei<10:ifi==0:i=i+1elifa[i-1]<=a[i]:①

else:a[i],a[i-1]=a[i-1],a[i]②

print(a)執(zhí)行該程序段實現(xiàn)了隨機(jī)生成一個數(shù)組,并將其元素遞增輸出的功能。

劃線處的代碼應(yīng)該是

(

)A.①i+=1②i=1

B.①i-=1②i=1C.①i+=1②i+=1

D.①i-=1②i-=1答案

A

2.(2022紹興諸暨期中,3)使用列表生成的方式創(chuàng)建數(shù)組代碼如下:a=[i*i-1foriinrange(10)ifi%2==0]則數(shù)組元素a[3]的值為

(

)A.2B.8C.15D.35答案

D

3.(2022紹興諸暨期中,4)設(shè)有一個5×8的二維數(shù)組a,若按行優(yōu)先的順序存

儲數(shù)組元素,則元素a[3][5]前面元素的個數(shù)為

(

)A.21B.22C.29D.37答案

C

4.(2022紹興諸暨期中,13)有如下Python程序段:a=[[0foriinrange(3)]forjinrange(3)]foriinrange(3):forjinrange(3):a[i][j]=i*5+j+1foriinrange(1,3):forjinrange(2):print(a[j][i],end="")程序段執(zhí)行后,輸出的結(jié)果是

(

)A.2378B.712813

C.2738D.671112答案

C

5.(2022杭州期中,10)下述代碼段用于實現(xiàn)在數(shù)組a中將新數(shù)據(jù)k插入下標(biāo)

為j(0<=j<=8)的位置:a=[8,6,12,3,5,7,11,2,10,0]i=8whilei>=j:

(1)

(2)

(3)

橫線處的代碼由以下五部分中的三部分組成:①a[i+1]=k②a[i]=k③a[i+1]=a[i]④a[i]=a[i-1]⑤i=i-1下列選項中代碼選擇且順序正確的是

(

)A.③⑤②B.⑤③①C.③⑤①D.④⑤②答案

C

6.(2022嘉興期中,3)用Python程序段定義一個3行4列的二維數(shù)組(要求先

將各元素的值初始化為0,再將第2行第2個元素重新賦值為1),以下程序

段可行的是

(

)A.arr=[[0]*3forjinrange(4)]arr[2][2]=1B.arr=[[0]*4]*3arr[1][1]=1C.arr=[[0foriinrange(4)]forjinrange(3)]arr[1][1]=1D.arr=[[0,0,0,0]forjinrange(3)]arr[2][2]=1答案

C

考點二鏈表1.(2022諸暨海亮高中月考,9)有如下程序段:a=[[2,2,1],[8,0,4],[3,3,0],[6,-1,2],[8,1,-1]]ans=head=3p=a[head][2]whilep!=-1:ifa[ans][0]<a[p][0]:ans=pp=a[p][2]print(ans,a[ans][0],sep=",")則程序運行后,下列說法正確的是

(

)A.鏈表數(shù)據(jù)值依次為2->8->3->6->8B.程序輸出結(jié)果為4,8C.a[0][2]的值為1,雙向鏈表a的頭節(jié)點數(shù)據(jù)值為2D.a[1][1]的值為0,雙向鏈表a的尾節(jié)點數(shù)據(jù)值為8答案

D

2.(2022浙北G2聯(lián)盟期中,14)用兩個列表a、b分別保存單向鏈表中的數(shù)據(jù)

區(qū)域和指針區(qū)域。如圖所示,在節(jié)點x與節(jié)點y之間插入一個新節(jié)點,操作

步驟正確的是

(

)

①b[i]=b[y]②b[i]=b[x]③b[y]=i④b[x]=i⑤b[i]=x⑥b[i]=yA.③⑥B.④②C.①③D.②④答案

D

3.(2022紹興諸暨期中,7)在一個單向鏈表(如圖)中,若在尾指針tail所指節(jié)

點之后插入新節(jié)點(r所指節(jié)點),則執(zhí)行的操作是

(

)

A.tail所指節(jié)點的data3值賦為r所指節(jié)點的data4值B.r所指節(jié)點的next值賦為tailC.r所指節(jié)點的next值賦為-1D.tail所指節(jié)點的next值賦為r,r所指節(jié)點的next值賦為-1答案

D

4.(2022紹興諸暨期中,8)使用Python的二維列表來模擬單向鏈表,如下代

碼創(chuàng)建一個擁有4個節(jié)點的鏈表a。a=[["cat",1],["dog",2],["pig",-1],["rabbit",0]]head=3依次輸出各節(jié)點數(shù)據(jù)域的值,內(nèi)容為

(

)A."cat","dog","pig","rabbit"B."pig","rabbit","cat","dog"C."pig","dog","cat","rabbit"D."rabbit","cat","dog","pig"答案

D

5.(2022諸暨期末,8)某單向鏈表如圖所示,在data2與data3之間插入一個新

節(jié)點data4(p指向data2,r指向data4。列表data來記錄鏈表數(shù)據(jù)域,列表next

來記錄指針域),以下選項中正確的執(zhí)行步驟為

(

)

①next[p]=next[r]②next[p]=r③next[r]=p④next[r]=-1⑤next[r]=next[p]⑥next[p]=-1A.③⑥B.⑤②C.①④D.⑤②④答案

B

6.(2022衢州期末,8)在Python中可以使用列表模擬單向鏈表,如鏈表中的

節(jié)點p,a[p][0]存儲p節(jié)點的數(shù)據(jù),a[p][1]存儲p指向后繼節(jié)點的指針。若要

在p節(jié)點之后插入新的節(jié)點x(x作為p的新后繼節(jié)點),需要執(zhí)行的語句是

(

)A.a[p][1]=x;a[x][1]=a[p][1]B.a[x][1]=a[p][1];a[p][1]=xC.a[p][0]=x;a[x][0]=a[p][0]D.a[x][0]=a[p][0];a[p][0]=x答案

B

考點三隊列1.(2022杭州“六縣九?!逼谥?5)有A、B、C、D、E五個人依次進(jìn)入電

梯,結(jié)果警告超重了,需要出去一個人才能正常運行,按照數(shù)據(jù)結(jié)構(gòu)中棧和

隊列的思維,應(yīng)離開電梯的人分別是

(

)A.棧:A隊列:EB.棧:A隊列:AC.棧:E隊列:AD.棧:E隊列:E答案

C

2.若用一個規(guī)模為8的數(shù)組來實現(xiàn)隊列,已知當(dāng)前隊尾指針tail和隊首指針

head的值分別為5和0,進(jìn)行如下操作:①刪除兩個元素;②插入三個元素;③

刪除一個元素,操作完成后,指針head和tail的值分別為

(

)A.2和7B.3和7C.3和8D.4和8答案

C

3.用類實現(xiàn)的隊列操作如下:classQueue():def_init_(self):self.queue=[]defqueue_in(self,data):self.queue.insert(0,data)defqueue_out(self):iflen(self.queue):returnself.queue.pop()return"隊列已空"q=Queue()q.queue_in("apple")q.queue_in("orange")print(q.queue_out())q.queue_in("banana")q.queue_in("peach")print(q.queue_out())程序執(zhí)行后,隊列中的元素為

(

)A."apple","orange"B."orange","peach"C."apple","banana"D."banana","peach"答案

D

4.(2022“山水聯(lián)盟”開學(xué)考,11)有如下Python程序代碼:s="ABCDEF";head=0;tail=0que=[""]*100foriinrange(len(s)):ifi%2==0:que[tail]=s[i]else:que[tail]=s[len(s)-i]tail=tail+1foriinrange(len(s)):print(que[head],end="")head=head+1以上程序運行后,打印出列表的情況是:

(

)A.ABCDEFB.FEDCBAC.ACEFDBD.AFCDEB答案

D

5.(2023浙江1月選考,9,2分)有1個隊列,隊首到隊尾的元素依次為8,3,2,9,

5。約定:T操作是指隊列中1個元素出隊后再入隊,Q操作是指隊列中1個

元素出隊。則經(jīng)過TTTQTTQ系列操作后,隊列中隊首到隊尾的元素依次

(

)A.2,9,5B.2,5,8C.5,8,2D.8,3,2答案

B

6.小明在使用隊列解決問題的過程中,初始時(空隊列),隊列的隊首指針

head=0,隊尾指針tail=0,經(jīng)過一系列入隊、出隊操作后,head=4,tail=7。在

不考慮隊列溢出的情況下,小明接下來進(jìn)行的操作序列為出隊、入隊、

出隊、出隊、入隊、出隊,此時head和tail的值分別為

。答案8;9考點四棧1.(2022浙南名校聯(lián)盟期末,10)一個棧的入棧序列為“6、9、5、7、8、

3”,其出棧序列不可能是

(

)A.3、8、7、5、9、6B.7、5、9、8、6、3C.6、5、7、9、3、8D.5、9、6、3、7、8答案

D

2.(2022嘉興期中,2)有一入棧序列為“ABCD”,下面以“C”開頭的出棧

序列中不正確的是

(

)A.CABDB.CBADC.CBDAD.CDBA答案

A

3.(2022紹興諸暨期中,5)下列有關(guān)棧和隊列說法,正確的是

(

)A.棧的特點是先進(jìn)先出,隊列的特點是先進(jìn)后出B.棧只能在一端進(jìn)行插入,在另一端進(jìn)行刪除C.隊列限定僅能在一端進(jìn)行插入和刪除操作D.棧和隊列均為操作受限的線性表答案

D

4.(2022紹興諸暨期中,6)若用1表示進(jìn)棧操作,用0表示出棧操作,某元素的

進(jìn)棧順序是“q,w,e,r,t”,為了得到出棧序列“ewrtq”,則應(yīng)進(jìn)行的操作

序列為

(

)A.1101010100B.1110010100C.1110011000D.1110100100答案

B

5.(2022Z20名校聯(lián)盟,10)某算法利用“棧”思想進(jìn)行字符串處理,其步驟

如下:①創(chuàng)建長度為n的空棧,字符依次入棧;②當(dāng)達(dá)到棧滿狀態(tài)或數(shù)據(jù)全

部入棧時,字符依次出棧,按照出棧順序連接成新字符串:③若還有未處理

的字符,則重復(fù)步驟①②,直到全部字符處理完畢。實現(xiàn)該功能的Python

程序如下:s=input("請輸入字符串:")n=5;st=[""]*ntop=-1;i=0;m=""whilei<len(s):while

(1)

andi<len(s):(2)

st[top]=s[i]i+=1whiletop!=-1:m+=st[top](3)

print("密文:",m)加框處(1)(2)(3)的代碼由以下代碼組成:①top-=1②top+=1③top+1<n④top<n下列選項中代碼順序正確的是

(

)A.④②①B.③①②

C.③②①D.④①②答案

C

6.(2022諸暨海亮高中月考,10)有如下程序段:bt=["A","B","C","D",None,"E","F"]result=[]stack=[]i=0whilestackor(i<len(bt)andbt[i]isnotNone):ifi<len(bt)andbt[i]isnotNone:stack.append(i)i=2*i+1else:i=stack.pop()result.append(bt[i])i=2*i+2print("-".join(result))則程序運行后輸出的結(jié)果為

(

)A.A-B-D-C-E-FB.D-B-E-F-C-AC.D-B-A-E-C-FD.A-B-C-D-E-F答案

C

7.(2023浙江1月選考,12,2分)有如下Python程序段:importrandoma=['A','B','#','#','C','D','#']stk=[0]*len(a);top=-1foriinrange(len(a)):op=random.randint(0,1)#隨機(jī)生成0或1ifop==1anda[i]!='#':top+=1;stk[top]=a[i]a[i]='#'elifop==0andtop!=-1anda[i]=='#':a[i]=stk[top];top-=1執(zhí)行該程序段后,a的值不可能是

(

)A.['A','B','#','#','C','D','#']B.['#','#','#','#','#','#','#']C.['#','B','#','#','C','D','A']D.['#','#','A','B','C','D','#']答案

D

8.(2023浙江1月選考,15,9分)有2組器件共n個,要用一臺檢測設(shè)備檢測。

每個送檢器件的信息包含送達(dá)時間、檢測時長和優(yōu)先級。優(yōu)先級有m(1

<m<6)個等級,由高到低分別用0~m-1的整數(shù)表示。每個器件的送達(dá)時間

各不相同。已送達(dá)的器件按照各優(yōu)先級通道分別排隊,先到達(dá)先入隊。

設(shè)備每次檢測都從當(dāng)前各非空隊列中,選取優(yōu)先級最高的隊列的隊首器

件出隊進(jìn)行檢測。(同一時刻出現(xiàn)入隊和出隊時,先處理入隊。)編寫程序模擬檢測過程,先合并2組器件的數(shù)據(jù),然后計算所有器件的平

均等待時長,其中每個器件等待時長為其開始檢測的時間與送達(dá)時間的

時間差。(時間單位均為秒)請回答下列問題:(1)由題意可知,圖中器件A、B、C、D的檢測順序為A—C—D—B,A、C、D的等待時長分別為0、1、0,B的等待時長是

。

送達(dá)時間檢測時長優(yōu)先級A032B112C211D430

11321222(2)定義如下merge(lst1,lst2)函數(shù),參數(shù)lst1和lst2的每個元素由送達(dá)時

間、檢測時長和優(yōu)先級3項構(gòu)成,lst1和lst2均已按送達(dá)時間升序排列。函

數(shù)功能是將lst2中的元素合并到lst1中,并將lst1按送達(dá)時間升序排列,函

數(shù)返回lst1。defmerge(lst1,lst2):i=len(lst1)-1j=len(lst2)-1fortinrange(len(lst2)):lst1.append([0,0,0])#為lst1追加一個元素[0,0,0]k=len(lst1)-1whilej>=0:ifi>=0andlst1[i][0]>lst2[j][0]:lst1[k]=lst1[i]i-=1else:lst1[k]=lst2[j]j-=1k-=1returnlst1①調(diào)用merge(lst1,lst2)函數(shù),若lst1為[[0,3,2],[1,1,2],[12,2,2]],lst2為[[2,1,1],

[4,3,0],[11,3,2]],則while語句中循環(huán)體的執(zhí)行次數(shù)是

。②若函數(shù)中while語句的條件“j>=0”誤寫為“k>=0”,會導(dǎo)致某些情況下無法得到符合函數(shù)功能的結(jié)果。調(diào)用merge(lst1,lst2)函數(shù),下列4組數(shù)

據(jù)中能測試出這一問題的是

(單選,填字母)。A.lst1=[[0,3,2],[4,3,0]]lst2=[[1,1,2]]B.lst1=[[1,1,2]]lst2=[[0,3,2],[4,3,0]]C.lst1=[[1,1,2],[4,3,0]]lst2=[[0,3,2]]D.lst1=[[4,3,0]]lst2=[[0,3,2],[1,1,2]](3)實現(xiàn)模擬檢測過程并計算平均等待時長的部分Python程序如下,請在劃線處填入合適的代碼。defproc(data,m):n=len(data)queinfo=[]foriinrange(m):queinfo.append([-1,-1])#queinfo追加一個元素[-1,-1]foriinrange(n):data[i].append(-1)#data[i]追加一個元素-1curtime=0waitnum=0i=0①

whilei<norwaitnum>0:ifi<nanddata[i][0]<=curtime:k=data[i][2]ifqueinfo[k][0]==-1:queinfo[k][0]=ielse:②

data[p][3]=iqueinfo[k][1]=iwaitnum+=1i+=1elifwaitnum>0:k=0whilequeinfo[k][0]==-1:k+=1p=queinfo[k][0]total+=curtime-data[p][0]curtime+=data[p][1]③

waitnum-=1else:curtime=data[i][0]returntotal/n'''讀取2組器件的數(shù)據(jù),分別存入列表data1和data2中。2個列表的每個元素

包含3個數(shù)據(jù)項,分別對應(yīng)器件的送達(dá)時間、檢測時長和優(yōu)先級。data1和

data2中的數(shù)據(jù)已分別按送達(dá)時間升序排列,代碼略讀取優(yōu)先級等級個數(shù)存入m,代碼略'''data=merge(data1,data2)print(proc(data,m))答案

(1)6或6秒

(2)①4②A

(3)①total=0或其他等價表達(dá)式②p=

queinfo[k][1]或其他等價語句③queinfo[k][0]=data[p][3]或其他等價語

句考點五樹1.(2022Z20名校聯(lián)盟,11)若一棵二叉樹的中序遍歷序列為BIGDHAECF,

后序遍歷序列為IGHDBEFCA,則該二叉樹的前序遍歷序列為

(

)A.ABCDEFGHIB.ABDGHICEFC.ABDHGICEFD.ABDGIHCEF答案

D

2.(2022諸暨海亮高中月考,8)一棵二叉樹的前序遍歷結(jié)果為JFDECB-

HAIG,中序遍歷結(jié)果為DFEJAHBICG,則該二叉樹的深度為

(

)A.6B.5C.4D.3答案

B

3.(2022名校協(xié)作體,10)已知二叉樹T2的后序遍歷序列為G-D-H-E-B-I-F-

C-A,中序遍歷序列為D-G-B-E-H-A-C-I-F,則二叉樹T2的前序遍歷序列為

(

)A.A-B-D-G-E-H-C-I-FB.A-B-D-G-E-H-C-F-IC.A-B-D-G-E-H-F-C-ID.該二叉樹形態(tài)不唯一,無法確定答案

B

4.(2022紹興諸暨期中,9)已知一棵二叉樹的前序遍歷為ABDECFG,中序

遍歷為DBEAFCG,則該二叉樹的后序遍歷序列為

(

)A.DEBAFGCB.DEBFGCAC.DBEGFCAD.DBEFGCA答案

B

5.(2022諸暨期末,9)一棵度為3,深度為4的樹,最多有

個節(jié)點。

(

)A.31B.32C.40D.42答案

C

6.(2022諸暨期末,10)設(shè)一棵二叉樹的中序遍歷序列為becfad,后序遍歷序

列為efcbda,則二叉樹前序遍歷序列為

(

)A.abcdefB.bdaefcC.abcefdD.abcfed答案

C

7.(2023浙江1月選考,8,2分)下列二叉樹中,中序遍歷結(jié)果為BAEDFC的是

(

)A.

B.

C.

D.

答案

C

考點六大數(shù)據(jù)時代的數(shù)據(jù)的組織1.下面的系統(tǒng)中,屬于實時查詢系統(tǒng)的是

(

)A.某學(xué)校的學(xué)生學(xué)籍管理系統(tǒng)B.某航空公司的在線訂票系統(tǒng)C.某廣告公司的計算機(jī)輔助設(shè)計系統(tǒng)D.某印刷廠的計算機(jī)激光排版系統(tǒng)答案

B

2.大數(shù)據(jù)背景下的數(shù)據(jù)組織和存儲方式,通常采用的技術(shù)是

(

)A.傳統(tǒng)存儲系統(tǒng)B.云存儲系統(tǒng)C.分布式存儲系統(tǒng)D.集中式存儲系統(tǒng)答案

C

3.下列方法中,不能有效提升內(nèi)存數(shù)據(jù)庫的數(shù)據(jù)處理性能的是

(

)A.處理的數(shù)據(jù)保存在內(nèi)存中并直接操作B.增加對磁盤的數(shù)據(jù)讀寫C.對數(shù)據(jù)進(jìn)行分級,并在處理器緩存中存儲D.采用改進(jìn)后的數(shù)據(jù)結(jié)構(gòu)來組織、存儲數(shù)據(jù),如跳躍表、平衡樹答案

B

4.下列關(guān)于實時查詢數(shù)據(jù)系統(tǒng)中的數(shù)據(jù)結(jié)構(gòu)的說法,不正確的是

(

)A.在實時查詢系統(tǒng)中使用數(shù)組,時效性較差B.在鏈表中查找數(shù)據(jù)時效性較高,插入數(shù)據(jù)時效性較低C.跳躍表基于有序鏈表D.跳躍表通過跨區(qū)間、跳躍性的比較,避免了依次比較,提高了效率答案

B

5.有如下跳躍表:

若要在原鏈表中插入元素7,則數(shù)據(jù)元素需要比較的次數(shù)為

(

)A.1B.3C.4D.5答案

B

6.下列關(guān)于Hadoop的說法,不正確的是

(

)A.Hadoop是一種超大規(guī)模,高可靠性,高可擴(kuò)展性的數(shù)據(jù)庫B.Hadoop是Google云計算技術(shù)的開源實現(xiàn)C.使用Hadoop可以在POI數(shù)據(jù)的處理中獲得更方便的體驗和更低廉的成

本D.Hadoop可以對海量地理信息進(jìn)行處理和計算答案

A

專題集訓(xùn)1.(2022嘉興期中,1)以下數(shù)據(jù)結(jié)構(gòu)中,不屬于線形結(jié)構(gòu)的是

(

)A.數(shù)組B.鏈表C.隊列D.樹答案

D

2.(2023屆十校聯(lián)盟10月聯(lián)考,10)要解決不同的實際問題,需要根據(jù)實際需

要選擇不同的數(shù)據(jù)結(jié)構(gòu)來組織數(shù)據(jù)。下列說法正確的是

(

)A.一個有底的玻璃筒只能在開放的一端放取乒乓球,符合隊列的特性B.火車站或者飛機(jī)場會在電子屏上滾動顯示最近的班次信息,可以采用

鏈表組織數(shù)據(jù)C.計算機(jī)操作系統(tǒng)中文件夾的管理,通常借助棧來組織、保存和處理數(shù)

據(jù)D.用戶單擊瀏覽器的“后退”按鈕可以回到剛才瀏覽過的網(wǎng)頁,通常采

用樹結(jié)構(gòu)進(jìn)行網(wǎng)頁數(shù)據(jù)的組織答案

B

3.(2023屆嘉興基測,9)下列關(guān)于數(shù)據(jù)結(jié)構(gòu)的說法,正確的是

(

)A.常見的線性關(guān)系數(shù)據(jù)結(jié)構(gòu)有數(shù)組、隊列、棧、樹和圖等B.數(shù)組和鏈表在操作時,其存儲空間固定不變C.鏈表在訪問、插入和刪除元素時,算法效率比數(shù)組高D.棧是一種先進(jìn)后出的線性表結(jié)構(gòu)答案

D

4.(2023屆浙江名校聯(lián)盟10月聯(lián)考,9)一個棧的輸入序列為“12345”,輸出

的第一個元素為“4”,則輸出的第三個元素不可能是(

)A.1B.2C.3D.5答案

A

5.(2023屆浙江學(xué)軍中學(xué)10月月考,2)新型冠狀病毒肺炎(CoronaVirus

Disease2019,COVID-19),簡稱“新冠肺炎”,是一種傳染性極強(qiáng)的流行

病。一旦發(fā)現(xiàn)“新冠肺炎”確診病例或無癥狀感染者,就要對其進(jìn)行流

行病學(xué)調(diào)查(簡稱“流調(diào)”)。調(diào)查期間,充分利用信息化和公安、工信大

數(shù)據(jù)手段,通過病例和無癥狀感染者居住(工作)環(huán)境等現(xiàn)場調(diào)查和定點醫(yī)

院駐點調(diào)查相結(jié)合,查明病例和無癥狀感染者活動軌跡,規(guī)范開展個案調(diào)

查、密切接觸者追蹤和聚集性疫情調(diào)查。在“新冠肺炎”流調(diào)中,要表示某個患者和其下所有患者的傳染關(guān)系,比

較適合的數(shù)據(jù)組織形式是

(

)A.數(shù)組B.隊列C.棧D.樹答案

D

6.(2023屆強(qiáng)基聯(lián)盟10月統(tǒng)測,9)某二叉樹的后序遍歷序列為F—?—?—C

—A—D,中序遍歷序列為F—B—D—E—A—C,則其前序遍歷序列為

(

)A.D—B—A—F—E—CB.D—B—F—A—E—CC.D—E—F—A—B—CD.D—E—A—F—B—C答案

B

7.(2023屆浙南名校聯(lián)盟10月聯(lián)考,11)如果將數(shù)學(xué)表達(dá)式中的運算數(shù)和運

算符視為二叉樹的每個節(jié)點,那么我們可以構(gòu)造出各種表達(dá)式二叉樹,下

圖是一棵表達(dá)式二叉樹。如果對該二叉樹進(jìn)行中序遍歷,并加上括號后,

就可以得到中綴表達(dá)式:(9-4/2)*5+3。如果對該二叉樹實行前序遍歷,則

可以得到的表達(dá)式為

(

)

A.+*-9/4253B.+*-/42953C.942/-*53+D.942/-5*3+答案

A

8.(2023屆百師聯(lián)盟聯(lián)考,3)公交車上有時候會出現(xiàn)人太多無法擠到后門

下車而從前門下車的情況,因此若一個序列在有3個或以下元素時按隊列

方式離開序列,但在(3個以上)元素時按棧方式離開序列,則對于依次進(jìn)入

序列的x1,x2,x3,x4,x5,x6,離開序列的順序可能為

(

)A.x1,x4,x6,x2,x3,x5B.x4,x1,x6,x2,x3,x5C.x1,x2,x3,x6,x4,x5D.x6,x5,x4,x3,x1,x2答案

B

9.(2023屆浙江學(xué)軍中學(xué)10月月考,7)有如下Python程序段:q,head,tail,ans=[""]*100,0,0,""foriinrange(len(s)):q[tail]=s[i]tail+=1whilehead<tail:ans=ans+q[head]head+=1ifhead<tail:q[tail]=q[head]tail+=1head+=1print(ans)當(dāng)s的值為字符串"QUEUE"時,程序輸出的結(jié)果為

(

)A.QUEUEB.EUEUQC.QEUUED.QEEUU答案

D

10.(2023屆麗湖衢11月質(zhì)量檢測,12)某公交路線的站點名稱、經(jīng)度、緯

度和下一個站點序號(經(jīng)緯度已轉(zhuǎn)換為平面坐標(biāo)數(shù)據(jù))存儲在數(shù)組a中,現(xiàn)

計算相鄰兩個站點距離的總和。importmatha=[["廊橋",3,2,3],["徐岙",6,11,2],["北門",13,8,-1],["上通",3,7,1]]head=0;s=0p=a[head][3]while

(1)

:s+=math.sqrt((a[p][1]-a[head][1])**2+(a[p][2]-a[head][2])**2)

(2)

(3)

print(s)上述程序段劃線處可選的代碼為:①a[head][3]!=-1②head=p③p=a[head][3]④head!=-1則(1)、(2)、(3)處的代碼依次為

(

)A.①②③B.④②③C.④③②D.①③②答案A

11.(2023屆浙南名校聯(lián)盟10月聯(lián)考,12)有如下Python程序段:deftravel(lnk,head):p=heads=""while①

:s+=str(lnk[p][0])+"->"p=lnk[p][1]s+=str(lnk[p][0])print(s)user=[[7,2],[15,0],[5,3],[1,-1]]head=1num=int(input("請輸入一個整數(shù):").strip())p=headifhead==-1ornum>user[p][0]:user.append([num,head])head=len(user)-1else:whileuser[p][1]!=-1and②

:p=user[p][1]user.append([num,user[p][1]])③

travel(user,head)若要實現(xiàn)下圖所示的功能,則①②③處應(yīng)填入的語句依次為

(

)

A.①lnk[p][1]!=-1②num<=user[p][0]③user[p][1]=len(user)-1B.①lnk[p][1]!=-1②num<=user[user[p][1]][0]③user[p][1]=len(user)-1C.①p!=-1②num<=user[user[p][1]][0]③user[p][1]=len(user)-1D.①p!=-1②num<=user[p][0]③user[p][1]=len(user)答案B

12.(2022紹興魯迅中學(xué)期中,12)有如下Python程序段:a=[[3,2],[2,3],[7,1],[1,0]]p=head=0whilea[p][1]!=head:print(a[p][0],end="->")

print(a[p][0])上述程序段要遍歷鏈表中的所有元素,劃線處應(yīng)添加的代碼是

(

)A.p+=1

B.a[p][1]+=1C.p=a[p][1]

D.a[p][1]=a[a[p][1]][1]答案

C

13.(2022浙江開學(xué)考,9)有如圖所示的二叉樹,關(guān)于此二叉樹的說法中,描

述正確的是

(

)

A.該二叉樹的前序遍歷為ABDGJCEFHIB.該樹中共有3個葉子節(jié)點C.若有前序遍歷和后序遍歷可以推導(dǎo)出唯一的二叉樹D.該樹的深度是4答案

A

14.(2022浙江開學(xué)考,10)已知一個鏈表a,其a[i][0]存儲索引i下節(jié)點的數(shù)據(jù)

區(qū)域,a[i][1]存儲索引i下節(jié)點的指針區(qū)域。對于當(dāng)前鏈表中的一個節(jié)點p

(索引為p),若要刪除p的后一個節(jié)點q(q=a[p][1]),則應(yīng)執(zhí)行語句

(

)A.a[p]=a[q]B.a[p][1]=a[q][1]C.a[p]=a[a[q][1]]D.a[p]=a[q];a[p][1]=a[q][1]答案

B

15.(2022杭州期中,12)在Python中用列表模擬鏈表結(jié)構(gòu),某程序段如下:a=[['H',1],['a',2],['n',3],['g',4],['2',5],['0',6],['2',7],['2',0]]p,head=3,3;q,c=-1,0;m,n=3,0whilen<4:c=c+1ifc==m:n=n+1;c=0ifp==head:head=a[p][1]a[q][1]=headp=a[p][1]else:a[q][1]=a[p][1]p=a[p][1]else:q=pp=a[p][1]#從頭節(jié)點開始遍歷鏈表a邏輯順序的所有節(jié)點,并依次輸出節(jié)點的數(shù)據(jù),

代碼略該程序段執(zhí)行后的輸出結(jié)果為

(

)A.ng02B.g02nC.2an2D.22an答案

D

16.(2022七彩陽光返校考,12)有如下Python程序段:s=input('請輸入一串小寫字母')head=0;tail=0;top=-1s1=[""]*((len(s)+1)//2)s2=[""]*(len(s)//2)foriinrange(len(s)):ifi%2==0:s1[tail]=s[i]tail+=1else:top+=1s2[top]=s[i]x=""whilehead<tailandtop>-1:x=s1[head]+xhead+=1x=x+s2[top]top-=1print(x)執(zhí)行該程序段,輸入字符串“abcdefg”,則輸出的結(jié)果是

(

)A.acegbdfB.acegfdb

C.gecafdbD.ecafdb答案

D

17.(2022諸暨海亮高中月考,18)有個火車站的鐵軌調(diào)度方法如下:火車從

一方1,2,3,4…依次進(jìn)入,由于每個火車皮要去的目標(biāo)車站不一樣,想讓車

皮到站后能以最少的時間從火車上脫離,就讓最近到的車皮放在整列火

車的最后。因此需要轉(zhuǎn)換站來達(dá)成這樣的目標(biāo),轉(zhuǎn)換站只能在同一個地

方進(jìn)與出。例如有四個車皮1,2,3,4進(jìn)入,2,4,3,1到站,即2號車皮目的地最

遠(yuǎn),4號車皮倒數(shù)第二遠(yuǎn),3號車皮倒數(shù)第三遠(yuǎn),1號車皮最近。為了能快速指揮車輛進(jìn)出站轉(zhuǎn)換,小王編寫了如下程序:a=[1,2,3,4,5,6]#待進(jìn)站車皮b=[3,2,1,6,5,4]#出站順序stack=[0]*len(a)top=0stack[top]=a[0]s=str(a[0])+"進(jìn)"ha=1;hb=0whiletop>-1andhb<len(b):whiletop>-1and①

:s=s+str(stack[top])+"出"top-=1②

ifha<len(a):top+=1stack[top]=a[ha]s=s+str(a[ha])+"進(jìn)"ha+=1elifha==len(a)andtop>-1and③

:print("無法調(diào)度")breakiftop==-1:print(s)代碼顯示結(jié)果:1進(jìn)2進(jìn)3進(jìn)3出2出1出4進(jìn)5進(jìn)6進(jìn)6出5出4出。(1)修改加框處代碼

。(2)將劃線處代碼補(bǔ)充完整,使功能完善。答案

(1)top>-1andhb<=len(b)

(2)①stack[top]==b[hb]②hb+=1③stack[top]!=b[hb]

18.(2022浙北G2聯(lián)盟期中,16)小明來到探險島尋寶,島上共有N個寶藏(標(biāo)

號為0至N-1)。每個寶藏有一條路連接下一個寶藏,寶藏號和下一個寶藏

號使用鏈表存儲。小明想知道,從其中一個寶藏出發(fā),最多可以找到多少

個寶藏。例如,共有5個寶藏,輸入“1,3,4,4,1,”表示0~4各寶藏點連接的下一個寶

藏依次是:1,3,4,4,1(如下表)。則最多可以找到4個寶藏,路徑為:0號→1號

→3號→4號。寶藏號01234下一個寶藏號13441程序代碼如下:s=input("請輸入寶藏連接的情況:")t=0;c="";a=[]foriins:ifi!=",":c+=ielse:a.append([t,int(c)])c=""①

max=0forheadinrange(0,t):#枚舉尋找寶藏起點g=[]p=headwhilepnoting:g.append(p)②

iflen(g)>max:③

print(max)(1)若有4個寶藏,且每個寶藏的連接情況為:2,0,0,1,那么小明最多可以挖

到的寶藏數(shù)是

。(2)請將代碼補(bǔ)充完整。答案

(1)4

(2)①t+=1②p=a[p][1]③max=len(g)19.(2022杭嘉湖金月考,15)山頂上有10個圓形排列的洞,一只狐貍和一只

兔子各住一個洞。狐貍總想吃掉兔子。一天兔子對狐貍說:“你想吃我

有一個條件,先把洞從1~10編上號,你先到1號洞找我;第二次隔1個洞(即3

號洞)找我,第三次隔2個洞(即6號洞)找我,依此類推,次數(shù)不限。但狐貍從

早到晚進(jìn)進(jìn)出出了1000次,仍沒有找到兔子。請問兔子可能躲在哪個洞

里?實現(xiàn)上述功能的Python程序如下,請在劃線處填入合適的代碼。hole=[]n=10m=1000#構(gòu)造一個循環(huán)鏈表,并給n個洞編號,設(shè)置洞的初始標(biāo)志為0#鏈表的節(jié)點樣式為:[洞的標(biāo)志,洞的編號]foriinrange(n-1):hole.append([0,i+1])

(1)#狐貍開始找兔子,將進(jìn)入過的洞標(biāo)志改為1,尋找m次結(jié)束head=0k=headhole[0][0]=1foriinrange(1,m):forjinrange(1,i+2):

(2)

hole[k][0]=1#輸出標(biāo)志仍為0的洞,即兔子可能藏身地點foriinrange(len(hole)):ifhole[i][0]==0:print("兔子可能躲在第"+

(3)

+"號洞")答案

(1)hole.append([0,0])(2)k=hole[k][1]

(3)str(i+1)20.(2022紹興魯迅中學(xué)期中,15)編程輸出一個考場30個考生的座位號,座

位號要求S型排列如圖。

說明:f'{a[i][j]:2}'可以將i行j列的數(shù)格式化為2個字符的格式,如果是一位

數(shù),在這一位數(shù)前加空格。實現(xiàn)上述功能的Python程序如下,請在劃線處填入合適的代碼。defsxing(n,m):#考場座位n行,m列a=[[①

]forjinrange(n)]s=1foriinrange(m):ifi%2==0:forjinrange(n):②

s+=1else:forjinrange(③

):a[j][i]=ss+=1returnan,m=6,5a=sxing(n,m)foriinrange(n):#輸出座位示意圖st=""forjinrange(m):st=st+""+f'{a[i][j]:2}'print(st)答案①0foriinrange(m)②a[j][i]=s③n-1,-1,-121.(2022山水聯(lián)盟開學(xué)考,15)小趙同學(xué)在某游戲平臺中獲得虛擬的食

物、裝備、材料等物品,它們分別有不同的價值,現(xiàn)游戲平臺有兌換機(jī)制,

即可用多個不同物品換取一個等值的物品(每個物品只能取一樣),下表為

小趙同學(xué)已獲得的物品。序號物品名稱數(shù)量單價0靈丹211大力丸122止血草353忘魂花174雄黃195靈山仙芝5106梅花鏢1157止血草120目標(biāo)置換物品的價值:35。已獲得物品價值依次是:1,2,5,7,9,10,15,20。依次拿取物品序號的方案有:取序號為[0,1,2,3,7]的物品;取序號為[0,1,3,5,6]的物品;取序號為[0,2,4,7]的物品;取序號為[0,4,5,6]的物品;取序號為[2,5,7]的物品;取序號為[6,7]的物品。如要換取游戲中的物品“破天錘”,需要35個金幣,有多種置換的方式,為

方便計算以節(jié)省時間,小趙同學(xué)編寫了如下程序,運行界面和代碼如下,請在劃線處填入合適的代碼。defexchange(t,pricelist):n=len(pricelist)stack=[]i=0num=0while①

:whilet>0andi<n:ift>=int(pricelist[i]):stack.append(i)②

i+=1ift==0:print("取序號為",stack,"的物品")num+=1if③

;i=stack.pop()t+=int(pricelist[i])④

ifnum==0:print("無方案")m=int(input("目標(biāo)置換物品的價值:"))price=input("已獲得物品價值依次是:")p=price.split(",")#將輸入的內(nèi)容以“,”作分隔,并轉(zhuǎn)換為列表print("依次拿取物品序號的方案有:")exchange(m,p)答案①stackori<n或len(stack)!=0ori<n或等價答案②t=t-int(pricelist

[i])或等價答案③len(stack)!=0或等價答案④i+=122.(2022紹興魯迅中學(xué)期中,16)約瑟夫環(huán)問題。有n個人圍成圈,從第1個

人開始報數(shù),報到m時該人出圈,依次循環(huán),直到圈里只剩下1人為止。下

面程序?qū)崿F(xiàn)了上述功能,請將空白處的代碼補(bǔ)充完整。

list=[]n=int(input("請輸入?yún)⑴c人數(shù)n:"))m=int(input("請輸入報數(shù)值m:"))foriinrange(n-1):list.append([i+1,i+1])①

head=0long=nk=headi=1whilelong>1:i+=1ifi==m:t=list[k][1]②

ift==head:head=list[k][1]i=1long-=1k=list[k][1]print(③

)答案①list.append([n,0])②list[k][1]=list[t][1]③list[head][0]或list[k]

[0]23.(2022名校協(xié)作體考試,15)某校軍訓(xùn),需要按照身高由低到高排成n行5

列的方陣。某班學(xué)生按照身高(100≤身高<199)由低到高編寫編號并將

相關(guān)信息存在圖1所示的“stu.txt”文件中。根據(jù)教官提出的排方陣要

求,排成如圖2所示的方陣,方陣各點顯示學(xué)生編號。

現(xiàn)有延遲報道學(xué)生歸隊,歸隊學(xué)生編號延續(xù)該班現(xiàn)有編號依次往后,編寫

程序完成下列任務(wù):輸入學(xué)生身高,輸出新的方陣布局圖。例如:輸入學(xué)生

身高為168,新的方陣布局圖如圖3所示,學(xué)生在方陣的位置:3,4。(1)若插入學(xué)生身高為160cm,根據(jù)圖1及范例,該學(xué)生應(yīng)該在圖2方陣中的

列。(2)為實現(xiàn)上述功能,請?zhí)顚憚澗€處代碼。f=open("stu.txt","r")a=[]line=f.readline().split()i=1whileline!=[]:a.append([line[0],line[1],i])i+=1line=f.readline().split()n=len(a)-1a[n][2]=-1sg=input("請輸入插入的學(xué)生身高(cm):")xh=str(len(a))head=1p=head;q=headwhile

:p=qq=a[q][2]ifq==head:②

head=len(a)-1else:a.append([xh,sg,a[p][2]])a[p][2]=len(a)-1p=headm=1whilep!=-1:ifm!=5:print(a[p][0],end="")m+=1else:print(a[p][0])m=1③

答案

(1)1,5

(2)①a[q][1]<sgandq!=-1或int(a[q][1])<int(sg)andq!=-1

②a.append([xh,sg,head])或a.append([xh,sg,p])或a.append([xh,sg,q])或

等價答案③p=a[p][2]24.(2022A9協(xié)作體返???15)學(xué)校舉辦了“語文作文現(xiàn)場賽”,參賽同學(xué)

成績存儲在文本文件“gra.txt”中,如圖a所示(每一行記錄一位同學(xué)的姓

名和成績,以“:”分隔)。陳老師利用Python程序?qū)ψ魑某煽冞M(jìn)行處理,統(tǒng)

計出各個分?jǐn)?shù)等級的人數(shù),并輸出結(jié)果。程序運行界面如圖b所示。

實現(xiàn)上述功能的Python程序如下,請在劃線處填入合適的代碼。defcla(x):#判斷成績等級ifx>=50:return"A"elifx>=40:return"B"elifx>=30:return"C"else:return"D"gra=[]#存儲各個整數(shù)型成績num=[0]*4f=open("gra.txt")lines=f.readlines()#將f對象的數(shù)據(jù)按行存入列表lines中f.close()#關(guān)閉文件forlineinlines:#循環(huán)讀取列表lines中的每個元素,并做相應(yīng)處理a=line.strip().split(":")#去除結(jié)尾的換行符并以冒號為分隔符進(jìn)行分

隔返回列表gra.append(①

)foriinrange(len(gra)):#統(tǒng)計各等級人數(shù)t=②

num[ord(t)-65]+=1print("成績分布如下:")foriinrange(len(num)):#輸出統(tǒng)計結(jié)果print(chr(i+65)+"等級有"+③

+"人")答案①int(a[1])或int(a[-1])②cla(gra[i])③str(num[i])25.(2022七彩陽光開學(xué)考,15)食堂推出的三款特色菜,分別用A、B、C表

示,想用投票方式統(tǒng)計出三款菜的受歡迎程度。每位投票者需要將三款

菜按喜愛程度從高到低進(jìn)行排列,并投出一票。如圖a所示,小明負(fù)責(zé)將文

件“投票.txt”中的選票進(jìn)行統(tǒng)計。第1張選票信息為“A,C,B”,表示投

票者認(rèn)為A菜優(yōu)于C菜,C菜優(yōu)于B菜,即A菜也優(yōu)于B菜。他得到如圖b所

示的投票情況。對選票進(jìn)行統(tǒng)計,得到三款菜的偏好,如圖c所示,數(shù)據(jù)第

一行中的“6”說明有6張選票顯示A菜優(yōu)于B菜,“10”說明有10張選票

顯示A菜優(yōu)于C菜,以此類推……將所有投票進(jìn)行統(tǒng)計,再將三款菜的得票

數(shù)進(jìn)行求和,按得票數(shù)從高到低排列,分別為A菜16票,B菜11票,C菜12票,

即可得到每款菜的受歡迎程度。

請回答下列問題:(1)若有四款菜,投票情況如圖d所示,則第2受歡迎的菜為

(填字

母)菜。(2)加框處代碼有錯誤,請改正。(3)實現(xiàn)上述功能的Python程序如下,請在劃線①②③處填入合適的代

碼。f=open('投票.txt')a=[]r=f.readline().strip()#從文件中讀取一行,并把末尾的'\n'刪掉whiler:#當(dāng)r非空(從文件讀取到了數(shù)據(jù))a=r.split(',')r=f.readline().strip()f.close()n=len(a[0])p=[0]*n**2foriina:forjinrange(n-1):x1=ord(i[j])-65forkinrange(①

):x2=ord(i[k])-65②

b=[['',0]foriinrange(n)]foriinrange(n):b[i][0]=chr(i+65)forjinrange(n):b[i][1]+=p[i*n+j]i=1whilei<n:x=b[i]j=i-1while③

b[j+1]=b[j]j-=1b[j+1]=xi+=1foriinrange(n):print('第',i+1,'受歡迎的菜為',b[i][0],',得票為',b[i][1],'票')答案

(1)D

(2)a.append(r.split(','))

(3)①j+1,n②p[x1*n+x2]+=1

③j>=0andx[1]>b[j][1]或j>=0andx[1]>=b[j][1]26.(2022A9協(xié)作體返校考,16)字符串分段。輸入一串僅由小寫字母組成

的字符串s,將這個字符串劃分為盡可能多的小片段,要求同一個字母只出

現(xiàn)在其中的一個片段中,并按照分段順序逐行輸出分段結(jié)果。程序運行

界面如下:請輸入一串僅包含小寫字母的字符串:asdasmhjhhasdasmhjhh(1)實現(xiàn)上述功能的Python程序如下,請在劃線處填入合適的代碼。s=input("請輸入一串僅包含小寫字母的字符串:")c=0p=[-1]*52#數(shù)組p用來記錄各個小寫字母出現(xiàn)的起始位置和結(jié)束位置#a[0]記錄a出現(xiàn)的起始位置,a[1]記錄a出現(xiàn)的結(jié)束位置,依此類推foriinrange(0,len(s)):#記錄各字符第一次和最后一次出現(xiàn)的位置a=①

ifp[2*a]==-1:p[2*a]=ielse:p[2*a+1]=iforiinrange(0,26):ifp[2*i]>p[2*i+1]:p[2*i+1]=p[2*i]#只出現(xiàn)一次的字符,起始位置就是結(jié)束位置ifp[2*i]!=-1:c+=1foriinrange(0,c):#將字符位置按照出現(xiàn)的起始位置升序排序forjinrange(25,i,-1):ifp[2*j]>-1:ifp[2*(j-1)]>p[2*j]or②

:p[2*(j-1)],p[2*j]=p[2*j],p[2*(j-1)]p[2*(j-1)+1],p[2*j+1]=p[2*j+1],p[2*(j-1)+1]t1,t2=p[0],p[1]#字符串分段foriinrange(1,c):ifp[2*i]<t2andp[2*i+1]>t2:③

elifp[2*i]>t2:print(s[t1:t2+1])t1,t2=p[2*i],p[2*i+1]print(s[t1:t2+1])(2)運行程序后,若輸入的字符串s為"hshjhqueeqabaa",輸出的結(jié)果一共

行,其中第二行顯示結(jié)果為

。答案

(1)①ord(s[i])-97或ord(s[i])-ord("a")②p[2*(j-1)]==-1③t2=p[2*i+1](2)3;queeq27.(2022Z20名校聯(lián)盟聯(lián)考,15)校學(xué)生會要從兩個候選人A和B中選舉一

個會長,每個候選人都有自己的支持方?,F(xiàn)在以輪為過程來進(jìn)行選舉,在

每一輪選舉中,當(dāng)前成員可以禁止另一位成員的選舉權(quán),即讓另一位成員

在這一輪和隨后的幾輪中都喪失選舉權(quán)。在選舉過程中,一旦有選舉權(quán)的成員都來自同一個陣營,則該陣營勝利。字母A和B分別代表兩位候選人,輸入一個字符串代表每個成員的陣營,例

如輸入“ABB”,則輸出結(jié)果為B,即候選人B為會長。說明:第一輪中,第一個成員(A)可以讓第二個成員(B)失去選舉權(quán),第二個

成員(B)會被跳過,因為他的選舉權(quán)被禁止,第三個成員(B)可以讓第一個

成員(A)失去選舉權(quán),因此在第二輪只剩下第三個成員(B)擁有選舉權(quán),則

輸出結(jié)果為B,即候選人B為會長。(1)若輸入“ABABB”,則會長為

。(2)實現(xiàn)上述功能的Python程序如下,請在劃線處填入合適的代碼。s=input("請輸入投票字符串:")queA=[""]*100;queB=[""]*100headA=headB=0tailA=tailB=0n=len(s)foriinrange(n):if①

:queA[tailA]=itailA+=1else:queB[tailB]=itailB+=1while②

:ifqueA[headA]<queB[headB]:queA[tailA]=queA[headA]+ntailA+=1else:queB[tailB]=queB[headB]+ntailB+=1headA+=1;headB+=1if③

:print("B")else:print("A")答案

(1)A

(2)①s[i]=="A"②headA!=tailAandheadB!=tailB③hea-

dA==tailA28.(2022Z20名校聯(lián)盟,16)“最小波動值”是經(jīng)濟(jì)管理學(xué)上的一種衡量

營業(yè)情況是否穩(wěn)定的概念,當(dāng)“最小波動值”越大時,就說明營業(yè)情況越

不穩(wěn)定。經(jīng)濟(jì)管理學(xué)上對“最小波動值”的定義:某一天的“最小波動值”=min{|該天以前某一天的營業(yè)額-該天營業(yè)額

|},第一天的“最小波動值”為第一天的營業(yè)額。若要分析某個店鋪的營業(yè)情況是否穩(wěn)定,只需要把一段時間內(nèi)每一天的

“最小波動值”加起來即可?,F(xiàn)根據(jù)某個店鋪一段時間內(nèi)每一天的營

業(yè)額(說明:支出為0表示該天不營業(yè)),設(shè)計程序計算該店鋪的“最小波動

值”之和。

(1)若營業(yè)額數(shù)據(jù)為“13,10,14,15,3,11”,則“最小波動值”之和是

。(2)實現(xiàn)上述功能的Python程序如下,請在劃線處填入合適的代碼。importpandasaspdnum=[]#數(shù)組num按經(jīng)營時間順序存儲每天營業(yè)額numy=[]#數(shù)組numy按營業(yè)額降序存儲每天營業(yè)額item=[]#根據(jù)數(shù)組numy構(gòu)造鏈表itemdf=pd.read_excel("yye.xlsx")df=①

#篩選出營業(yè)的記錄df["營業(yè)額"]=df.sum(axis=1)#在df對象最后一列插入“營業(yè)額”列df1=df.sort_values("營業(yè)額",ascending=False)foriindf.index:num.append(df["營業(yè)額"][i])foriindf1.index:numy.append(df["營業(yè)額"][i])n=1foriinnumy:item.append([i,n])n+=1item[n-2][1]=-1head=0k=0②

foriinnum[-1:-len(num):-1]:p=headwhileitem[p][0]!=i:k=pp=item[p][1]f=item[p][1]iff==-1:tot+=abs(item[k][0]-item[p][0])elifp==head:tot+=abs(item[f][0]-item[p][0])else:tot+=min(abs(item[k][0]-item[p][0]),abs(item[f][0]-item[p][0]))ifp==head:head=item[head][1]else:③

print("該店鋪的最小波動值之和是",tot)答案

(1)26

(2)①df[df.支出!=0]或df[df["支出"]!=0]②tot=num[0]

③item[k][1]=f或item[k][1]=item[p][1]29.(2022“山水聯(lián)盟”開學(xué)考,16)臨近年關(guān),學(xué)校為活躍新年氣氛,舉辦迎

新年聯(lián)歡活動,最后一個節(jié)目為“我是大贏家”抽獎活動,為增強(qiáng)互動效

果,最后中大獎的中獎?wù)哂山處焸兓赢a(chǎn)生,游戲規(guī)則是:全校所有教工,

每人獲得一個隨機(jī)編號,編號不得重復(fù),然后按照編號大小順時針手拉手

圍成一個圈,最后一個老師與第一個老師手拉手,接下來由第1個人指定m

的值,從編號為1的人開始報數(shù)(1,2,3,…),報到m的人出圈,不再參加互動游

戲,接著再由出圈人的上一位老師新指定m的值,并重新開始報數(shù),逆時針

報到m的人出列,游戲過程

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論