Jako narzędzie diagnostyczne chcę wyświetlić liczbę cykli na sekundę w mojej aplikacji. (Pomyśl klatek na sekundę w strzelance pierwszoosobowej).Prosta macierz okrągła (ruchoma średnia) w języku C#
Ale nie chcę wyświetlać najnowszej wartości lub średniej od czasu uruchomienia. To, co chcę obliczyć, jest średnią ostatnich wartości X.
Moje pytanie brzmi, jak przypuszczam, na temat najlepszego sposobu przechowywania tych wartości. Moją pierwszą myślą było stworzenie tablicy o stałym rozmiarze, więc każda nowa wartość wypchnie najstarszą. Czy to najlepszy sposób na zrobienie tego? Jeśli tak, w jaki sposób mogę go wdrożyć?
EDYCJA: Oto klasa, którą napisałem: RRQueue. Dziedziczy kolejkę, ale w razie potrzeby wymusza pojemność i piszę.
EDYCJA 2: Pastebin jest tak passé. Teraz na a GitHub repo.
Kolejka jest zdecydowanie do zrobienia. Awansuj! – ehdv
Czy muszę skopiować do tablicy, aby uzyskać średnią wszystkich wartości? –
@Tom: Nie, ogólna kolejka .NET implementuje 'IEnumerable', więc można po prostu wyliczyć elementy, aby obliczyć średnią. –