2010-10-16 10 views
5

Oto co właśnie napisał:Najlepszy styl dla iteracja dwóch list unisono

public void mutate(){ 
    ListIterator<Double> git = genome.listIterator(); 
    Iterator<Double> mit = mutationStrategies.iterator(); 
    while (git.hasNext() && mit.hasNext()){ 
     git.set(alleleUpdate(git.next(), mit.next())); 
    } 

} 

Jest to najbardziej wydajny i najwyraźniejszy sposób to robić? Trzeba tylko wiedzieć, że lista genomu ustawia swoje wartości zgodnie z pewną funkcją, która przyjmuje swoją obecną wartość i aktualną wartość mutationStrategies. (Jeśli jesteście na poziomie ewolucyjnym, to jest to dla algorytmu strategii ewolucji).

Odpowiedz

2

Trudno sobie wyobrazić, jak mogłoby być mocniej. "Zastąp każdy git (cokolwiek to jest) zmutowaną wersją samego siebie, zatrzymując się, jeśli zabraknie strategii mutacji."