dado mi método de extensión actual:LINQ consulta
public static List<char> rotate(this List<char> currentList, int periodes) {
if (periodes != 1) {
int x = currentList.Count() - 1;
return rotate(currentList.Skip(x).
Concat(currentList.Take(x)).ToList<char>(), periodes - 1);
}
return currentList;
}
estado original:
ring = new List<char>() { 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j' };
El resultado actual de ring.rotate(10);
J A B C D E F G H I
I J A B C D E F G H
H I J A B C D E F G
G H I J A B C D E F
F G H I J A B C D E Recursive Steps
E F G H I J A B C D
D E F G H I J A B C
C D E F G H I J A B
B C D E F G H I J A
A B C D E F G H I J Result
¿Hay alguna forma de deshacerse de este bucle while y la posibilidad de integrar la repetición en la consulta LINQ?
Mejor
Henrik
así .. sus resultados deben estar bien .. Rotación de 10 elementos 10 veces deben resultar en el estado original. –
¿Qué es 'gesamtRing'? ¿Es "A B C D E F G H I J" o es el resultado después de 1 rotación? – dtb
agregó el valor original de anillo. –