队列、环形队列

import java.util.Scanner;

public class ArrayQueue {
    public static void main(String[] args) {



    }
}
class  ArrayQueueDemo{
    private final int maxSize;
    private  int front;
    private  int rear;
    private  int[] arr;

    public ArrayQueueDemo(int arrMaxSize){
        maxSize = arrMaxSize;
        arr = new int[maxSize];
        front = 0;
        rear = 0;
    }
    public  boolean isFull(){
        return  (rear=+1%maxSize)==front;
    }

    public  boolean isEmpty(){
        return rear == front;
    }

    public  void  addQueue(int n){
        if(isFull()){
            System.out.println("队列已满,不能加入数据~");
        }
        arr[rear] = n;
        rear=(rear+1)%maxSize;
    }
    public int getQueue(){
        if (isEmpty()){
            throw new RuntimeException("队列为空,不能取数据!");
        }
       int value= arr[front];
        front=(front+1)%maxSize;
        return value ;
    }
    public void  showQueue(){
        if (isFull()){
            System.out.println("队列为空,没有数据!");
        }
        for (int i = front; i 

稀疏数组

public class SparsArray {
    public static void main(String[] args) {

        int[][] chessArr =new int[11][11];
        chessArr[1][2] = 1;
        chessArr[2][3] = 2;
        int count=0;
        for (int[] c : chessArr) {
            for (int j = 0; j < 11; j++) {
                if (c[j] != 0) {
                    count++;
                }
            }
        }

        System.out.println("原始数组");
        for (int i = 0; i < 11; i++) {
            for (int j = 0; j < 11; j++) {
                System.out.print(chessArr[i][j]);
                System.out.print(" ");
            }
            System.out.println();
        }



        int[][] chessArr1=new int[count+1][3];

        chessArr1[0][0] = 11;
        chessArr1[0][1] = 11;
        chessArr1[0][2] = count;
        int sum=0;
        for (int i = 0; i 

你可能感兴趣的:(java,算法,开发语言)