public class linlist {
public class linlistnode {
linlistnode next;
linlistnode prev;
String val;
}
linlistnode head;
linlist (String val) {
this.head = new linlistnode;
head.next = null;
head.prev = head;
head.val = val;
}
linlistsort () {
linlistnode ptr1;
linlistnode ptr2;
for (ptr1 = head; ptr1 != null; ptr1 = ptr1.next) {
for (ptr2 = ptr1.next; ptr2 != null; ptr2 = ptr2.next) {
if (ptr2.val <= ptr1.val) {
}
}
}
}
linlistinsertsorted (String val);
linlistinsertend (String val);
linlistinserhead (String val);
linlistinsertafter (linlistnode p, String val);
linlistinsertprev (linlistnode p, String val);
linlistinsertafter (linlistnode p, linlistnode q) {
q.next = p.next;
q.prev = p;
p.next = q;
}
linlistinsertprev (linlistnode p, linlistnode q) {
q.prev = p.prev;
q.next = p;
p.prev = q;
}
linlistexch (linlistnode p, linlistnode q) {
linlistnode ptr;
ptr1 = p;
ptr2 = q;
p.next.prev = q;
p.prev.next = q;
q.next = p.next;
q.prev = p.prev;
ptr2.next.prev = ptr2
ptr1.next = ptr2.next;
ptr1.prev = ptr2.prev;
}
linlistprint ();
linlistsearch (String val);
linlistdelete (int pos);
linlistdelete (boolean firstorend);
linlistdelete (linlistnode elem);
}
public class Testlinlist {
}