本文介绍了什么是POP的队列等价物?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

import java.util.PriorityQueue;
import java.util.Scanner;
import java.util.Stack;

public class QS {
	 public static void main(String[] args) {
	        Scanner scan = new Scanner(System.in);
	        String input = scan.nextLine();
	        scan.close();
	char[] s = input.toCharArray();
	PriorityQueue<Character> queue=new PriorityQueue<Character>();
    Stack<Character> st = new Stack<Character>();
    for (char c : s) {
        st.push(c);
        queue.add(c);
    }
    System.out.println("STACK .... ");
    for(int i =0;i<input.length();i++){
    	System.out.println(st.pop());
    }
    System.out.println("QUEUE .... ");
    for(int i =0;i<input.length();i++){
    System.out.println(queue.poll());
    }
    }
}





我尝试了什么:





What I have tried:

I / O:



racecar

STACK ....

r

a

c

e

c

a

r

QUEUE ....

a

a

c

c
$ b $

r

r


racecar
STACK ....
r
a
c
e
c
a
r
QUEUE ....
a
a
c
c
e
r
r



我也在寻找赛车作为队列的输出..我哪里出错了?


I am looking for "racecar" as output from the queue too.. Where am I going wrong ?

推荐答案

import java.util.LinkedList;
import java.util.Scanner;
import java.util.Stack;

public class QS {
   public static void main(String[] args) {
          Scanner scan = new Scanner(System.in);
          String input = scan.nextLine();
          scan.close();
  char[] s = input.toCharArray();
  LinkedList<Character> queue=new LinkedList<Character>();
    Stack<Character> st = new Stack<Character>();
    for (char c : s) {
        st.push(c);
        queue.add(c);
    }
    System.out.println("STACK .... ");
    for(int i =0;i<input.length();i++){
      System.out.println(st.pop());
    }
    System.out.println("QUEUE .... ");
    for(int i =0;i<input.length();i++){
    System.out.println(queue.poll());
    }
    }
}


这篇关于什么是POP的队列等价物?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

05-27 00:06
查看更多