定义节点
class Data {
public int no;
public Data next;
public Data() {
super();
}
public Data(int no) {
super();
this.no = no;
}
@Override
public String toString() {
return "Data [no=" + no + "]";
}
}
定义一个链表
class Josepfu {
Data data = new Data();
public Data create(int no) {
Data data1 = null;
if (no <= 0) {
System.out.println("输入数据不合法");
} else {
for (int i = 1; i <= no; i++) {
if (i == 1) {
data = new Data(1);
if(no==1){
data.next=data;
}
data1 = data;
}
else {
Data data2 = new Data(i);
data1.next = data2;
data1 = data1.next;
if(i==no){
data1.next = data;
}
}
}
}
return data;
}
public void show(){
Data data1 = data;
while(true){
if(data1.next==data){
System.out.println(data1);
break;
}
System.out.println(data1);
data1 = data1.next;
}
}
public Data show2(Data data1,int num){
for(int i = 1;i<num;i++){
data1 = data1.next;
}
System.out.println(data1.next);
data1.next = data1.next.next;
return data1.next;
}
}