插入C中的有序列表:使用数组或链表?

时间:2015-02-20 02:46:51

标签: c insertion insertion-order

尝试插入有序列表时,请考虑两种情况。

  1. 使用指针数组。二进制搜索找到的地方 插入点是:

    • 使用memmove()移动字节以便为新地址腾出空间

    • 使用迭代移动地址,为新地址腾出空间

  2. 使用链接列表和线性搜索

  3. 哪个表现更好?我的猜测是,在优化的代码中,1的两个选项将执行大致相同的但是1.和2.比较。似乎他们都是O(n)。有更简单的方法吗?是否可以在任何类型的链表上设置二进制搜索?

    非常欢迎任何其他建议。

0 个答案:

没有答案