官术网_书友最值得收藏!

How it works...

Most of the interface of VecDeque is identical to Vec. You can even optimize them the same way with with_capacity and its swap_remove equivalents. The differences come from the fact that VecDeque is more oriented around access from both ends. As such, multiple methods from Vec that implicitly affect the last element have two equivalents in VecDeque: one for the front, and one for the back. These are:

  • push, which becomes push_front [46] and push_back [11]
  • pop, which becomes pop_front [16] and pop_back [55]
  • swap_remove, which becomes remove_front [78] and remove_back [73]

A VecDeque has the ability to freely append or remove elements from both ends in a performant way, which makes it an ideal candidate for a First In, First Out (FIFO) queue [24]. In fact, this is how it's nearly always used.

When you see yourself in a situation where you want to respond to any kind of requests in the order they arrive in and remove them again afterwards, a VecDeque is an ideal tool for the job.

主站蜘蛛池模板: 阳信县| 锡林郭勒盟| 余江县| 沂水县| 措勤县| 阿克陶县| 永宁县| 灵台县| 和田县| 阿坝县| 绥阳县| 上思县| 莱西市| 上杭县| 娄烦县| 尉犁县| 那坡县| 朝阳区| 姚安县| 彭州市| 虹口区| 高尔夫| 南雄市| 读书| 美姑县| 乐安县| 咸阳市| 昌江| 吴江市| 镇康县| 桃园县| 桃江县| 广河县| 宜丰县| 钟山县| 巧家县| 清远市| 大新县| 琼结县| 榕江县| 香格里拉县|