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

A connection between real-life and programmatic queues

Queues are an intuitive concept that can easily be related to our everyday life, such as when you stand in line to board a plane at the airport. In an actual line of people, you will see the following:

  • People typically enter at one end of the line and exit from the other end
  • If person A enters the line before person B, person A will also leave the line before person B (unless person B has more priority)
  • Once everyone has boarded the plane, there will be no one left in the line. In other words, the line will be empty

In computer science, a queue works in a considerably similar way:

  • Elements can be added to the end of the queue; this task is called enqueue.
  • Elements can also be removed from the beginning of the queue; this task is called dequeue.
  • In a First In First Out (FIFO) queue, the elements that are added first will be removed first (hence, the name FIFO). This is contrary to another common data structure in computer science, called stack, in which the last element that is added will be removed first. This is known as Last In First Out (LIFO).
  • If all of the elements inside of a queue have been removed, the queue will be empty and there will be no way to remove further elements from the queue. Similarly, if a queue is at the maximum capacity of the number of elements it can hold, there is no way to add any other elements to the queue:

A visualization of the queue data structure
主站蜘蛛池模板: 崇义县| 韶山市| 内乡县| 南投市| 梁平县| 高安市| 汉阴县| 营山县| 龙南县| 剑阁县| 白朗县| 卢湾区| 盐津县| 孙吴县| 大方县| 盐山县| 新民市| 长汀县| 陈巴尔虎旗| 平顶山市| 连南| 司法| 林甸县| 成武县| 华安县| 高清| 蛟河市| 鄂尔多斯市| 肥西县| 乐清市| 张家口市| 庆安县| 班戈县| 普格县| 临海市| 襄汾县| 澳门| 资讯 | 辛集市| 孝感市| 浮梁县|