繁体   English   中英

排序列表后,如何将新的Integer插入列表?

[英]how can i insert a new Integer into the list , when the list is sorted?

我想在不更改顺序的情况下将新元素(Integer)插入已排序的链表中,例如:如果链表是这样的:4-> 6-> 8-> 10并在调用方法sortedl(7)之后,链表将是:4-> 6-> 7->-> 8- > 10

我尝试编写代码,但是它总是在第六之后添加它!

任何想法?

您遍历链接列表,直到遇到一个大于您要插入的节点的节点。 我们将其称为N + 1。 我要在该N-1之前调用该节点。 该名称相当随意。

您创建一个新节点,我们称其为N,它代表您的新数字(示例中为7)。

在插入之前,节点N-1(保持值6)指向节点N + 1(保持值8)。

要插入,请将N-1指向N,然后将N指向N + 1。 如果这是一个双向链接列表,则以类似的方式更新后向指针。

我尝试编写代码,但是它总是在第六之后添加它!

如果您的输入值为7(来自sortedI(7) ),那么实际上您希望看到的是6 <7 <8。但是,如果任何输入值都发生这种情况,请发布代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM