我需要用双向链表实现四种排序算法(插入排序、选择排序、希尔排序和快速排序),但是我完全不知道该怎么做,因为我在网上找到的所有解释都要求使用数组。我尝试使用以下代码作为我的双向链表的伪索引:
public DoubleNode this[int num]
{
get
{
DoubleNode x = head;
for(int k = 0; k < num; k++)
x = x.Next;
return x;
}
}
但这还不够,因为它不是一个setter。有什么想法吗?