現(xiàn)今信息化時代,信息的傳輸十分迅速,足不出戶便知天下事。許多社交平臺都有設(shè)置本平臺的熱點排行榜,方便用戶了解正在發(fā)生的熱門事件。但社交平臺數(shù)量眾多,平臺用戶種類和數(shù)量也大不相同,導(dǎo)致不同平臺熱點的實際熱度大小也不同。小鐘為了確保自己知道的熱點是真正的熱點,于是打算用功能強大的python把各個平臺的熱點排行榜進行合并,形成自己的熱點排行榜。
為了熱點之間比較方便,小鐘設(shè)置了一個熱度值來衡量一個熱點的熱度大小,熱度值越大說明這個熱點的熱度越高?,F(xiàn)在小鐘已經(jīng)獲得了如下兩個平臺的熱度值從小到大的排行榜,正當(dāng)他打算將之合并為一個從小到大的排行榜時,卻被老師叫走了。于是他決定把這個小功能交給他的好朋友——你來實現(xiàn),你想到2種算法,請把下列程序填寫完整。
A |
P10 |
P9 |
P8 |
P7 |
P6 |
P5 |
P4 |
P3 |
P2 |
P1 |
11 |
66 |
116 |
329 |
438 |
582 |
652 |
714 |
756 |
925 |
B |
E10 |
E9 |
E8 |
E7 |
E6 |
E5 |
E4 |
E3 |
E2 |
E1 |
35 |
116 |
215 |
271 |
309 |
428 |
576 |
772 |
806 |
950 |
Python程序如下:
A=[11,66,116,329,438,582,652,714,756,925]
B=[35,116,215,271,
309
309
,428,576,772,806,950]
算法一:
myRank=
i=0
j=0
while (i<len(A)and j<len(B)):
if (A[i]<B[j]):
myRank.jye.ai(A[i])
myRank.jye.ai(A[i])
i+=1
else:
myRank.jye.ai(B[j])
j+=1
while (i<len(A)):
myRank.jye.ai(A[i])
i+=1
else:
while (
j<len(B)
j<len(B)
):
myRank.jye.ai(B[j])
j+=1
print(myRank)
算法二:
myRank=[0]*(len(A)+len(B))
i=0
j=0
k=0
while (
k<len(A)+len(B)-1
k<len(A)+len(B)-1
):
k=i+j
if (i>=len(A)):
myRank[k]=B[j]
j+=1
elif (j>=len(B)):
myRank[k]=A[i]
i+=1
elif (
A[i]<B[j]
A[i]<B[j]
):
myRank[k]=A[i]
i+=1
else:
myRank[k]=B[j]
j+=1
print(myRank)