Queue is an important data structure that has wide ranging applications. In this paper, we examine various operations of queues where we focus on numerous approaches to enter as well as delete elements and also display the contents of a queue. There are two major methods to implement queues, using arrays or linked lists. The benefits of these techniques are discussed along with their algorithms for the linked list implementation of queues. The major application of queues is in the scheduling of processes. Different scheduling algorithms have been designed with varying benefits. A brief overview of a few conventional algorithms is provided following which we implement two types of round robin algorithms using queues. The simple round robin algorithm makes use of a static time quantum while the smart round robin incorporates a dynamic time quantum. These algorithms are compared for different values of burst times of processes so as to show the effectiveness of smart round robin algorithm.