priorityqueuejava 优先队列(priority queue)中,提取第二优先级的值并删除,但是不删除第一优先值的数,怎么实现?

priorityqueue  时间:2021-06-22  阅读:()

求大家帮忙 关于C语言里的queue

这是链表的,部分是c++的输入输出,改一下cout,cin换成printf,scanf就行了 #include #include #define MAX 30 using namespace std; typedef struct pqueue { char str[MAX]; int priority; pqueue* next; }pqueue; int enqueuepriority(pqueue *&pq, char str[MAX], int priority) { if(priority>0) { pqueue *p=(pqueue*)malloc(sizeof(pqueue)); for(int i=0;istr[i]=str[i]; p->priority=priority; p->next=pq->next; pq->next=p; return 1; } else return 0; } char* dequeue(pqueue *&pq) { pqueue *p; if(pq->next!=NULL) { p=pq->next; pq->next=pq->next->next; return p->str; } else return ""; } int main() { cout<<"(1) Enqueue (single)"<next=NULL; while(re!=5) { cout<<"Choose an action:"; cin>>re; switch(re) { case 1: cout<<"Enter a name to save and its priority"<next!=NULL) { printf("%s ",dequeue(pq)); } break; case 5: break; default: cout<<"INPUT ERROR!!"<什么是优先队列?优先队列(priority queue)普通的队列是一种先进先出的数据结构,元素在队列尾追加,而从队列头删除。

在优先队列中,元素被赋予优先级。

当访问元素时,具有最高优先级的元素最先删除。

优先队列具有最高进先出 (largest-in,first-out)的行为特征。

java 优先队列(priority queue)中,提取第二优先级的值并删除,但是不删除第一优先值的数,怎么实现?

你要的是这样的效果么 public?static?void?main(String[]?args)?{ ??PriorityQueue?pq?=?new?PriorityQueue(); ??pq.add(5); ??pq.add(2); ??pq.add(3); ??pq.add(4); ??System.out.println("取出了"+pq.poll()+",队列剩余"+Arrays.toString(pq.toArray())); ??/** ???*?假设3是我不满意的值,我要取到3后面的值 ???*/ ??if(pq.peek()==3){ ???System.out.println("3真不是我想要的,我可以接着往下处理么?ok,将3先保留吧"); ???int?a?=?pq.poll();//将当前的第一级优先的值暂存下来,等第二级优先的值取出后再将其加入 ???pq.poll(); ???pq.add(a); ???System.out.println("队列剩余"+Arrays.toString(pq.toArray())); ??} ??System.out.println("取出了"+pq.poll()+",队列剩余"+Arrays.toString(pq.toArray()));? ?}打印效果: 取出了2,队列剩余[3, 4, 5] 3真不是我想要的,我可以接着往下处理么?ok,将3先保留吧 队列剩余[3, 5] 取出了3,队列剩余[5] ? 我觉得这个是优先队列,虽然poll时候会将优先级高的数据先取出,但是同样的,如果加进去是高优先级的数据 下次取的时候它依然还是高优先级的数据。

  • priorityqueuejava 优先队列(priority queue)中,提取第二优先级的值并删除,但是不删除第一优先值的数,怎么实现?相关文档

HostYun(25元)俄罗斯CN2广播IP地址

从介绍看啊,新增的HostYun 俄罗斯机房采用的是双向CN2线路,其他的像香港和日本机房,均为国内直连线路,访问质量不错。HostYun商家通用九折优惠码:HostYun内存CPUSSD流量带宽价格(原价)购买地址1G1核10G300G/月200M28元/月购买链接1G1核10G500G/月200M38元/月购买链接1G1核20G900G/月200M68元/月购买链接2G1核30G1500G/月...

ZoeCloud:香港BGP云服务器,1GB内存/20GB SSD空间/2TB流量/500Mbps/KVM,32元/月

zoecloud怎么样?zoecloud是一家国人商家,5月成立,暂时主要提供香港BGP KVM VPS,线路为AS41378,并有首发永久8折优惠:HKBGP20OFF。目前,解锁香港区 Netflix、Youtube Premium ,但不保证一直解锁,谢绝以不是原生 IP 理由退款。不保证中国大陆连接速度,建议移动中转使用,配合广州移动食用效果更佳。点击进入:zoecloud官方网站地址zo...

vpsdime:夏日促销活动,美国达拉斯VPS,2G内存/2核/20gSSD/1T流量,$20/年

vpsdime怎么样?vpsdime是2013年注册的国外VPS主机商,实际上他还有一系列的其他域名站点如Winity.io, Backupsy,Cloudive, Virtora等等,母公司“Nodisto IT”相对来说还是很靠谱了的商家。VPSDime主要提供各种高配低价VPS套餐,其中Linux VPS和存储VPS基于OpenVZ架构,高级VPS基于KVM。VPSDime在上个季度的Low...

priorityqueue为你推荐
时间刻度excel横坐标中时间刻度如何设置成整点?mergefield邮件合并日期,想让电子表格中的日期格式与WORD中的日期格式一致素数算法100以内的质数C算法,要步骤说明,谢谢。youtube创始人世界第一大网站是什么?上行宽带上行宽带是什么?怎么查微信注册时间怎么知道微信上次登录时间怎样删除聊天记录怎么批量清除微信聊天记录空间导航QQ空间中如何自定义导航?云家政网腾讯网的网址是多少?flex是什么Adobe是什么软件?
asp虚拟主机 新网域名解析 59.99美元 免费网站监控 鲜果阅读 ssh帐号 空间服务商 牛人与腾讯客服对话 免费网站申请 dd444 什么是刀片服务器 日本bb瘦 刀片服务器是什么 服务器维护方案 200g硬盘 创建邮箱 德隆中文网 iki 免备案cdn加速 hosting24 更多