我已经浏览了以下链接
http://analgorithmaday.blogspot.in/2011/01/insertion-sort-using-linked-list.html
他们正在使用另一个数组(* arr)来进行排序。
是否可以在链表上进行插入排序而不使用任何其他数组或链表?
答案 0 :(得分:1)
您对其算法的读取不正确 - 传入的数组只是数据的来源,不会用于插入排序。
插入排序对于小向量和短链接列表也是一种很好的算法。链接列表的一个好方法可以是插入排序小块(10-50个元素),然后递归合并排序链接列表,直到一个排序列表仍然存在。
答案 1 :(得分:0)
插入排序是一种就地算法,这意味着它不需要任何辅助存储空间来排序数组或其他任何东西。
如果在数组上使用Insertion Sort,则必须在执行算法时交换其中的元素,但如果您有链接列表,则可以交换指针而不是列表中的元素。