Java 是否有删除双链接列表边的一半的名称?

Java 是否有删除双链接列表边的一半的名称?,java,c++,c,doubly-linked-list,Java,C++,C,Doubly Linked List,注意:这不是Java/C/C++特有的,但链表很常见,我选择在这些语言以及双链表下标记它。如果这是错误的,我可以改变它 假设您有一个标准的双链接列表实现: struct List { int Number; struct List *blink; struct List *flink; }; 并且您有以下列表: 1 <--> 2 <--> 3 <--> 4 <--> 5 所以3的flink为空,但4的blink指向3 稍

注意:这不是Java/C/C++特有的,但链表很常见,我选择在这些语言以及双链表下标记它。如果这是错误的,我可以改变它

假设您有一个标准的双链接列表实现:

struct List {
    int Number;
    struct List *blink;
    struct List *flink;
};
并且您有以下列表:

1 <--> 2 <--> 3 <--> 4 <--> 5
所以3的flink为空,但4的blink指向3

稍微不相关的是,我一直在这样做,以便快速修改和恢复链接列表,并具有以下功能:

1 <--> 2 <--| 3 <--> 4 <--> 5
         <--> 6 <--| 7 <--> 8
                <--> 9 <--> 10 <--> 11
建立一个12 6 9 10 11的列表


我的问题是,这种类型的操作是否有一个定义良好的名称?我一直称之为剪切,但如果有真名的话,我很高兴知道。

这是一种混乱的双链接列表。它基本上是以不正确的方式删除节点

为什么我说它是不正确的,考虑节点2和6, 2的FLink是空的,6的闪烁点是2。p> 这样你就知道2是最后一个节点,2在6的后面。这是矛盾


在哪里需要这种方法?

好吧,除非同时保存指向节点3、4、5、7和8的指针,否则这将被称为内存泄漏


i、 e.分配的内存您不再有访问和释放的方式。

可能类似于?@StackFlowed或@Heron ohh谢谢,我会在那边问:@StackFlowed这个问题完全是超级用户的问题。在建议人们在网站上提问之前,请先查看网站上的主题@Heron请明确建议人们标记迁移。新用户没有意识到它的存在,我们最终在SE网络上发现了多个问题副本,这违反了网站政策,浪费了人们的时间。对不起,我想我没有说清楚。明确存储未链接的指针;尽管rafeek的回答有点开玩笑,但他确实有一个观点:这种数据结构似乎很可能导致代码中出现微妙的错误。因此,它可能没有名字,因为它不会被广泛使用。有相当数量的数据,一旦生成,它所关联的节点将保持不变,我不想每次点击节点时都重新生成它,而是想生成一次,然后根据需要重新链接我的链接列表,因为任何节点上的数据都对列表中位于它前面的数据敏感。这不是一个很好的解释,我真的找不到合适的词来解释:/
1 <--> 2 <--| 3 <--> 4 <--> 5
         <--> 6 <--| 7 <--> 8
                <--> 9 <--> 10 <--> 11