導航:首頁 > 編程語言 > 隊列java

隊列java

發布時間:2022-01-12 21:17:43

Ⅰ 怎樣用java代碼實現一個隊列

class Stack<T> {
private Vector<T> v;
public Stack(){
v = new Vector<T>();
}

public T pop(){
if (v.size()==0) return null;
return v.get(v.size()-1);
}

public void push(T t){
v.add(t);
}

public boolean isEmpty(){
return v.size()==0;
}
}

class Queue<T>{
private Vector<T> v;
public Queue(){
v = new Vector<T>();
}
//入隊列
public void enqueue(T t){
v.add(t);
}

//出隊列
public T dequeue(){
if (v.size()==0) return null;
return v.get(0);
}

public boolean isEmpty(){
return v.size() == 0;
}
}

Ⅱ java中秒殺使用的隊列

首先說 隊列這種數據結構你應該了解吧 。
可以用JDK自帶的 或者自己實現的也行,你問的如何實現隊列是指的隊列這中數據結構? 如果是 ,那你還是自己看數據結構那本書,原理都一樣 跟語言無關, 你可用JDK自帶的幾種隊列 查看JDKAPI文檔 實現了Queue介面的各種隊列基本都有,比如 線程安全的 ConcurrentLinkedQueue 這個是一個無界的線程安全的隊列 或者 ArrayBlockingQueue 這個隊列實現是一個有界阻塞隊列 都能夠實現你說的 或者 你用非線程安全的也成 只不過你自己控制線程的安全性就好了;.

Ⅲ 在java中,什麼是隊列

好比現實生活中排隊先進先出

Ⅳ 用java實現循環隊列

簡單寫了下,希望你能看明白

import java.util.ArrayList;

public class SeqQueue {

ArrayList<String> list;

public SeqQueue() {
list = new ArrayList<String>();
}

public String getFirst() {
if (!list.isEmpty()) {
String s = list.get(0);
list.remove(0);
return s;
}
return null;
}

public void insertLast(String s) {
list.add(s);
}

public static void main(String[] args) {
SeqQueue seq = new SeqQueue();
seq.insertLast("111");
seq.insertLast("222");
seq.insertLast("333");
System.out.println(seq.getFirst());
System.out.println(seq.getFirst());
System.out.println(seq.getFirst());
}

}

Ⅳ java中怎麼實現隊列

public class Queue<E> {
private Object[] data=null;
private int maxSize; //隊列容量
private int front; //隊列頭,允許刪除
private int rear; //隊列尾,允許插入

//構造函數
public Queue(){
this(10);
}

public Queue(int initialSize){
if(initialSize >=0){
this.maxSize = initialSize;
data = new Object[initialSize];
front = rear =0;
}else{
throw new RuntimeException("初始化大小不能小於0:" + initialSize);
}
}

//判空
public boolean empty(){
return rear==front?true:false;
}

//插入
public boolean add(E e){
if(rear== maxSize){
throw new RuntimeException("隊列已滿,無法插入新的元素!");
}else{
data[rear++]=e;
return true;
}
}

//返回隊首元素,但不刪除
public E peek(){
if(empty()){
throw new RuntimeException("空隊列異常!");
}else{
return (E) data[front];
}
}

//出隊
public E poll(){
if(empty()){
throw new RuntimeException("空隊列異常!");
}else{
E value = (E) data[front]; //保留隊列的front端的元素的值
data[front++] = null; //釋放隊列的front端的元素
return value;
}
}

//隊列長度
public int length(){
return rear-front;
}
}

Ⅵ java 中的隊列都有哪些,有什麼區別

阻塞隊列與普通隊列的區別在於,當隊列是空的時,從隊列中獲取元素的操作將會被阻塞,或者當隊列是滿時,往隊列里添加元素的操作會被阻塞。試圖從空的阻塞隊列中獲取元素的線程將會被阻塞,直到其他的線程往空的隊列插入新的元素。同樣,試圖往已滿的阻塞隊列中添加新元素的線程同樣也會被阻塞,直到其他的線程使隊列重新變得空閑起來,如從隊列中移除一個或者多個元素,或者完全清空隊列.

Ⅶ java 隊列

java類庫有Queue類,但是如果樓主想自己定義隊列的話,可以模仿C++指針定義隊列的方式。java和C#雖然沒有指針,但是它們的對象默認都是傳引用的,也就像指針傳遞地址一樣,呵呵。

Ⅷ java中的隊列都有哪些,有什麼區別

阻塞隊列、普通隊列,非阻塞隊列。

阻塞隊列與普通隊列的而區別在於,當隊列是空時,從隊列中獲取元素的操作會被阻塞,或則當隊列是滿的時,往隊列中增加元素會被阻塞,試圖從空的隊列中取元素的線程或從滿的隊列中添加元素的線程同樣會被阻塞。

閱讀全文

與隊列java相關的資料

熱點內容
三菱plc組態編程視頻 瀏覽:13
音頻相似度演算法 瀏覽:756
雲伺服器技術架構 瀏覽:516
python爬網頁源碼 瀏覽:525
pdf轉wordwps 瀏覽:544
hue命令 瀏覽:614
stl核心源碼 瀏覽:530
qnxdate修改時間命令 瀏覽:610
安卓機的推送消息怎麼關閉 瀏覽:993
伺服器做什麼好 瀏覽:730
18輟學做程序員 瀏覽:873
高一對數的運演算法則及公式 瀏覽:498
壓縮二分之一以上做骨水泥手術 瀏覽:360
伺服器怎麼讓文件可以下載地址 瀏覽:190
加密貨幣2021年市值 瀏覽:840
安卓19怎麼玩俠盜飛車 瀏覽:138
農業經濟學pdf 瀏覽:724
有什麼分享軟體的app 瀏覽:44
電腦文件加密的文件怎麼找出來 瀏覽:89
Java實現sha 瀏覽:527