9. Python 程序查找双向链表中的最大值和最小值节点。

2025年3月17日 | 阅读 3 分钟

在这个程序中,我们将创建一个双向链表,然后遍历列表找出最小值和最大值节点。

Python program to find the maximum and minimum value node from a doubly linked list

我们将维护两个变量 min 和 max。Min 将保存最小值节点,max 将保存最大值节点。在上面的例子中,1 将是最小值节点,9 将是最大值节点

算法

  1. 定义一个 Node 类,它表示列表中的一个节点。它将有三个属性:数据、previous 指向前一个节点,以及 next 指向下一个节点。
  2. 为创建双向链表定义另一个类,它有两个节点:head 和 tail。最初,head 和 tail 将指向 null。
  3. minimumNode() 将打印出最小值节点
  • 定义变量 min 并使用 head 的数据初始化它。
  • 当前节点将指向 head。
  • 通过将每个节点的数据与 min 进行比较来遍历列表。
  • 如果 min > 当前节点的数据,则 min 将保存当前节点的数据。
  • 在列表的末尾,变量 min 将保存最小值节点。
  • 打印最小值。

a. maximumNode() 将打印出最大值节点

  • 定义变量 max 并使用 head 的数据初始化它。
  • 当前节点将指向 head。
  • 通过将每个节点的数据与 max 进行比较来遍历列表。
  • 如果 max < 当前节点的数据,则 max 将保存当前节点的数据。
  • 在列表的末尾,变量 max 将保存最大值节点。
  • 打印最大值。

程序

输出

Minimum value node in the list: 1
Maximum value node in the list: 9
下一个主题Python 程序