zoukankan      html  css  js  c++  java
  • 列表,链表,队列

    列表(数组):

      数组需要一块连续的内存空间来存储,对内存的要求比较高。

      补充:1个整型占4个字节,1个字节占8位,即1个整型占32位

      举例:nt li = 1,2,3,4,5,6(申请多大内存就使用多大)

      时间复杂度:

        查找:O(1)

          其实空间位置是放在数组名中的,

          例如:a[2] = 1000+2*4 = 1008---1011 这样查找的时间复杂度就为O(1)

        添加/删除:O(n),因为在添加或者删除数据时列表后面的数组依次改变了

      补充:为什么数组的下角标会从0开始,而不是从1开始呢?

          如果从1开始的话:例,a[2] = 1000+(3-1)*4 =1008---1011 这样则做进行了一次运算。影响效率。

    链表:

      与数组不同的是,链表的存储并不需要连续的内存空间,通过指针就可以将零碎的 内存空间串联起来。

      举例:

        li = [1,2,3,'hello',0.7](li中存放起始位置,li[1]中放1和next(下一个节点的地址),0.7中放0.7和结束标志)

       单链表的实现:
      # class Hero(object):
      #     def __init__          (self,no=None,name=None,nickname=None,pNext=None):
      #         self.on = no
      #         self.name = name
      #         self.nickname = nickname
      #         self.pNext = pNext
      # 这种方式只能在后面添加  
      # def add(head,hero):
      #     head.pNext = hero
      # def showAll(head):
      #     while head.pNext!=None:
      #         head =head.pNext
      #         print(head.name)

     

      删除
      # def delHero(head,no):
      #     cur = head
      #     while cur.pNext != None:
      #         if cur.pNext.no == no:
      #             break
      #         cur = cur.pNext
      #         print(cur.no,cur.name)

    队列:遵循先进先出原则

      队列的作用:应用解耦

      队列持久化:如何保证队列中的数据不丢失?

      1. 在队列里,设置durable=true  代表队列持久化

      2. 在生产者端,设置
        properties = pika.BasicProperties(
              delivery_mode=2,  # make message persistent
          )

      3. 在消费者端
        auto_ack = False
        ch.basic_ack(delivery_tag=method.delivery_tag)

      exchange模式:

        1.fanout : 广播

        2.direct : 组播

        3.topic  : 规则波

  • 相关阅读:
    css之position
    js之循环语句
    js之条件判断
    js之字典操作
    js之获取html标签的值
    5.15 牛客挑战赛40 C 小V和字符串 数位dp 计数问题
    5.21 省选模拟赛 luogu P4297 [NOI2006]网络收费 树形dp
    luogu P4525 自适应辛普森法1
    luogu P1784 数独 dfs 舞蹈链 DXL
    5.21 省选模拟赛 luogu P4207 [NOI2005]月下柠檬树 解析几何 自适应辛普森积分法
  • 原文地址:https://www.cnblogs.com/yanhui1995/p/10763928.html
Copyright © 2011-2022 走看看