Сортировка методом простого двухпутевого слияния - C#
Формулировка задачи:
Помогите пожалуйста с прогой для лабараторной:написать программу,которая будет брать числа из файла,преобразовывать в массив,потом сортировать методом простого двухпутевого слияния и уже отсортированные числа записывать обратно в файл!+ ко всему этому нужно сделать таймер,который замерит время,за которое прошла сортировка!
я в этом очень плаваю,а к сессии нужно сделать и сдать,помогите,если не лень!
Решение задачи: «Сортировка методом простого двухпутевого слияния»
textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
DateTime dt = DateTime.Now;
// если не хотите вводить название файла, то вместо впишете названия вашего файла.
Console.WriteLine("Введите название файла");
string s = Console.ReadLine();
StreamReader reader = new StreamReader(s + ".txt");
string[] split;
string readLine;
readLine = reader.ReadLine();
split = readLine.Split(' ', '\n');
reader.Close();
int n = Convert.ToInt32(split.Length);
long[] arr = new long[n];
for (int i = 0; i < n; i++)
{
arr[i] = int.Parse(split[i]);
}
Array.Sort<long>(arr);
StreamWriter sw;
FileInfo fi = new FileInfo("zero.txt");
for (int i = 0; i < arr.Length; i++)
{
sw = fi.AppendText();
sw.Write(arr[i] + " ");
sw.Close();
}
TimeSpan sp = DateTime.Now - dt;
Console.WriteLine("Время записи: " + sp.ToString());
Console.ReadLine();
}
}
}