Design and implement queue insertion and deletion algorithms that allow all array elements to be occupied when the queue is full (With the present implementation one array location must always be kept free (e.g. only a maximum of 9 queue elements can be maintained in an array size of 10). It is possible to implement algorithms for queue insertion and deletion that allow all elements of the array to be occupied when the queue-full condition applies. The penalty for this is extra tests during insertion and deletion.).