1. 有如下Python程序段:

import random

d=[28, 37, 39, 42, 45, 50, 70, 80]

i, j, n=0, len(d)-1, 0

key=random.randint(20, 35)*2

while i<=j:

    m=(i+j)//2; n+=1

    if key==d[m]:

        break

    elif key<d[m]:

        j=m-1

    else:

        i=m+1

print(i, j, m, n)

执行该程序段后,下列说法正确的是(   )

A. n的值可能为4 B. 若n值为2,则必定满足i<=j C. m的值可能为1 D. 若n值为3,则key的值可能是45
【考点】
查找算法及程序实现;
【答案】

您现在未登录,无法查看试题答案与解析。 登录
单选题 普通
基础巩固
能力提升
变式训练
拓展培优
真题演练
换一批