本体要求实现一个函数,遍历一个不带头节点的链表,求链表节点数据的最大值,节点定义
时间: 2024-03-23 11:40:12 浏览: 85
好的,那我来帮您实现这个函数。
假设节点定义如下:
```java
class ListNode {
int val;
ListNode next;
ListNode(int x) {
val = x;
next = null;
}
}
```
则可以编写一个遍历链表求最大值的函数如下:
```java
public int findMax(ListNode head) {
if (head == null) {
return Integer.MIN_VALUE; // 如果链表为空,则返回一个较小的值
}
int max = head.val;
ListNode cur = head.next;
while (cur != null) {
if (cur.val > max) {
max = cur.val;
}
cur = cur.next;
}
return max;
}
```
该函数的基本思路与上面的示例代码类似,区别在于这里没有头节点,需特别处理空链表的情况。
该函数的时间复杂度为 O(n),其中 n 表示链表的长度。
阅读全文