- Go程序员面试算法宝典
- 猿媛之家组编 董良松 楚秦等编著
- 206字
- 2020-06-25 22:38:08
2.7 如何设计一个排序系统
难度系数:★★★★☆
被考查系数:★★★☆☆
题目描述:
请设计一个排队系统,能够让每个进入队伍的用户都能看到自己在队列中所处的位置和变化,队伍可能随时有人加入和退出;当有人退出影响到用户的位置排名时需要及时反馈到用户。
分析与解答:
本题不仅要实现队列常见的入队列与出队列的功能,而且还需要实现队列中任意一个元素都可以随时出队列,且出队列后需要更新队列用户位置的变化。实现代码如下:
![](https://epubservercos.yuewen.com/C814A1/14700476404565706/epubprivate/OEBPS/Images/88_01.jpg?sign=1739600171-Fqci1GHZ4dZw7R6G2OmFatiDwYgp4nCR-0-61020efa0b2cc071897a03c3a04bcef3)
![](https://epubservercos.yuewen.com/C814A1/14700476404565706/epubprivate/OEBPS/Images/89_01.jpg?sign=1739600171-YM0a5eN2p88O2ygRVGtrdSNtKiSDk2i4-0-83a0784bc6e3e10982a351f84126c8f7)
程序的运行结果为
![](https://epubservercos.yuewen.com/C814A1/14700476404565706/epubprivate/OEBPS/Images/89_02.jpg?sign=1739600171-hisCHj7bqg2lzWI1vtoS3Ptc2v2MBq6S-0-bd228ff9dbe6954287762aac309db070)