栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

ch661是什么零件(choose)

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

ch661是什么零件(choose)

思路

list.pop():
注意 python 列表 或 数组 中 使用 pop() 函数时,
默认 pop 时, 弹出的是数组中的最后一个元素;
list1 = [3,9,6,8,5,] ;
list1.append(77)
print(list1)
a = list1.pop();
print(a);
a = 5

leetcode 225 队列实现栈

1 题目分析

方法二 . 两个队列实现栈的功能时;

注意此时,
数组头作为 栈顶,存放的是最后加入的新元素;
数组尾作为 栈底, 存放的是 最开始加入的元素;

一个 主队列: 以最先加入的元素在队尾, 最后加入的元素在队头的形式存储元素;
一个 辅助队列: 用于临时存放当前加入的元素, 以及合并后的元素;

主队列中的 python 形式:
注意, 在Python 数组中, 此时,数组的最左边下标为0 被作为队头(栈顶), 数组末尾最右边 作为 队尾(栈底)

实现流程关键点:
元素入栈时,

    先将元素放到辅助队列中;

    此时,判断主队列是否为空,
    若为空, 直接交换主队列,辅助队列中的内容;
    主队列不为空, 将主队列的中内容依次从队头弹出, 加入到辅助队列中;
    此时辅助队列中的元素, 队头 (数组头)便是刚加入的元素 作为栈顶, 队尾(数组尾部)便是最早加入 作为栈底;

    此时, 再将主队列和辅助队列交换;

元素出栈时, 弹出栈顶元素,即 队头元素, 即主队列的 数组头 -> :

2. 代码
class  MyStack:
    def __init__(self, ):
        self.queue_major  = []
        self.queue_vise = []

    def push(self, x : int) -> None:
        self.queue_vise.append(x)    # 先将元素加入到辅助队列;

        while self.queue_major:
            self.queue_vise.append(self.queue_major.pop(0)) # 将主队列中的元素 依次从队头弹出, 添加到 辅助队列中的队尾处;

        self.queue_major = self.queue_vise   # 将合并后的辅助队列 与 主队列交换;
        self.queue_vise  = []   #  辅助队列重新 更新为空;
        print("the major queue", self.queue_major)


    def  pop(self,) ->int:
        if  self.empty():
            return
        else:
            return  self.queue_major.pop(0)


    def top(self, ) ->int:
        return self.queue_major[0]  # 注意 这里返回的是 数组的下标;


    def empty(self,) ->bool:
        if not self.queue_major:
            return  True
        else:
            return  False


if __name__ == "__main__":
    obj1 = MyStack()
    str1 = obj1.push(6)
    str1 = obj1.push(5)
    str1 = obj1.push(9)
    str1 = obj1.push(3)
    str1 = obj1.push(55)
    # str1 = obj1.strStr("hello", "ll")
    # str1 = obj1.strStr("aaaaa", "bba")
    # str1 = obj1.strStr("aaaaa" ,"bba")
    print(str1)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/773081.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号