输入若干个不超过100的整数,建立单链表,然后通过一趟遍历在单链表中确定值最小的结点。输出该结点的值
时间: 2023-05-31 07:04:51 浏览: 139
单链表可找出最小值点
C++代码如下:
```c++
#include <iostream>
using namespace std;
struct ListNode { // 定义链表结点结构体
int val;
ListNode* next;
ListNode(int x): val(x), next(NULL) {}
};
int main() {
ListNode* head = NULL; // 定义链表头结点
int n;
cin >> n; // 输入整数个数
for (int i = 0; i < n; i++) {
int x;
cin >> x;
ListNode* node = new ListNode(x); // 创建新结点
node->next = head;
head = node; // 将新结点插入链表头部
}
ListNode* p = head; // 定义指针p指向链表头结点
int min_val = p->val; // 初始化最小值为第一个结点的值
while (p != NULL) {
if (p->val < min_val) {
min_val = p->val; // 更新最小值
}
p = p->next; // 指针p指向下一个结点
}
cout << min_val << endl; // 输出最小值
return 0;
}
```
输入样例:
```
5
1 3 5 2 4
```
输出样例:
```
1
```
阅读全文