一,lambda匿名函数
 1.语法  函数名=lambda 参数:返回值   

    a=lambda i:i**2    print(a(2))

 2.不能用于复杂的函数

二.sorted()排序函数

 1.语法     sorted(可迭代对象(iterable),key=函数,reserve=false(默认值))

lst=[    {"id":1,"name":"李金晓","age":25},    {"id":2,"name":"老丁","age":23},    {"id":3,"name":"程程","age":254},    {"id":4,"name":"王总","age":255},    {"id":5,"name":"付凌波","age":215}    ]a=sorted(lst,key=lambda dic:dic["age"])print(a)

三.filter()筛选函数

 1.语法   filter(函数,可迭代的对象)

 2.第一个参数是函数,将第二个参数中的每一个元素都传给函数,函数如果反回True,留下该元素.

lst=[    {"id":1,"name":"李金晓","age":25},    {"id":2,"name":"老丁","age":23},    {"id":3,"name":"程程","age":254},    {"id":4,"name":"王总","age":255},    {"id":5,"name":"付凌波","age":215}    ]a= filter(lambda dic:dic["age"]>40,lst)print(a)print(list(a))

四.map()映射函数

 1.语法    map(函数,可迭代对象)

 2.把可迭代对象中的每一个元素传递给前面的函数进行处理

lst=[1,24,3,5,6,7]a=map(lambda i:i**2,lst)print(a)print(list(a))

五.递归

  1.语法

    def func()

      func()

    fun()

  2.

lst = [22, 33, 44, 55, 66, 77, 88, 99, 101, 238, 345, 456, 567, 678, 789]def func(left,right,n):    if left<=right:        middle=(left+right)//2        if n>lst[middle]:            left=middle+1        elif n<lst[middle]:            right=middle-1        else:            return middle        return func(left,right,n)    else:        return -1print(func(0,len(lst),101))

六.二分法查找

1.查找的序列必须输有序序列.

    1.普通方法

n=int(input("请输入数字"))lst = [22, 33, 44, 55, 66, 77, 88, 99, 101, 238, 345, 456, 567, 678, 789]left=0right=len(lst)-1

while left<=right:    middle=(left+right)//2    if n>lst[middle]:        left=middle+1    elif n<lst[middle]:        right=middle-1    else:        print("存在,位置:"+str(middle))        breakelse:    print("不存在")

七 冒泡排序

# 2. 给出一个纯数字列表. 请对列表进行排序(升级题).
# 思路:
# 1. 完成a和b的数据交换. 例如, a = 10, b = 24 交换之后, a = 24, b = 10
# 2. 循环列表. 判断a[i]和a[i+1]之间的大小关系, 如果a[i]比a[i+1]大. 则进行互换. 循环结束的时候. 当前列表中最大的数据就会被移动到最右端.
# 3. 想一想, 如果再次执行一次上面的操作. 最终第二大的数据就移动到了右端. 以此类推. 如果反复的进行执行相应的操作. 那这个列表就变成了一个有序列表.
lst=[12,53,11,23,66,44,2,13]
for a in range(len(lst)):i=0while i <len(lst)-1:if lst[i]>lst[i+1]:lst[i],lst[i+1]=lst[i+1],lst[i]i=i+1
print(lst)
#

View Code

转载于:https://www.cnblogs.com/hu13/p/9342106.html

隐匿函数,二分法 冒泡排序相关推荐

  1. 【C语言】用回调函数实现冒泡排序

    (一)什么是回调函数呢? 回调函数就是通过函数指针调用的函数.如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数. (二)回调函数的实现机制 ...

  2. scanf函数、冒泡排序和不定长度数组的使用 —— malloc

      环境:win10 + VS2019 目录 1 scanf函数理解 1.1 VS中scanf函数报错 1.2 scanf函数介绍 1.2.1 简介 1.2.2 转换说明 1.2.3 读取缓冲区数据 ...

  3. 算法介绍--- 二分法,冒泡排序,快排

    目录 二分法 冒泡排序 快速排序 二分法 二分法是一种在有序数组中查找某一特定元素的搜索算法. 搜索过程从数组的中间元素开始: 如果中间元素正好是要查找的元素,则搜索过程结束; 如果某一特定元素大于或 ...

  4. 匿名函数、冒泡排序,二分法, 递归

    匿名函数 lambda 匿名函数 格式 lambda 参数:返回值 函数名统一叫lambda,最多只能写一行普通的正常的函数 def func(n):return n * n lambda匿名函数写法 ...

  5. python冒泡排序函数_python冒泡排序-Python,冒泡排序

    arr = [ 7 , 4 , 3 , 67 , 34 , 1 , 8 ] . def bubble_sort : 最近在学习Python,下面是我的一些笔记 冒泡排序 实现思路: 使用双重for循环 ...

  6. python基础二 函数 递归 装饰器 迭代器 生成器 内置函数 二分法应用

    函数 迭代器 生成器 拆包和装包 tup=("j1","a1","c1","k1") a,b,c,d=tup print ...

  7. sorted_一个函数秒杀冒泡排序算法和选择排序

    sorted一招杀a = [3,9,12,4,5,7,8,110]print(sorted(a,reverse=True))# true为降序print(sorted(a,reverse=False) ...

  8. 前端学习(1819):前端面试题之封装函数之冒泡排序

    <!DOCTYPE html> <html><head><meta charset="UTF-8"><title>< ...

  9. C语言-冒泡排序函数

    冒泡排序函数 比较相邻的元素.如果第一个比第二个大,就交换他们两个. 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对.这步做完后,最后的元素会是最大的数. 针对所有的元素重复以上的步骤,除 ...

  10. C++阶段01笔记汇总【C++软件安装、C++初识、数据类型、运算符、程序流程结构、数组、函数、指针、结构体】

    C++| 匠心之作 从0到1入门学编程[视频+课件+笔记+源码] 目录 C++课程安排 1 C++初识 1.1 第一个C++程序 1.1.1 创建项目 1.1.2 创建文件 1.1.3 编写代码 1. ...

最新文章

  1. JavaScript调用ATL COM(二)
  2. 枚举重名_举重设计模式示例
  3. bash脚本 文件_如何使用Bash脚本来管理从AWS S3存储桶下载和查看文件
  4. 前端学习(2309):react之同级传值
  5. 修改uid gid 的起始范围
  6. Mysql平滑迁移(重构后的数据平滑迁移)
  7. DRF parser请求流程
  8. SharePoint2010企业开发最佳实践(八)---- SPWeb 对象
  9. Memcached(七)Memcached的并发实例
  10. SNMP Trap调试记录
  11. 中国象棋游戏设计与实现
  12. 各国程序员薪资水平,咱有点惨...
  13. 眼见为实(2):介绍Windows的窗口、消息、子类化和超类化
  14. PreTranslateMessage详解
  15. 基于Arduino的土壤湿度检测
  16. 常用ANSI C语言标准库函数汇总(一)
  17. WEB网页短信平台网页短信系统上线
  18. 标签设计软件如何批量制作ITF14码
  19. 西瓜定位的是10分钟以内的中长视频,抖音定位的是3分钟以内的短视频
  20. geoserver|四种服务介绍

热门文章

  1. 本科生计算机论文中文核心,本科计算机想投中文核心,求推荐刊物!
  2. 写项目总结写哪些方面
  3. CorelDRAW暗角效果怎么做?
  4. 《思考的技术》--大前研一读书笔记
  5. 设计网站如何提高版式的设计水平?
  6. win10打开计算机黑屏怎么办,win10系统重启黑屏怎么办
  7. 有机酸的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  8. Easy Touch 5 简单使用
  9. C++PrimerPlus 第六章 分支语句和逻辑运算符 - 6.1 if语句
  10. 渲染的本质: 纹理过滤(Texture filtering)技术