http://worsethanfailure.com/Articles/Trouble-Sort.aspx
private string[][] arrTotal;
public void BubbleSort(string[][] arrTotal)
{
Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
for (int pass = 1; pass < arrTotal.Length; pass++ )
{
for (int i = 0; i < arrTotal.Length - 1; i++ )
{
if ( Convert.ToDateTime(arrTotal[i][2])
< Convert.ToDateTime(arrTotal[i + 1][2]) )
Swap(i);
}
}
}
private void Swap(int first)
{
string[][] hold = new string[1][];
hold[0] = new string[] {
arrTotal[first][0],
arrTotal[first][1],
arrTotal[first][2],
arrTotal[first][3]};
arrTotal[first][0] = arrTotal[first + 1][0];
arrTotal[first][1] = arrTotal[first + 1][1];
arrTotal[first][2] = arrTotal[first + 1][2];
arrTotal[first][3] = arrTotal[first + 1][3];
arrTotal[first + 1][0] = hold[0][0];
arrTotal[first + 1][1] = hold[0][1];
arrTotal[first + 1][2] = hold[0][2];
arrTotal[first + 1][3] = hold[0][3];
}
... << RSDN@Home 1.2.0 alpha rev. 655>>
Здравствуйте, Кодт, Вы писали:
На скольки arrTotal.Length уже будет заметно на глаз?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
К>http://worsethanfailure.com/Articles/Trouble-Sort.aspx
Да, комменты, как обычно жгут:
I like the random sort algorithm better — take the data, put it in random order then check to see if it is sorted. If so then you are done.
I like the random sort method. But I prefer lazy sort: check whether the first three values are already in order, and return successfully. Otherwise throw an exception.
Здравствуйте, guav, Вы писали:
G>Ещё про соритроку:
G>http://www.tvk-research.ru/products-research-ultrasorte/
хм, а патент у них есть?
Для N<2^30 сложность получется меньше N

... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
G>>Ещё про соритроку:
G>>http://www.tvk-research.ru/products-research-ultrasorte/
VEA>хм, а патент у них есть?
VEA>Для N<2^30 сложность получется меньше N
Напомнило боян:
"Печатаю со скоростью 1500 знаков в минуту!!! Правда, такой бред получается..."