色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

java棧和隊列常用方法

錢瀠龍1年前8瀏覽0評論

在Java中,棧和隊列是非常常用的數據結構。棧(Stack)是一種后進先出(LIFO,Last In First Out)的數據結構,隊列(Queue)是一種先進先出(FIFO,First In First Out)的數據結構。Java提供了棧和隊列的常用方法,讓我們可以方便地對它們進行操作。

首先,讓我們來看看棧的常用方法。

public class Stack {
private ArrayList<Object> stack;
public Stack() {
stack = new ArrayList<Object>();
}
public void push(Object obj) {
stack.add(obj);
}
public Object pop() {
Object obj = stack.get(stack.size() - 1);
stack.remove(stack.size() - 1);
return obj;
}
public Object peek() {
return stack.get(stack.size() - 1);
}
public boolean isEmpty() {
return stack.isEmpty();
}
}

上面是一個簡單的棧實現。其中,push()方法用于向棧中壓入一個元素;pop()方法用于從棧中彈出一個元素;peek()方法用于獲取棧頂元素但不彈出;isEmpty()方法用于檢查棧是否為空。使用棧時,我們可以通過調用這些方法來進行操作。

接下來,讓我們看看隊列的常用方法。

public class Queue {
private LinkedList<Object> queue;
public Queue() {
queue = new LinkedList<Object>();
}
public void add(Object obj) {
queue.add(obj);
}
public Object remove() {
return queue.remove();
}
public Object peek() {
return queue.peek();
}
public boolean isEmpty() {
return queue.isEmpty();
}
}

上面是一個簡單的隊列實現。其中,add()方法用于向隊列末尾添加一個元素;remove()方法用于從隊列頭部移除一個元素;peek()方法用于獲取隊列頭部元素但不移除;isEmpty()方法用于檢查隊列是否為空。使用隊列時,我們可以通過調用這些方法來進行操作。

總結一下,棧和隊列都是非常實用的數據結構,而Java的棧和隊列常用方法也非常簡單易懂。除了上述常用方法外,Java還提供了一些其他的方法和API,可以根據具體的需求進行使用。