赞
踩
#include <iostream> using namespace std; //定义结点 typedef struct Lnode{ int data; struct Lnode *next; }Lnode,*Linklist; //初始化 void Initlist(Linklist &L){ L=new Lnode; L->next=NULL; } //尾插建表(带头结点) void Creatlist(Linklist &L,int e){ Lnode *p=new Lnode; p->data=e; p->next=NULL; Lnode *cur=L; while(cur->next){ cur=cur->next; } cur->next=p; p->next=NULL; } int Findmax(Linklist &L){ if(L->next==NULL) return L->data; //终止条件(只有头结点) int max=L->next->data; //设 第一个结点 最大 if(max>Findmax(L->next)) //正式递归 return max; else return Findmax(L->next); } int main(){ int n; while(cin>>n&&n!=0){ Linklist L; Initlist(L);//初始化 for(int i=0;i<n;i++){ //建表 int e; cin>>e; Creatlist(L,e); } cout<<Findmax(L)<<endl; } }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。