循环队列的实现及应用——桶排序bucket_sort、基数排序radix_sort

一、循环队列的实现

代码解释

1、完成初始化

在这里插入图片描述

2、定义方法

在这里插入图片描述

3、测试实例

在这里插入图片描述

4、完整代码

class AQueue:def __init__(self, size=10):self.__mSize = sizeself.__front=0self.__rear = 0self.__listArray = [None] * size#清空元素def clear(self):self.__front = 0self.__rear = 0for i in range(self.__mSize):self.__listArray[i]=None# 入队操作def enqueue(self, item):if not self.is_full():self.__rear=(self.__rear+1)%self.__mSizeself.__listArray[self.__rear]=itemelif self.is_full():raise ValueError("Queue is Full.")# 出队操作def dequeue(self):if not self.is_empty():self.__front=(self.__front+1)%self.__mSizeself.item=self.__listArray[self.__front]self.__listArray[self.__front]=Nonereturn self.itemelif self.is_empty():raise ValueError("Queue is empty.")# 判空,检查队列是否为空def is_empty(self):return self.__front==self.__rear# 判满,注意并不是所有的位置都有元素才是满,当只有一个是None时就满了,有点像链表的哑结点def is_full(self):return ((self.__rear+1)%self.__mSize==self.__front)def __repr__(self):  # 显示队列中所有元素,数组切片左闭右开return str(self.__listArray[:self.__mSize])if __name__=='__main__':queue=AQueue(5)queue.enqueue(1)print(queue)print(queue.dequeue())queue.enqueue(2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/595816.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue 浅解watch cli computed props ref vue slot axios nexttick devtools说明使用

Vue.js 是一个强大的前端框架,它提供了很多有用的功能和工具。你提到的这些特性(watch、cli、computed、props、ref、slot、axios、nextTick、devtools)在 Vue 中各自扮演着不同的角色。下面我会逐一解释这些特性如何在 Vue 中使用&#xff1…

[StartingPoint][Tier0]Preignition

Task 1 Directory Brute-forcing is a technique used to check a lot of paths on a web server to find hidden pages. Which is another name for this? (i) Local File Inclusion, (ii) dir busting, (iii) hash cracking. (目录暴力破解是一种用于检查 Web 服务器上的大…

数据结构——lesson13排序之计数排序

💞💞 前言 hello hello~ ,这里是大耳朵土土垚~💖💖 ,欢迎大家点赞🥳🥳关注💥💥收藏🌹🌹🌹 💥个人主页&#x…

网络网络层之(3)IPv6地址

网络网络层之(3)IPv6协议 Author: Once Day Date: 2024年4月2日 一位热衷于Linux学习和开发的菜鸟,试图谱写一场冒险之旅,也许终点只是一场白日梦… 漫漫长路,有人对你微笑过嘛… 全系列文档可参考专栏:通信网络技术_Once-Day的…

11-LINUX--信号

一.信号的基本概念 信号是系统响应某个条件而产生的事件,进程接收到信号会执行相应的操作。 与信号有关的系统调用在“signal.h”头文件中有声明 常见信号的值,及对应的功能说明: 信号的值在系统源码中的定义如下: 1. #define …

docker容器环境安装记录(MAC M1)(完善中)

0、背景 在MAC M1中搭建商城项目环境时,采用docker统一管理开发工具,期间碰到了许多环境安装问题,做个总结。 1、安装redis 在宿主机新建redis.conf文件运行创建容器命令,进行容器创建、端口映射、文件挂载、以指定配置文件启动…

如何备考2024年AMC10:吃透2000-2023年1250道真题(限时免费送)

2024年AMC10美国数学竞赛还有6个多月就要启动了,那么如何在AMC10比赛中取得好成绩呢?一个被实践的方法是:系统研究和吃透AMC10的历年真题。即使不参加AMC10竞赛,掌握了这些知识和解题思路后初中和高中数学会学得比较轻松、游刃有余…

Spatio-Temporal Pivotal Graph Neural Networks for Traffie Flow Forecasting

摘要:交通流量预测是一个经典的时空数据挖掘问题,具有许多实际应用。,最近,针对该问题提出了各种基于图神经网络(GNN)的方法,并取得了令人印象深刻的预测性能。然而,我们认为大多数现有方法忽视了某些节点(称为关键节点)的重要性,这些节点自然地与多个其他节点表现出…

腾讯云服务器99元一年是真的吗?真的,99元服务器申请入口

腾讯云服务器99元一年是真的吗?真的,99元优惠购买入口 txybk.com/go/99 折合每天8元1个月,腾讯云99元服务器配置为2核2G4M带宽,2024年99元服务器配置最新报价为99元一年,续费也是99元,如下图: …

色彩在设计中的重要性

title: 色彩在设计中的重要性 date: 2024/4/6 19:08:21 updated: 2024/4/6 19:08:21 tags: 色彩心理品牌识别用户体验文化差异创意设计视觉传达易读性 色彩是设计中不可或缺的元素,它不仅可以影响人的情绪和心理状态,还可以在品牌识别、用户体验、文化差…

最短路计数

题目描述 给出一个 N 个顶点 M 条边的无向无权图,顶点编号为 1∼N。问从顶点 1 开始,到其他每个点的最短路有几条。 输入描述 第一行包含 2 个正整数 N,M,为图的顶点数与边数。 接下来 M 行,每行两个正整数 x,y,表示…

ELK报错,索引变成只读状态。

问题描述 今天发现当天的索引在ES中并没有创建,logstash中不停的报错: [2021-05-24T05:47:51,904][INFO ][logstash.outputs.elasticsearch] retrying failed action with response code: 403 ({“type”>“cluster_block_exception”, “reason”&g…