package OrderedLists;
public class Head {
public String name; public int size() { return sz; }
public Link first() { return fst;} public Link last() { return lst;}
protected Link fst; protected Link lst; protected int sz = 0;
public void into (Link X) {
if (X == null) System.out.println("can't put null into");
else {
if (lst == null) { X.prv = X.nxt = X; lst = fst = X;}
else { lst.nxt = X; fst.prv = X; X.nxt = fst; X.prv = lst; lst = X; }
sz++; X.myhead = this;
}
} // end into
public void inorder (Link X) {
if (X == null ) System.out.println("can't put null inorder");
else { if (lst == null) { X.prv = X.nxt = X; lst = fst = X;
sz++; X.myhead = this; }
else { Link Y = fst;
while (Y.ev_time <= X.ev_time && Y != lst) Y = Y.nxt;
if ( Y == lst && Y.ev_time <= X.ev_time ) this.into(X);
else X.before(Y); } }
} // end inorder
Previous slide | Next slide | Back to first slide | View graphic version |