all (flemme)

This commit is contained in:
2026-02-10 17:46:27 +01:00
parent ef6ca77dc6
commit e8a6bb9959
64 changed files with 1824 additions and 0 deletions

View File

@@ -0,0 +1,45 @@
import java.util.Iterator;
import java.util.NoSuchElementException;
/**
MonBrin code un brin d'ADN sous forme de liste simplement chaînée.
Plusieurs instances de MonMaillon reliées convenablement forment une structure de liste simplement chaînée contenant pour chaque maillon le nom de la base.
On n'utilise pas java.util et on recode tout.
Cette version a un problème : la structuration et la navigation sont dans la même classe.
*/
public class MonBrin implements Iterator<Base> {
private MonMaillon premier;
private MonMaillon courant;
public MonBrin(MonMaillon premier){
this.premier = premier;
this.courant = premier;
}
public MonMaillon getDebut(){
return this.premier;
}
// rappel : on met @Override pour dire au compilateur qu'on veut surcharger (en particulier c'est le cas quand on implémente une interface)
// ce n'est pas nécessaire dans ce cas mais ça permet d'avoir des messages d'alerte si on se trompe (typo dans le nom de la méthode ...)
// voir https://stackoverflow.com/questions/94361/when-do-you-use-javas-override-annotation-and-why
@Override
public boolean hasNext(){
return this.courant != null;
}
@Override
public Base next() {
Base base = this.courant.getBase();
this.courant = this.courant.getSuiteMaillon();
return base;
}
}