Hallo ,
ich hoffe ihr könnt mir helfen !Versuche eine Methode zu schreiben ,die das Maximum meiner Liste ermittelt .Hab aber leider gerade überhaupt keine Idee .Meine Liste:
Vielen Dank im vorraus
ich hoffe ihr könnt mir helfen !Versuche eine Methode zu schreiben ,die das Maximum meiner Liste ermittelt .Hab aber leider gerade überhaupt keine Idee .Meine Liste:
Java:
class ListenElement2{
ListenElement2 pre;
ListenElement2 next;
int inhalt;
ListenElement2(){};
ListenElement2(ListenElement2 ne,int in){
next=ne;
in=inhalt;
}
ListenElement2(ListenElement2 pr,ListenElement2 nex,int in){
pre=pr;
next=nex;
inhalt=in;
}
}
public class Liste2 {
ListenElement2 root;
boolean swap(int i,int j){//Methode zu vertauschen zweier Elemente
if(Math.max(i,j) >= laenge()){return false;}
else{
int aa = get(Math.min(i,j));
set(Math.min(i,j),get(Math.max(i,j)));
set(Math.max(i,j),aa);
}
return true;
}
boolean swap2(int i,int j){//Methode zu vertauschen zweier Elemente
if(Math.max(i,j) >= laenge()){return false;}
ListenElement2 l1 = root;
ListenElement2 l2 = root;
for(int k = 0 ; k < Math.max(i, j); k++){
if(k < Math.min(i,j)) l1 = l1.next;
l2 = l2.next;
}
ListenElement2 temp1 = null;
l1.pre.next = l2;
l2.pre.next = l1;
temp1 = l1.pre;
l1.pre = l2.pre;
l2.pre = temp1;
temp1 = l1.next;
l1.next = l2.next;
l2.next = temp1;
return true;
}
int laenge(){
int a = 0;
ListenElement2 b = root;
while(b != null){
b = b.next;
a++;}
return a;}
int get(int pos){
int erg = 0;
ListenElement2 b = root;
if(pos < 0 || this.laenge() < pos){ System.out.println("falscher Index"); return Integer.MAX_VALUE;}
else{
for(int i = 0; i < pos; i++){
b = b.next;}
erg = b.inhalt;
return erg;
}
}
boolean set(int pos, int val){
ListenElement2 b = root;
if(pos < 0 || this.laenge() < pos){ System.out.println("falscher Index"); return false;}
else{
for(int i = 0; i < pos; i++){
b = b.next;
}
b.inhalt = val;
return true;
}
}