本文最后更新于1914天前,其中的信息可能已经有所发展或是发生改变。
本题要求实现一个函数,返回带头结点的单链表中最大元素的地址。
函数接口定义:
LinkList MaxP( LinkList L);
L是带头结点的单链表的头指针,函数MaxP返回表中最大元素的地址。如果单链表为空,返回空指针。
其中LinkList结构定义如下:
typedef struct LNode
{
ElemType data;
struct LNode *next;
}LNode,*LinkList;
裁判测试程序样例:
#include <stdio.h>
#include <stdlib.h>
typedef int ElemType;
typedef struct LNode
{
ElemType data;
struct LNode *next;
}LNode,*LinkList;
LinkList Create();/* 细节在此不表 */
LinkList MaxP( LinkList L);
int main()
{
LinkList L,p;
ElemType e;
L = Create();
p = MaxP(L);
if(p)
printf("%d\n", p->data);
else
printf("NULL");
return 0;
}
/* 你的代码将被嵌在这里 */
输入格式:
输入数据为1行,给出以-1结束的单链表元素(-1不属于单链表元素),所有数据之间用空格分隔。
输入样例:
2 5 4 5 3 -1
输出样例:
5
LinkList MaxP( LinkList L) { if(L==NULL) return NULL; else if(L->next == NULL )return NULL; else { LinkList p,maxp; p = L->next; maxp=p; while(p!=NULL) { if(p->data > maxp->data) maxp = p; p = p->next; } return maxp; } }
点击数:3304