要实现双链表的倒序输出,可以使用递归或者迭代的方式。
- 使用递归方式实现双链表的倒序输出:
public void reversePrint(Node node) {
if (node == null) {
return;
}
reversePrint(node.next);
System.out.print(node.data + " ");
}
- 使用迭代方式实现双链表的倒序输出:
public void reversePrint(Node node) {
Stack<Node> stack = new Stack<>();
Node current = node;
while (current != null) {
stack.push(current);
current = current.next;
}
while (!stack.isEmpty()) {
System.out.print(stack.pop().data + " ");
}
}
在上述代码中,假设双链表的节点类为Node,包含数据域data和指向下一个节点的引用next,并且链表的头节点为node。使用递归方式时,先递归调用reversePrint(node.next),然后再输出当前节点的数据域。使用迭代方式时,先将链表的节点依次入栈,然后再依次出栈并输出对应的数据。
提供PHP及ThinkPHP框架的定制开发、代码优化,PHP修改、ThinkPHP修改。
邮箱:yvsm@163.com
微信:yvsm316
QQ:316430983
版权声明:除特别声明外,本站所有文章皆是本站原创,转载请以超链接形式注明出处!