1、二分法加递归来实现列表元素的查找
test_obj = [1,3,4,5,23,48,56,78,89] find_num = 56 def bindary_search(lst,find_n): print(lst) mid_index = len(lst) // 2 if not lst: print('{}不在此列表中'.format(find_num)) return if find_num > lst[mid_index]: lst = lst[mid_index+1:] bindary_search(lst,find_n) elif find_num < lst[mid_index]: lst = lst[:mid_index] bindary_search(lst,find_n) else: print('找到了!') bindary_search(test_obj,find_num)
2、面向过程的编程思想
# 编程思想/范式 # 面向过程的编程思想: # 核心是"过程"二字,过程即流程,指的是做事的步骤:先什么、再什么、后干什么 # 基于该思想编写程序就好比在设计一条流水线 # 优点:复杂的问题流程化、进而简单化 # 缺点:扩展性非常差 # 面向过程的编程思想应用场景解析: # 1、不是所有的软件都需要频繁更迭:比如编写脚本 # 2、即便是一个软件需要频繁更迭,也不并不代表这个软件所有的组成部分都需要一起更迭