单链表找最大值
最大值 单链
2023-09-14 09:14:36 时间
//群:970353786
#include<iostream>
using namespace std;
typedef struct LNode //定义结构
{
int data; //数据
struct LNode* next; //指针
}LNode, * LinkList;
void InitList(LinkList& L, int n) //创建链表
{
L = new LNode; //分配内存
L->next = NULL; //处理指针域
LinkList p = L; //p指向尾结点
while (n--) //尾插法
{
LinkList q = new LNode; //生成新结点
cin >> q->data; //输入数据
q->next = NULL; //处理指针域
p->next = q; //将结点q插在结点p后面
p = q; //更新指针p,指向新的尾结点q
}
}
int Max(LinkList L) //L指向首元结点,递归求解最大值
{
if (L->next == NULL) //若下一个结点为空,则最大值就是本身
return L->data;
else
return L->next->data > Max(L->next) ? L->next->data : Max(L->next);//两两比较找最大值1 2 5 4
}
int main()
{
int n;
cout << "请输入数据个数:";
while (cin >> n && n !='n')//当n=0时输入结束。
{
LinkList L; //定义LinkList类型的链表L
cout << "请输入不同大小的数据:";
InitList(L, n); //创建链表L
// cout << "最大值序号为:";
// cout << next;
cout << "最大值为:";
cout << Max(L) << endl; //递归求解最大值
}
return 0;
}
相关文章
- 3676: [Apio2014]回文串 求回文串长度与出现次数的最大值
- hdu1754 区间更新查询(单点更新+查询求区间最大值)
- java8 lambda 求list最大值、最小值、平均值、求和、中位数、属性排序(空指针异常,空值排前、排后)、去重
- Java实现 蓝桥杯 算法提高 最大值路径
- Java实现 蓝桥杯 算法训练 寻找数组中最大值
- Leetcode.2373 矩阵中的局部最大值
- 【STM32H7的DSP教程】第14章 DSP统计函数-最大值,最小值,平均值和功率
- oracle in 的最大值是1000
- echarts x轴 的刻度宽度:坐标轴刻度最大值
- 基于MATLAB的pso粒子群算法优化——计算样本再拟合函数最大值
- 【华为机试真题 Python实现】窗口滑动和最大值【2022 Q2 |100分】
- 515. 在每个树行中找最大值-深度优先遍历
- NC82 滑动窗口的最大值
- 找出一个整型数组中的元素的最大值
- 【牛客网】滑动窗口的最大值