做网站需要准备什么东西,英文外链代发,杭州专业网站设计,抖音点赞自助网站1.什么是函数递归 函数的递归调用是函数嵌套调用的一种特殊形式#xff0c; 特殊在调用一个函数的过程中又直接或者间接地调用了该函数本身 递归本质就是一个循环的过程#xff0c; 但是递归必须满足两个原则#xff1a; 1.每进入下一层递归#xff0c;问题的规模必须有所减…1.什么是函数递归 函数的递归调用是函数嵌套调用的一种特殊形式 特殊在调用一个函数的过程中又直接或者间接地调用了该函数本身 递归本质就是一个循环的过程 但是递归必须满足两个原则 1.每进入下一层递归问题的规模必须有所减少 2.递归必须有一个明确的结束条件或者说有一个明确的进入下一层递归的条件 并且递归有两个明确的阶段 1.回溯一层一层地递归调用下去 2.递推在某一层结束掉递归然后一层一层返回 2.为何要用递归 在某些情况下基于递归来使用重复的过程比while循环更加简单 3.如何用 举例 def age(n):if n 1:return 18return age(n-1)2resage(5)
print(res)list1 [1, [2, [3, [4, [5, [6, [7, [8, [9]]]]]]]]]def func(l):for i in l:if type(i) is list:func(i)else:print(i)func(list1) View Code # 二分法二分法是算法的一种算法是如何高效地解决问题的思路 nums [1, 13, 15, 23, 27, 31, 33, 57, 73, 81, 93, 94, 97, 101]def binary_search(find_num, nums):print(nums)if len(nums) 0:print(not exists)returnmid_index len(nums) // 2if find_num nums[mid_index]:nums nums[mid_index 1:]binary_search(find_num, nums)elif find_num nums[mid_index]:nums nums[:mid_index]binary_search(find_num, nums)else:print(find it)binary_search(81, nums) View Code 转载于:https://www.cnblogs.com/xiamenghan/p/9768698.html