Какой тип (int или byte) использовать для операций с большими массивами - C#
Формулировка задачи:
Всем здравствуйте. Есть 2 массива. Массивы неизвестной, очень большой длинны. Я в циклах перемножаю эти массивы. Для сохранения результатов использую массив размерностью равной сумме первых 2 массивов, т.е. он может быть скажем из 1000000000 элементов.
Вообщем вопрос. Операция над числами дает в результате int, что лучше 100000000 раз приводить к типу byte, или объявить результатирующий массив из 1000000000 int, хотя ему вполне хватит типа byte
Решение задачи: «Какой тип (int или byte) использовать для операций с большими массивами»
textual
Листинг программы
static void Main(string[] args) { Console.WriteLine("press"); Console.ReadLine(); int size = 100000000; for (int t = 0; t < 10; t++) { Test1(size); Test2(size); Console.WriteLine(); } Console.ReadLine(); } private static void Test1(int size) { int[] result = new int[size]; var st = Stopwatch.StartNew(); for (int i = 0; i < size; i++) { result[i] = i * i; } Console.WriteLine(st.ElapsedMilliseconds); } private static void Test2(int size) { byte[] result = new byte[size]; var st = Stopwatch.StartNew(); for (int i = 0; i < size; i++) { result[i] = (byte)(i * i); } Console.WriteLine(st.ElapsedMilliseconds); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д