edgestack.java
来自「个人学习图算法时写的源码 包括最小生成树, 最大网络流, DSF遍历, BSF」· Java 代码 · 共 37 行
JAVA
37 行
package twf.weightedgraph.common;
import twf.weightedgraph.Edge;
public class EdgeStack {
private int capacity, cur;
private Edge[]edge;
public EdgeStack(int maxN) {
this.capacity = maxN;
edge = new Edge[maxN];
}
public boolean empty() {
return cur == -1;
}
public void push(Edge e) {
if (cur + 1 >= capacity) {
Edge[] ee = new Edge[capacity*2];
for (int i = 0; i < capacity; i++) ee[i] = edge[i];
edge = ee;
capacity *= 2;
}
edge[++cur] = e;
}
public Edge pop() {
if(cur == -1) {
throw new RuntimeException("Emty stack!");
}
return edge[cur--];
}
public Edge top() {
if (cur == -1) {
throw new RuntimeException("Empty stack!");
}
return edge[cur];
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?