c - 链接列表 - 切换元素

标签 c linked-list

我正在准备考试,我对我的老师类 pdf 有点困惑。

在链接列表上切换元素(在本例中为 X 和 Y )时,他有两个不同的图像来解释这一点,但只有一种方法。

问题出在连接顺序上,请参见下图:

http://i.imgur.com/oqdBOg5.png

这是当你切换两个元素(在本例中为 X 和 Y)时,你必须放置连接的顺序,但我不知道哪个图像是正确的:(

我已经尝试给他发电子邮件,但他很少回复学生,而且在他的类 pdf 上看到错误是很常见的

我需要知道哪张图片是正确的,

最佳答案

哈,这些图表起初很令人困惑。这么简单的概念,转换成这么复杂的公式!还有什么令人困惑的? “我正在学习……pdf。”叹。 “……有两张不同的图像可以解释这一点,但只有一种方法。”一种方式是什么?您的意思是,一种正确的方法吗?不是这样的!请参阅图表。他们都是正确的,你知道。观察最终结果是一样的。区别在于攻击点。

这样设想可能更容易:不要考虑将 X 和 Y 交换到位,而是将该过程视为将 X 完全从列表中拉出,然后将其重新插入......在哪里?同样,尝试将 Y 完全拉出,然后将其重新插入您想要的位置。效果一样。不同的方法。事实上,这就是两个图之间的区别。

现在有作业要给。哪个是哪个?哪个图先拉 X?哪个拉动Y?你能想到第三张图吗?我什至不用尝试就能想到另外三个细微的变化。 (编辑:两种主要方法,但重新插入时有所不同。)最后,这不是要记住公式。 从来与记住公式无关。嗯,几乎从来没有。这是关于可视化您所追求的效果,并填补空白。

关于c - 链接列表 - 切换元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19893557/

相关文章:

c - 使用 Valgrind 写入和读取错误

c++ - 在链表的情况下 = 运算符重载的意义

c++ - 链表深拷贝构造函数中的指针永远不会达到 null

C Linked List - 链接下一个链表节点

c - 如何捕获Control+D信号?

c - 为什么 gdb 将 sqrt(3) 评估为 0?

c - 如何定义系统()

c - Fork 和 dup2 - 子进程未终止 - 文件描述符问题?

c - 从链接列表中删除单个学生

c - 删除链表中的第n个节点,不能删除第一个节点吗?