Losowa kollejnosc listy

0

Jak mozna pomieszac liste aby wpisy w niej mialy losowo przypisane indexy?

Albo jak podac i zwrocic liste z funkcji losowania kolejnosci ktora napisalem, bez wzgledu na to lista czego to jest. W sensie zeby taka funkcja obslugiwala zarowno List<string> jak i List<int>?

0

Raczej chodzilo mi o cos w stylu lista.mix(); :) Napisalem sobie nawet taka funkcje mieszajaca

private List<string> zmien_kolejnosc_listy(List<string> lista)
        {
            List<string> nowa_lista = new List<string>();
            Random los = new Random();
            while (lista.Count > 0)
            {
                int pole = los.Next(lista.Count-1);
                nowa_lista.Add(lista[pole]);
                lista.RemoveAt(pole);
            }           
            return nowa_lista;
        }

ale chcialbym aby dzialala ona bez wzgledu na to czego lista by to byla, wolal bym uniknac kopiowania 3 razy tej samej fukcji :)

0
private List<T> zmien_kolejnosc_listy<T>(List<T> lista)
        {
            List<T> nowa_lista = new List<T>();
            Random los = new Random();
            while (lista.Count > 0)
            {
                int pole = los.Next(lista.Count-1);
                nowa_lista.Add(lista[pole]);
                lista.RemoveAt(pole);
            }           
            return nowa_lista;
        }

1 użytkowników online, w tym zalogowanych: 0, gości: 1