1. 现今信息化时代,信息的传输十分迅速,足不出户便知天下事。许多社交平台都有设置本平台的热点排行榜,方便用户了解正在发生的热门事件。但社交平台数量众多,平台用户种类和数量也大不相同,导致不同平台热点的实际热度大小也不同。小钟为了确保自己知道的热点是真正的热点,于是打算用功能强大的python把各个平台的热点排行榜进行合并,形成自己的热点排行榜。

为了热点之间比较方便,小钟设置了一个热度值来衡量一个热点的热度大小,热度值越大说明这个热点的热度越高。现在小钟已经获得了如下两个平台的热度值从小到大的排行榜,正当他打算将之合并为一个从小到大的排行榜时,却被老师叫走了。于是他决定把这个小功能交给他的好朋友——你来实现,你想到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,①,428,576,772,806,950]

算法一:

myRank =

i = 0

j = 0

while (i < len(A) and j < len(B)):

  if (A[i] < B[j]):

    ②

    i += 1

  else:

    myRank.append(B[j])

    j += 1

while (i < len(A)):

  myRank.append(A[i])

  i += 1

else:

  while (③):

    myRank.append(B[j])

    j += 1

print(myRank)

算法二:

myRank = [0]*(len(A)+len(B))

i = 0

j = 0

k = 0

while (④):

  k = i+j

  if (i >= len(A)):

    myRank[k] = B[j]

    j += 1

  elif (j >= len(B)):

    myRank[k] = A[i]

    i += 1

  elif (⑤):

    myRank[k] = A[i]

    i += 1

  else:

    myRank[k] = B[j]

    j += 1

print(myRank)

【考点】
排序算法及其程序设计;
【答案】

您现在未登录,无法查看试题答案与解析。 登录
综合题 普通
变式训练
拓展培优
换一批