Я создал класс пары и класс массива, но я заблудился о том, как реализовать алгоритм быстрой сортировки. Я хочу сделать это, если целые числа одинаковы, тогда я должен отсортировать по двойному. Мне удалось реализовать быструю сортировку с одним значением на индекс массива, но с этим я просто не могу найти никаких ресурсов.
Может быть, у вас, ребята, есть какие-то ресурсы, или, может быть, у вас была такая же проблема?
Кстати, я пытаюсь реализовать это с c#.
Это мой класс пары:
class Pair
{
public int integer = 0;
public double doubl = 0.0;
public Pair(int integer, double doubl)
{
this.integer = integer;
this.doubl = doubl;
}
public Pair()
{
}
public int Integer() { return integer; }
public double Doubl() { return doubl; }
}
И мой класс массива данных
class MyDataArray : DataArray
{
Pair[] data;
int operations = 0;
public MyDataArray(int n, int seed)
{
data = new Pair[n];
Random rand = new Random(seed);
for (int i = 0; i < n; i++)
{
data[i] = new Pair(rand.Next(1,100), rand.NextDouble());
}
}
public override int integer(int index)
{
return data[index].integer;
}
public override double doubl(int index)
{
return data[index].doubl;
}
public override void Swap(int i, int j)
{
Pair temp = data[i]; // c3 1
data[i] = data[j]; // c3 1
data[j] = temp; // c3 1
}