From fc7bcb615dac4a70e2dd0e31449fd5f1ec8f6d52 Mon Sep 17 00:00:00 2001 From: krahets Date: Mon, 17 Jul 2023 03:48:33 +0800 Subject: [PATCH] Add the section of binary_search_recur. --- .../binary_search_recur.py | 39 ++++++ .../binary_search_recur.png | Bin 0 -> 57497 bytes .../binary_search_recur.md | 118 ++++++++++++++++++ mkdocs.yml | 5 +- 4 files changed, 160 insertions(+), 2 deletions(-) create mode 100644 codes/python/chapter_divide_and_conquer/binary_search_recur.py create mode 100644 docs/chapter_divide_and_conquer/binary_search_recur.assets/binary_search_recur.png create mode 100644 docs/chapter_divide_and_conquer/binary_search_recur.md diff --git a/codes/python/chapter_divide_and_conquer/binary_search_recur.py b/codes/python/chapter_divide_and_conquer/binary_search_recur.py new file mode 100644 index 000000000..26a8884b2 --- /dev/null +++ b/codes/python/chapter_divide_and_conquer/binary_search_recur.py @@ -0,0 +1,39 @@ +""" +File: binary_search_recur.py +Created Time: 2023-07-17 +Author: krahets (xisunyy@163.com) +""" + + +def dfs(nums: list[int], target: int, i: int, j: int) -> int: + """二分查找:分治""" + # 若区间为空,代表未找到目标元素,则返回 -1 + if i > j: + return -1 + # 计算中点索引 m + m = (i + j) // 2 + if nums[m] < target: + # 此情况说明 target 在区间 [m+1, j] 中,递归解决该子问题 + return dfs(nums, target, m + 1, j) + elif nums[m] > target: + # 此情况说明 target 在区间 [i, m-1] 中,递归解决该子问题 + return dfs(nums, target, i, m - 1) + else: + # 找到目标元素,返回其索引 + return m + + +def binary_search(nums: list[int], target: int) -> int: + """二分查找""" + n = len(nums) + return dfs(nums, target, 0, n - 1) + + +"""Driver Code""" +if __name__ == "__main__": + target = 6 + nums = [1, 3, 6, 8, 12, 15, 23, 26, 31, 35] + + # 二分查找(双闭区间) + index: int = binary_search(nums, target) + print("目标元素 6 的索引 = ", index) diff --git a/docs/chapter_divide_and_conquer/binary_search_recur.assets/binary_search_recur.png b/docs/chapter_divide_and_conquer/binary_search_recur.assets/binary_search_recur.png new file mode 100644 index 0000000000000000000000000000000000000000..b9f5e59b2430d09cd48151fbb6e9f35a16e9f667 GIT binary patch literal 57497 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