队列加分作业

队列加分作业

作业要求:

  1. 用实现循环队列
  2. 参考PPT用循环队列打印杨辉三角
  3. 用JDB或IDEA单步跟踪排队情况,画出队列变化图,包含自己的学号信息
  4. 把代码推送到代码托管平台
  5. 把完成过程写一篇博客:重点是单步跟踪过程和遇到的问题及解决过程
  6. 提交博客链接

代码实现:

基于循环队列实现杨辉三角:

public class YanghuiTriangle {
    final static int LINE_NUM = 10;
    final static int BASIC_NUM = 1;
    public static void main(String[] args) {
        int before = 0, after = 0;
        MyCircularArrayQueue<Integer> queue = new MyCircularArrayQueue<>();

        System.out.println(BASIC_NUM);
        for (int n = 0; n <= LINE_NUM; n++){
            int temp;
            for (int j = 0;j <= n;j++){
                if(j==0){
                    queue.enqueue(BASIC_NUM);
                } else if (j==n){
                    queue.enqueue(BASIC_NUM);
                    temp = queue.dequeue();
                    System.out.printf(temp+"\n");
                }else {
                    temp = queue.dequeue();
                    System.out.printf(temp + " ");
                    temp += queue.first();
                    queue.enqueue(temp);
                }
            }
        }
    }
}

单步跟踪

94ba614d0e64dfb37764c4e58baa624b.png

posted @ 2017-10-22 16:51  20162308马平川  阅读(111)  评论(1编辑  收藏  举报