标签: c++ c data-structures linked-list
在一次采访中,我被要求为链表编写一个插入函数,插入后,插入元素朝向头侧的元素应该更大,并且与插入元素相比,尾侧应该更小元件。
我在代码中实现了以下步骤:
但我被告知我的方式效率不高。
如果有有效的方法可以让我知道。
答案 0 :(得分:1)
排序是O(n log n)操作。如果您仔细阅读问题,他们永远不会说列表应该排序,所以不要进行排序操作。你应该做的是从一个只有你的元素的新列表开始,然后对于原始列表的每个元素将它附加到前面(如果大于新元素)或者在后面附加。
O(n log n)