国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

二分搜索及測試函數

2019-11-08 02:10:39
字體:
來源:轉載
供稿:網友

看了《編程珠璣》第一部分,完成了二分搜索已經這個函數的測試函數。

二分搜索思想十分簡單,但是卻很難一次性完成。

所以各種邊緣測試是非常重要的。

下面是python完成的二分搜索代碼。

def BinarySearch(list, point):    list.sort();    lenth = len(list);    l = 0;    r = len(list) - 1;    while(l <= r):        m = int((l + r) / 2);        temp = list[m];        if (point > temp):            l = m + 1;        elif (point == temp):            return m;        elif (point < temp):            r = m - 1;    return -1;測試函數:

def BinarySearchTest(Max):    count = 0;    for i in range(0,Max):        list = [];        for j in range(0,i):            list.append(random.randint(-Max / 4, Max / 4))        list.sort();        point = random.randint(-25, 25);        TestIndex = BinarySearch(list, point);        try:            RightIndex = list.index(point);        except:            if (TestIndex == -1):                count += 1;                pass;            else:                PRint(list);                print('TestIndex = ', TestIndex, 'RightIndex = ', RightIndex)                print(point, ':no index error/n');            continue;        if (TestIndex != -1):            count += 1;            pass;        else:            print(list);            print('TestIndex = ', TestIndex, 'RightIndex = ', RightIndex)            print(point, ':error/n');    if (count == Max):        print('allright');    return count;  


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 松江区| 丽江市| 微山县| 永州市| 察哈| 东明县| 根河市| 平昌县| 克什克腾旗| 屯留县| 阳信县| 贵港市| 五台县| 浦城县| 九龙县| 海南省| 宝坻区| 福安市| 自治县| 长白| 将乐县| 稷山县| 柳江县| 绥芬河市| 呈贡县| 开鲁县| 夏津县| 绥江县| 新晃| 鄂尔多斯市| 蒲江县| 隆安县| 连平县| 民县| 满洲里市| 南投县| 鞍山市| 广水市| 贡觉县| 竹北市| 双柏县|