class DoubleLine{
student head=new student(0,"");
//不按顺序添加
public void addStudent1(student s1){
student temp=head;
while (temp.next!=null){
temp=temp.next;
}
temp.next=s1;
s1.pre=temp;
}
//按顺序添加
public void addStudent2(student s1){
student temp=head;
boolean isFlag = false;
while(true){
if(temp.next==null){
isFlag=true;
break;
}
if(temp.next.getNo()>s1.getNo()){//对象加在链表中间
s1.next=temp.next;
s1.pre=temp;
temp.next.pre=s1;
temp.next=s1;
return;
}else if(temp.next.getNo()==s1.getNo()){
break;
}
temp=temp.next;
}
if(isFlag){//对像加在链表末尾
s1.pre=temp;
temp.next=s1;
return;
}else{
System.out.println("已存在该排名");
return;
}
}
public void delete(student s1){
student temp=head;
boolean isFlag=false;
while (true){
if (temp.next==null){
break;
}
temp=temp.next;
if (temp.getNo()==s1.getNo()){
isFlag=true;
break;
}
}
if (isFlag){
temp.pre.next=temp.next;
temp.next.pre=temp.pre;
return;
}else{
System.out.println("没有这个人,删除失败");
return;
}
}
public void list(){
student temp=head;
while (temp.next!=null){
temp=temp.next;
System.out.println(temp.toString());
}
return;
}
}
这个专题将作为数据结构的学习笔记,记录自己的学习过程,多的话也不讲了,也希望能对自学的小伙伴有一定的帮助!