bisect模块

  处理已经排序的序列,升序,从小到大,分插入数据和查看插入数据的位置两大核心,类似于插入排序算法

  

插入数据

  # 首先这个序列按升序规则已经排序好的

  # 查找规则是二分查找,当数据相等的时候又分为插入左边或右边

import bisect

score = []
# 二分查找插入排序好的序列,升序,从小到大
# 维护已经排好序的列表,默认右边,本身必须是可修改序列类型
bisect.insort(score, 30)
# 插入相同数据的右边
bisect.insort_right(score, 30)
bisect.insort(score, 4)
bisect.insort(score, 26)
print(score) # 未排序好,则不符合前提条件
name = [3, 6, 4, 7, 9, 8]
bisect.insort(name, 4)
print(name)

  

查询插入位置

  # 找到插入的位置,默认是右边

score = [1, 2, 3, 4, 5]
# 输入插入的位置,相同则分为左边或右边插入位置,默认右边
print(bisect.bisect(score, 4))
print(bisect.bisect_left(score, 4))

  

最新文章

  1. Java多线程6:synchronized锁定类方法、volatile关键字及其他
  2. 判断密文加密类型hash-identifier
  3. eclipse导入Android项目后,项目的名称变为了主Activity的名称
  4. 【读书笔记】iOS-截屏功能的实现。
  5. sql server 复制 需要有实际的服务器名称才能连接到服务器……
  6. Redis--分布式锁
  7. IE9下Coolite.Ext出现createContextualFragment错误
  8. Mysql 备份恢复与xtrabackup备份
  9. SQL备份所有数据库脚本
  10. Unity备份占时留用
  11. [转] JavaScript 单例模式
  12. P2661 信息传递 二分图的最小环
  13. (3.1)mysql备份与恢复之mysqldump
  14. rabbitmq延迟队列demo
  15. VS2010、VS2012、VS2013、VS2015、VS2017各版本产品激活秘钥
  16. 对TCP重传的进一步认识
  17. Mysql 常用调优命令总结
  18. java string和int之间的相互转化
  19. android Activity中设置setResult 没有触发onActivityResult
  20. 如何在java中发起http和https请求

热门文章

  1. java父类子类代码
  2. MYSQL经典练习题,熟悉DQL
  3. Inno Setup Compiler 中文使用教程
  4. 组件 popup 设计和源码剖析
  5. Htmlcss学习笔记2——选择器与常用样式
  6. 用maven整合SSM中jsp运行报404和500问题解决方案
  7. ZooKeeper的十二连问,你顶得了嘛?
  8. android开发之java代码中如何获取到当前时间。详情代码带注释。
  9. qdu-小明的贪心题(最短路+最短路的数量 )
  10. CSS中的包含块