1 / 5 / 6
Регистрация: 13.05.2016
Сообщений: 58
1

Массив на миллион значений

02.11.2016, 21:48. Показов 3263. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день Дали задание - сделать возможным генерация (а после упорядочность) массива с миллионом значений, осуществить через потоки и записать в файл. Не могу разобраться как это сделать. Таким образом программа зависает / долго думает:

C#
1
2
3
4
5
6
7
8
9
10
11
     int n = int.Parse(textBox1.Text);
            var array = new int[n];
            var lines = new string[array.Length];
            int i;
            Random rand = new Random();
            for (i = 0; i < array.Length; i++)
            {
                array[i] = rand.Next(1000);
                lines[i] = array[i].ToString();
            }
            File.WriteAllLines("Array.txt", lines);
Можете подсказать куда тут вставить поток или же нужно переписывать весь код?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
02.11.2016, 21:48
Ответы с готовыми решениями:

дело на миллион
Кто поможет где можно найти учебник вообще по работе в 1с торговля и склад 7.7 в жизни не...

Вычисление 10 в степени миллион
Нужна программа для вычисления 10 в степени миллион. Я написал вот такую:public static BigInteger...

DataSet vs миллион записей
Народ, подскажите пожайлуста, что делать... В общем есть табличка на MSSQL server, в ней больше...

Set на миллион элементов
Здравствуйте уважаемые программисты, подскажите пожалуйста. У меня в системе предположительное...

3
Администратор
Эксперт .NET
16994 / 13352 / 5211
Регистрация: 17.03.2014
Сообщений: 27,303
Записей в блоге: 1
02.11.2016, 22:50 2
Лучший ответ Сообщение было отмечено Datebailo как решение

Решение

Datebailo, достаточно не создавать миллион строк.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int n = int.Parse(textBox1.Text);
var array = new int[n];
Random rand = new Random();
for (int i = 0; i < n; i++)
{
    array[i] = rand.Next(1000);
}
// Сортировка и всё такое ...
// ...
using (var writer = new StreamWriter("Array.txt"))
{
    for (int i = 0; i < n; i++)
    {
        writer.WriteLine(array[i]);
    }
}
1
1 / 5 / 6
Регистрация: 13.05.2016
Сообщений: 58
02.11.2016, 23:17  [ТС] 3
OwenGlendower, спасибо огромное!
А можешь еще такую вещь подсказать - как сделать так, чтобы выводились определенные комментарии? К примеру, когда идет генерация массива - пишет "Генерация массива", и так далее. Пытался через лэйбл - глючит.
0
Администратор
Эксперт .NET
16994 / 13352 / 5211
Регистрация: 17.03.2014
Сообщений: 27,303
Записей в блоге: 1
02.11.2016, 23:33 4
Datebailo, вынеси код в BackgroundWorker. Метку обновляй в обработчике события ProgressChanged.
1
02.11.2016, 23:33
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.11.2016, 23:33
Помогаю со студенческими работами здесь

Кто нибудь заработал миллион?;)
Здрасте! В сети полно всяких рекламок, предлагающих заработать кучу денег, обыграв казино. В...

Простые числа на миллион долларов
Ограничение времени 1 секунда Ограничение памяти 64Mb Ввод стандартный ввод или input.txt...

Миллион баннеров и левых программ
Пытался Активировать Виндоуз 8.1, скачал левую программу и понеслось. Открывается, утанавливается...

Что такое 1 e 6 ?(миллион не правльно)
что может значить выражение 1 e 6?? варианты пожалуйсто)очень надо для теста

Биоэлектронный человек за 1 миллион долларов
Благодаря современным достижениям науки учёным удалось создать искусственные конечности и другие...

Как вставить миллион записей?
Мучает меня сей вопрос. Это вопрос с собеседования, поэтому как понимаете, так и отвечайте....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru