单链表找最大值
发布日期:2021-06-29 14:39:31 浏览次数:2 分类:技术文章

本文共 1100 字,大约阅读时间需要 3 分钟。

//群:970353786#include
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;}

转载地址:https://chuanchuan.blog.csdn.net/article/details/116906266 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:两小时写完vs2019永久配置opencv完整图文教程(小白也能看懂)
下一篇:顺序表合并

发表评论

最新留言

路过按个爪印,很不错,赞一个!
[***.219.124.196]2024年04月14日 07时23分29秒