久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

Python遞歸調用實現數字累加的代碼

瀏覽:4日期:2022-08-06 13:08:28

我就廢話不多說了,直接上代碼吧!

def sum_numbers(num): # 1.出口 if num == 1: return 1 # 2.數組累加 temp = sum_numbers(num - 1) return num + tempresult = sum_numbers(3)print(result)

輸出:

6

補充拓展:python遞歸計數及結束遞歸

題目:搜索旋轉排序數組

Python遞歸調用實現數字累加的代碼

class Solution: TOTAL = 0 RUN = True def search(self, nums: List[int], target: int) -> int: # 將數組一分為二,分別比頭尾,尾大于頭為有序,剩下的為無序 i, j = 0, len(nums) - 1 res = -1 if nums and self.RUN: in_middle = (j + i) // 2 list1 = nums[:in_middle + 1] list2 = nums[in_middle + 1:] if nums[in_middle] >= nums[i]:res = self.binarySearch(list1, target)if res == -1: self.TOTAL += in_middle + 1 self.search(list2, target)else: self.TOTAL += res else:res = self.binarySearch(list2, target)if res == -1: self.search(list1, target)else: self.TOTAL += in_middle + 1 + res if not self.RUN: return self.TOTAL return res def binarySearch(self, nums, target): ''' 二分查找 ''' i, j = 0, len(nums) - 1 while i <= j: in_middle = (j + i) // 2 if nums[in_middle] == target:# print(nums, TOTAL)self.RUN = Falsereturn in_middle elif nums[in_middle] < target:i = in_middle + 1 else:j = in_middle - 1 return -1

以上這篇Python遞歸調用實現數字累加的代碼就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 伊宁县| 仙桃市| 宁城县| 永昌县| 广宁县| 南雄市| 会昌县| 兴隆县| 武功县| 沈丘县| 铁岭县| 札达县| 黄梅县| 和田市| 德令哈市| 临夏县| 紫金县| 灵寿县| 衡阳县| 凉山| 金坛市| 犍为县| 策勒县| 宁晋县| 徐州市| 防城港市| 宣城市| 青阳县| 肥东县| 长垣县| 夏津县| 永川市| 永城市| 定陶县| 侯马市| 定州市| 醴陵市| 松阳县| 油尖旺区| 通山县| 藁城市|