📄 elemlist.java
字号:
public class ElemList {
newElem head;
newElem last;
// *********************************************
public ElemList(){
/*initialize the head and last elements to null */
head = null;
last = null;
}
// *********************************************
public void insertFirst(newElem el)
{
if(emptyList()){
last = el;
head = el;
last.setNext(head);
head.setNext(last);
}
else {
head.setLast(el);
el.setNext(head);
el.setLast(last);
head = el;
last.setNext(head);
}
}
// *********************************************
public boolean emptyList()
{
return head == null;
}
// *********************************************
public int length(){
int cnt = 0;
newElem e = head;
while (e != last)
{
cnt++; e = e.getNext();
}
cnt++;
if(head == null) return 0;
else return cnt;
}
// *********************************************
/*sorting method*/
public void sortbyDirection()
{
int i;
newElem l = head;
newElem temp,next,end=last,begin = null;
int n = (int) this.length();
for(int j = 1;j<n-1;j++){
for(i=0;i<n-j;i++){
temp = l.getNext();
next = temp.getNext();
if(l.getDistance()>=temp.getDistance()){
temp.setNext(l);
l.setLast(temp);
l.setNext(next);
next.setLast(l);
end.setNext(temp);
temp.setLast(end);
if(i==0){
begin = temp;
}
}
else {
if(i==0){
begin = l;
}
l = l.getNext();
}
end = end.getNext();
}
l=begin;
end = begin.getLast();
}
head = begin;
last = begin.getLast();
}
// *********************************************
public void delete(newElem h){
newElem temp = this.getHead();
for (int i = 0;i<this.length();i++){
if(temp.equals(h)){
if(i==0){
last.setNext(temp.getNext());
this.setHead(temp.getNext());
}
else if(i==this.length()-1){
temp.getLast().setNext(temp.getNext());
this.setLast(temp.getLast());
}
else
temp.getLast().setNext(temp.getNext());
}
temp = temp.getNext();
}
}
// *********************************************
public void setLast(newElem h) { last = h; }
public newElem getLast() { return last; }
public void setHead (newElem h) { head = h; }
public newElem getHead() { return head; }
// *********************************************
public String toString()
{
String s = "";
newElem e;
e = head;
for(int i =0;i<this.length();i++)
{
s = s + e; e = e.getNext();
}
s+="*****************************************\n";
return s;
}
}
//*********************************************
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -