当前位置: 首页 > news >正文

购买域名之后怎么做网站半路出家去学计算机网站开发

购买域名之后怎么做网站,半路出家去学计算机网站开发,济宁北湖建设局网站,优化设计五年级下册数学答案Python 堆(Headp) Python中堆是一种基于二叉树存储的数据结构。 主要应用场景: 对一个序列数据的操作基于排序的操作场景,例如序列数据基于最大值最小值进行的操作。 堆的数据结构: Python 中堆是一颗平衡二叉树&am…

Python 堆(Headp)

Python中堆是一种基于二叉树存储的数据结构。

主要应用场景:

  对一个序列数据的操作基于排序的操作场景,例如序列数据基于最大值最小值进行的操作。

堆的数据结构:

  Python 中堆是一颗平衡二叉树(关于二叉树参考数据结构相关知识),且基于小堆进行存储。

  何为小堆,简单的说就是根节点永远不大于子节点的一种存储树,如下所示:

为何会形成图示的二叉树,这跟二叉树的存储及翻转规则有关,比较复杂,如果感兴趣,可查阅数据结构相关知识。

 特性:

  (1)堆的数据要基于链表(List)进行操作(堆中的数据是基于链表进行操作)。

  (2)堆直接基于链表操作,不再开辟新的存储空间。

  (3)堆头永远都是最小的值。

  (4)堆的检索是根据中序遍历方式:根节点 --> 左节点 -->右节点

常用方法:

 1 import heapq2 3 # (1)创建一个空堆,并加入数据4 heap = []5 for item in [2, 3, 1, 4]:6     heapq.heappush(heap, item)7 print heap     # 输出 [1, 3, 2, 4]8 9 # (2)根据链表构建一个堆 --> heapify
10 l = [2, 3, 1, 4]
11 heapq.heapify(l)
12 print l        # 输出 [1, 3, 2, 4]
13 
14 # (2)向堆中追加元素 -->heappush
15 heapq.heappush(l, -10)
16 print l        # 输出 [-10, 1, 2, 4, 3]
17 
18 # (3) 弹出堆头(返回堆头之后堆再进行翻转,堆头保持最小值) -->heappop
19 print heapq.heappop(l)      # 输出 -10
20 print l                     # 输出 [1, 3, 2, 4]
21 print heapq.heappop(l)      # 输出 1
22 print l                     # 输出 [2, 3, 4]
23 
24 # (4) 替换第一个元素,并构建堆 --> heapreplace
25 l = [2, 3, 1, 4]
26 print heapq.heapreplace(l, 100)     # 输出 2
27 print l                             # 输出 [1, 3, 100, 4]
28 
29 # (5)合并多个链表 --> merge
30 l = [1, 3, 2]
31 l2 = [5, 2, 3]
32 l3 = [9, 2, 3, 1]
33 print list(heapq.merge(l, l2, l3))  # 输出 [1, 3, 2, 5, 2, 3, 9, 2, 3, 1]
34 
35 # (6)多路归并 --> merge
36 #  对每一个链表进行排序,再对排序后的列表进行合并
37 print list(heapq.merge(sorted(l), sorted(l2), sorted(l3)))
38 
39 # (7)返回最大的元素 --> nlargest
40 l = [2, 3, 1, 4]
41 print heapq.nlargest(2, l)     # 输出 [4, 3]
42 
43 # (8)返回最小的元素 --> nsmallest
44 l = [2, 3, 1, 4]
45 print heapq.nsmallest(2, l)     # 输出 [1, 2]
46 
47 # (9)向堆中追加一个数据,再弹出堆头(弹出后堆不会发生翻转) --> heappushpop
48 l = [2, 3, 1, 4]
49 print heapq.heappushpop(l, -10)     # 输出 -10
50 print l                             # 输出 [2, 3, 1, 4]    
http://www.yayakq.cn/news/752354/

相关文章:

  • 娱乐网站建设怎么样建设银行社保卡查询网站
  • 广东手机网站建设报价可以发广告的平台
  • 邮箱注册网站查询获取网站全站代码
  • wordpress外贸建站教程杭州市建设
  • 网站域名所有权证书各级院建设网站的通知
  • 门户网站开发过程视频汉化版网站开发软件
  • 网站营销推广策划方案app开发的价值
  • 怎样设置一个属于自己的网站诀窍的网站
  • 重庆市建设节能中心网站高端企业网站建设费用
  • 微信小程序做直播网站开发网站公司门户网站
  • 企业网站示例广告设计与制作模板
  • 群晖建站教程企业开展网站建设
  • 盐城国有资源土地建设交易网站无法打开建设银行企业网站
  • 网站建设的目标与期望广东公诚通信建设监理有限公司网站
  • 江苏网站建设案例网址域名ip解析
  • 网站建设作品图片shopnc本地生活o2o网站系统
  • 做网站写页面多少钱成都百度推广电话号码是多少
  • 网站推广和优化的原因北京百度快速排名
  • html网站免费下载成都专业网站建设厂
  • seo网站排名全选创新的手机网站建设
  • 装修的网站都有哪些创意工作室网站
  • 西安做网站建设的公司应用商店app下载官方
  • 目前建设网站公司宣传网站建设开题报告
  • 顺德网站建设深圳市企业网站seo
  • 个人soho要怎么做企业网站网站策划ps
  • 株洲建设企业网站室内设计论坛网站
  • 免费企业黄页查询网站网站建设收费
  • 楚雄网站开发rewlkj中国电子信息网
  • 常州做网站企业ps怎么logo设计制作
  • 扬州市建设厅网站下载中心软件