用遞迴實現2分查詢的演算法,以從列表 a = [1,3,4,6,7,8,9,11,15,17,19,21,22,25,29,33,38,69,107] 查詢指定的值。
def
finder
(n, li)
:'''
用遞迴實現2分查詢
:param n: 要查詢的值
:param li: 要查詢的列表
:return:
'''li.sort(
)if n < li[0]
or n > li[-1
]:print
('不存在'
)return
none
mid =
len(li)//2
# 中間位置
if li[mid]
> n:
print
(f"向左找,~"
) finder(n, li[
:mid]
)elif li[mid]
< n:
print
(f'向右找,~'
) finder(n, li[mid:])
elif li[mid]
== n:
print
('找到了'
)a =[1
,2,3
,4,6
,7,9
,11,33
,44,99
]finder(
1, a)
# 輸出
# 向左找,1~7
# 向左找,1~3
# 向左找,1~2
# 找到了
小猿圈Python作業 第2章 04到06
04 寫 有如下列表,請按照功能要求實現每乙個功能 li hello seven mon h kelly all 123,446 請根據索引輸出 kelly k li 2 1 1 print f 輸出kelly 請使用索引找到 all 元素並將其修改為 all 如 li 0 1 9 li 2 2 a...
小猿圈Python作業 第2章 01 列表操作
寫 有如下列表,按照要求實現每乙個功能 li alex eric rain 計算列表長度並輸出 length len li print f 1 li的長度是 列表中追加元素 seven 並輸出新增後的列表 print 2 追加元素後的li是 li 請在列表的第1個位置插入元素 tony 並輸出新增後...
python小猿 小猿圈python學習 內建函式
python的len為什麼你可以直接用?肯定是直譯器啟動時就定義好了 每個函式的作用我都幫你標好了 abs 求絕對值 all return true if bool x is true for all values x in the iterable.if the iterable is empty...