数据结构-队列

作者: Airycode | 来源:发表于2018-04-23 10:10 被阅读7次

    上一节我们讲解了解密QQ号,我们就用到队列的性质,队列是一种特殊的线性结构,它只允许在队列的首部进行删除操作,我们称为“出队”,而在队列的尾部进行插入的操作我们称为"入队";队列是我们以后学习广度优先搜索用到的核心数据结构。
    代码实现:

    import java.util.Scanner;
    
    
    public class QueueApp {
    
        static class Queue{
            int data[] = new int [100];
            int head;//队首
            int tail;//队尾
        }
        
        public static void main(String[] args) {
            Scanner input = new Scanner(System.in);
            Queue queue = new Queue();
            //初始化队列
            queue.head = 1;
            queue.tail = 1;
            
            //向队列中插入数据
            for (int i=1;i<=9;i++) {
                queue.data[i] = input.nextInt();
                queue.tail++;
            }
            
            //当队列不为空的时候执行循环
            while (queue.head < queue.tail) {
                //打印队首并将队首出队
                System.out.print(queue.data[queue.head]+" ");
                queue.head++;
                
                //先将新队首的数添加到队尾
                queue.data[queue.tail] = queue.data[queue.head];
                queue.tail++;
                //再将队首出队
                queue.head++;
            }
            
        }
        
    }
    
    

    相关文章

      网友评论

        本文标题:数据结构-队列

        本文链接:https://www.haomeiwen.com/subject/pjlxlftx.html