tim*_*tim 2 sorting algorithm data-structures
我是算法的新手,所以请原谅我,如果这听起来很基本或愚蠢.
我想知道这一点:不是将数据添加到某种列表中然后在列表上执行排序,而是有一种方法(数据结构+算法)可以让我在添加数据时对数据进行排序,或者放入换句话说,将数据插入适当的位置?
例如:如果我想在{1,5,6}添加'3',而不是在开头或结尾添加它然后对列表进行排序,我希望'3'直接在'1'之后".
谢谢
如果使用二叉搜索树而不是数组,则排序将"自动"发生,因为它已经由节点的insert方法完成.因此,二叉树总是排序,并且很容易遍历.唯一的问题是当你已经(或多或少)排序数据时,树变得不平衡(这是红黑树和其他变化发挥作用的地方).