该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

新手学到 递归函数这一课,看老师留了个作业,我试着写了代码,应该算完成任务,但是不确定是否是最优的,麻烦各位大佬帮忙指点下

就是列表查找二刀法的问题,要求不用for循环和内置 a in b的 方式进行查找,不过我在最后的一步用了a in b的方式,不过那时候列表已经很短了,应该不影响效率

def aa(n ,m): #定义函数 n为列表 m为要查找的数

ll =int( len( n ) / 2 ) #先获取列表n长度除以2并取整 将值赋给ll

if m> n[ll]: #判断m的值是否大于列表n[ll]的值

n = n[ll:len(n)] #如果m>n[ll] 那么截取列表n的值从ll到列表最大值 并重新赋值给n

if len( n ) <= 3: #判断列表长度是否小于等于3

if m in n: #为真 判断m是否在列表n内

print( m,'在数组里' ) #在的话输出 m在列表里

else:

print( m,'不在数组里' ) #不在的话输出 m不在列表里

else:

aa( n, m ) #如果列表n长度大于3 则继续调用函数执行

else:

n = n[0:ll] #如果m<>>n[ll] 那么截取列表n的值从0到列表ll 并重新赋值给n

if len( n ) <= 3: #判断列表长度是否小于等于3

if m in n: #为真 判断m是否在列表n内

print( m,'在数组里' ) #在的话输出 m在列表里

else:

print( m,'不在数组里' ) #不在的话输出 m不在列表里

else:

aa( n, m ) #如果列表n长度大于3 则继续调用函数执行

# 待查找列表

a = [1, 3, 5, 7, 8, 9, 10, 11, 33, 34, 55, 66, 77, 69, 77, 79, 81, 89, 90, 100, 112, 156]

#函数调用

aa( a, 1 )

我执行代码是成功了,但是感觉代码好臃肿,

python递归函数是指_python 函数递归作业求解析相关推荐

  1. python中如何调用函数_如何调用python中的内置函数?(实例解析)

    对于第一次接触到python这门编程语言的朋友来说,刚刚开始学习python编程的时候对于python函数调用这一方面的了解比较少,在这篇文章之中我们就来了解一下python怎么调用函数. Pytho ...

  2. python递归函数的思想_Python递归函数实例讲解

    Python递归函数实例 1.打开Python开发工具IDLE,新建'递归.py'文件,并写代码如下: def digui(n): if n == 0 : print ('') return prin ...

  3. Python day10 global关键字、函数递归、匿名函数、map函数的用法详解

    1.global关键字 引用全局变量,在局部全局变量改变,也会改变,global相当于指针,将地址指向全局变量的name name='littlepage'def littepage():global ...

  4. python测试函数怎么写_Python - 函数

    函数,function,是一段代码的集合体.是Python为了代码最大程度的重用.减小代码冗余而提供的最基本的程序结构. Python是一门面向对象的编程语言,对函数进行分类和封装,由对象实现对方法的 ...

  5. range函数python三个参数_python函数--range()方法

    range()方法 range()是python内置函数它能返回一系列连续增加的整数,它的工作方式类似于分片,可以生成一个列表对象. range函数大多数时常出现在for循环中,在for循环中可做为索 ...

  6. python函数递归法求一个数各位数之和_python – 设计一个使用digit_sum计算数字总和的递归函数...

    要获得(正整数)数字的最后一位数,您可以计算模数: last_digit = n % 10 该数字的其余部分(不包括最后一个地方)是: rest = (n - last_digit) / 10 理论上 ...

  7. python 递归函数例子_python函数递归的几个例子

    斐波那契数列1,1,2,3,5,8,13,21--#!/usr/bin/env python# encoding: utf-8def fib(n):if n == 1 or n == 2:return ...

  8. python函数递归法求一个数各位数之和_Python基础之内置函数和递归

    一.内置函数 下面简单介绍几个: 1.abs() 求绝对值 2.all() 如果 iterable 的所有元素都为真(或者如果可迭代为空),则返回 True 3.any() 如果 iterable 的 ...

  9. python命名空间和闭包_Python函数基础实例详解【函数嵌套,命名空间,函数对象,闭包函数等】...

    本文实例讲述了Python函数基础用法.分享给大家供大家参考,具体如下: 一.什么是命名关键字参数? 格式: 在*后面参数都是命名关键字参数. 特点: 1.约束函数的调用者必须按照Kye=value的 ...

最新文章

  1. CSDN问答频道“华章杯”7月排行榜活动开始,丰厚奖品等你拿
  2. python3.7和3.8的区别-Python2.7和3.7区别
  3. 基于 Laravel 5 构建的、支持模块化和多语言的 CMS —— AsgardCMS
  4. 七夕过后,你分析过自己单身原因的原因吗?
  5. mongodb报错一例
  6. How to include library manually into maven local repository?
  7. 20170513 Python练习册0011过滤敏感词
  8. linux邮件加密码,linux系统的邮件服务器的加密与验证
  9. Android自定义View之刻度尺
  10. 前端事件练习之轮播图代码
  11. 【STM32F429的DSP教程】第14章 DSP统计函数-最大值,最小值,平均值和功率
  12. 巨量引擎api对接 php,巨量引擎Marketing API 现已开放多种创意能力接口
  13. 未来科技蒲公英大飞_大烟草的下跌告诉我们关于大科技的未来
  14. php下载到指定目录,下面这段代码如何下载到指定目录
  15. 演唱会系统mysql_演唱会售票管理系统数据库设计.doc
  16. 超详细:将iPhone中音乐导出到电脑里的简单方法(完美支持最新iOS15.2系统)
  17. es like and or_广东生态所孙蔚旻团队ESamp;T发表利用稳定同位素示踪宏基因组分箱联用技术揭示砷污染土壤中的厌氧砷氧化微生物及其代谢途径...
  18. python均线斜率_【每日一策】Matlab量化交易策略之 均线拐头配合出场
  19. 编译c或c++代码出现error “***” was not declared in this scope 的解决方法
  20. 怎样用文言文优雅地装逼!28万行唐诗中找出对称矩阵

热门文章

  1. [原]《Web前端开发修炼之道》-读书笔记CSS部分
  2. 去年一个百万级的小软件项目经验分享,20来个功能模块,项目不太好做有些棘手...
  3. 认识RAID磁盘阵列
  4. 廉价的悼念让死者生气,用区块链营造一个像样的纪念
  5. mysql驱动名更新
  6. 一个用PPT画画的程序员
  7. “chaos”的算法--之直接插入排序
  8. WCF 改成 restful api
  9. 博客园博客停止更新的通知,程序员生存定律会在CSDN发完
  10. 一笔画问题 (DFS或并查集)