private void reduce() { stack.popInt(); }
private void reduce() { stack.popInt(); }
private void pass() { inter.push(stack.popInt()); }
private void pass() { inter.push(stack.popInt()); }
/** * Remove edge at position i. * * @param i Position of edge to be removed */ private void removeAt(int i) { // The order of the edges is irrelevant, so we can simply replace // the deleted edge with the rightmost element, thus achieving constant // time. if (i == neighbors.size() - 1) { neighbors.popInt(); } else { neighbors.set(i, neighbors.popInt()); } }
private static void remove(final IntArrayList queue, final int v, final int[] posInQueue) { final int position = posInQueue[v]; assert position < queue.size(); final int last = queue.popInt(); if (position == queue.size()) return; queue.set(posInQueue[last] = position, last); }
private void shift() { while (!inter.isEmpty()) stack.push(inter.popInt()); stack.push(input++); }
private void shift() { while (!inter.isEmpty()) stack.push(inter.popInt()); stack.push(input++); }
do var = variables.popInt(); while(weight[var] == 0); numActive++; idleNormalized[var / 64] ^= 1L << (var % 64); final int first = equationList.popInt(); // An equation of weight 0 or 1. final Modulo2Equation equation = equations.get(first); if (DEBUG) System.err.println("Looking at equation " + first + " of priority " + priority[first] + " : " + equation);
private void peel(final int x) { // System.err.println("Visiting " + x + "..."); final int[] vertex1 = this.vertex1; final int[] vertex2 = this.vertex2; final int[] edge = this.edge; final int[] stack = this.stack; final int[] d = this.d; final IntArrayList visitStack = this.visitStack; // Queue initialization int v; visitStack.clear(); visitStack.push(x); while (! visitStack.isEmpty()) { v = visitStack.popInt(); if (d[v] == 1) { stack[top++] = v; --d[v]; // System.err.println("Stripping <" + v + ", " + vertex1[v] + ", " + vertex2[v] + ">"); xorEdge(computeEdges ? edge[v] : -1, v, vertex1[v], vertex2[v], true); if (--d[vertex1[v]] == 1) visitStack.add(vertex1[v]); if (--d[vertex2[v]] == 1) visitStack.add(vertex2[v]); } } } }
do var = variables.popInt(); while(weight[var] == 0); numActive++; idleNormalized[var / 32] ^= 1L << (var % 32) * 2; final int first = equationList.popInt(); // An equation of weight 0 or 1. final Modulo3Equation equation = equations.get(first); if (DEBUG) System.err.println("Looking at equation " + first + " of priority " + priority[first] + " : " + equation);
private void peel(final int x) { // System.err.println("Visiting " + x + "..."); final int[] edge = this.edge; final int[] stack = this.stack; final int[] d = this.d; final IntArrayList visitStack = this.visitStack; // Stack initialization int v; visitStack.clear(); visitStack.push(x); final int[] edge2Vertex0 = edge2Vertex[0]; final int[] edge2Vertex1 = edge2Vertex[1]; final int[] edge2Vertex2 = edge2Vertex[2]; while (! visitStack.isEmpty()) { v = visitStack.popInt(); if (d[v] == 1) { stack[top++] = v; // System.err.println("Stripping <" + v + ", " + vertex1[v] + ", " + vertex2[v] + ">"); final int e = edge[v]; peeled[e] = true; xorEdge(e, v); if (--d[edge2Vertex0[e]] == 1) visitStack.add(edge2Vertex0[e]); if (--d[edge2Vertex1[e]] == 1) visitStack.add(edge2Vertex1[e]); if (--d[edge2Vertex2[e]] == 1) visitStack.add(edge2Vertex2[e]); } } }
else anc.jumpLeft = node; jumpStack.pop(); depthStack.popInt(); dirStack.push(false); else segmentStack.push(segmentStack.popInt() + 1); jumpStack.push(internalNode); depthStack.push(depth); internalNode.left = readNode(s, depth + 1, internalNode.extentLength + 1, map, leafStack, jumpStack, depthStack, segmentStack, dirStack); int top = segmentStack.popInt(); if (top != 1) segmentStack.push(top - 1); else dirStack.popBoolean(); dirStack.push(true); else segmentStack.push(segmentStack.popInt() + 1); jumpStack.push(internalNode); depthStack.push(depth); internalNode.right = readNode(s, depth + 1, internalNode.extentLength + 1, map, leafStack, jumpStack, depthStack, segmentStack, dirStack); top = segmentStack.popInt(); if (top != 1) segmentStack.push(top - 1); else dirStack.popBoolean();
while(minPriority < 8 && queue[minPriority].isEmpty()) minPriority++; if (minPriority == 8) return false; final int hinge = queue[minPriority].popInt(); int edge = -1; int minWeight = Integer.MAX_VALUE;
private void peel(final int x) { // System.err.println("Visiting " + x + "..."); final int[] edge = this.edge; final int[] stack = this.stack; final int[] d = this.d; final IntArrayList visitStack = this.visitStack; // Stack initialization int v; visitStack.clear(); visitStack.push(x); final int[] edge2Vertex0 = edge2Vertex[0]; final int[] edge2Vertex1 = edge2Vertex[1]; final int[] edge2Vertex2 = edge2Vertex[2]; final int[] edge2Vertex3 = edge2Vertex[3]; while (! visitStack.isEmpty()) { v = visitStack.popInt(); if (d[v] == 1) { stack[top++] = v; // System.err.println("Stripping <" + v + ", " + vertex1[v] + ", " + vertex2[v] + ">"); final int e = edge[v]; peeled[e] = true; xorEdge(e, v); if (--d[edge2Vertex0[e]] == 1) visitStack.add(edge2Vertex0[e]); if (--d[edge2Vertex1[e]] == 1) visitStack.add(edge2Vertex1[e]); if (--d[edge2Vertex2[e]] == 1) visitStack.add(edge2Vertex2[e]); if (--d[edge2Vertex3[e]] == 1) visitStack.add(edge2Vertex3[e]); } } }
int z; do { z = componentStack.popInt();
int z; do { z = componentStack.popInt();