zoukankan      html  css  js  c++  java
  • 自定义队(四)

    队列的特点和栈相反,先进先出,同样用数组实现队列。

       队列插入

       1、创建一个新的数组,大小比原来的数组长度大一。

       2、把原来的数组的值赋值到新数组

       3、新数组插入最新元素

       4、新数组赋值给原数组

    public class MyQuene {
    
        int[] elements;
    
        public void push(int value) {
            int[] newArr = new int[elements.length + 1];
            for (int i = 0; i < elements.length; i++) {
                newArr[i] = elements[i];
            }
            newArr[elements.length] = value;
            elements = newArr;
        }
    
    }

    出队列  先进先出

       1、创建一个新的数组,大小比原来的数组长度小一。

       2、给新数组赋值,把原数组下标加1赋值到新数组。

    3、新数组赋值给原数组

    代码

    public class MyQuene {
    
        int[] elements;
    
            // 出队列 先进先出
        public int pop() {
            int result = elements[0];
            int[] newArr = new int[elements.length - 1];
            for (int i = 0; i < newArr.length; i++) {
                newArr[i] = elements[i + 1];
            }
            elements = newArr;
            return result;
        }
    
    }

    自定义队列

    public class MyQuene {
    
        int[] elements;
    
        public MyQuene() {
            elements = new int[0];
        }
    
        public void push(int value) {
            int[] newArr = new int[elements.length + 1];
            for (int i = 0; i < elements.length; i++) {
                newArr[i] = elements[i];
            }
            newArr[elements.length] = value;
            elements = newArr;
        }
    
        // 出队列 先进先出
        public int pop() {
            int result = elements[0];
            int[] newArr = new int[elements.length - 1];
            for (int i = 0; i < newArr.length; i++) {
                newArr[i] = elements[i + 1];
            }
            elements = newArr;
            return result;
        }
    
        public int size() {
            return elements.length;
        }
    
        public int peel() {
            return elements[0];
        }
    
        public void clear() {
            elements = new int[0];
        }
    
        public void show() {
            System.out.println(Arrays.toString(elements));
        }
    
        public boolean isEmpty() {
            return elements.length == 0;
        }
    
    }
  • 相关阅读:
    phpspider爬虫框架的使用
    【php设计模式】责任链模式
    【php设计模式】策略模式
    【php设计模式】观察者模式
    【php设计模式】模板模式
    【温故知新】php 魔术方法
    【php设计模式】享元模式
    Java50道经典习题-程序18 乒乓球赛
    Java50道经典习题-程序19 输入行数打印菱形图案
    Java50道经典习题-程序20 求前20项之和
  • 原文地址:https://www.cnblogs.com/laolei11/p/10642477.html
Copyright © 2011-2022 走看看