定义节点
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;
}
}