问题及代码:
/*
* Copyright(c) 2016, 烟台大学计算机与控制工程学院
* All rights reserved.
* 文件名称: 111.cpp
* 作 者:于苏显
* 完成日期:2016年9月29日
* 版 本 号:v1.0
*
* 问题描述: 设计一个算法,判断单链表L是否是递增的。实现这个算法,并完成测试。
* 输入描述:无
* 程序输出:如果链表为递增,输出Y;否则,输出N。
*/
</pre><p><pre name="code" class="cpp">#include "linklist.h"
void increase(LinkList *l)
{
l=l->next;
while(l->next!=NULL)
{
if(l->data>l->next->data)
{
printf("链表非递增\n");
break;
}
else
{
l=l->next;
}
}
if(l->next==NULL)printf("链表递增\n");
}
int main()
{
int i;
LinkList *p,*q;
ElemType a[8]={1,9,8,8,0,2,1,6},b[8]={0,1,2,3,5,7,8,9};
CreateListR(p,a,8);
DispList(p);
increase(p);
CreateListR(q,b,8);
printf("\n");
DispList(q);
increase(q);
}
运行结果:
知识点总结:单链表的应用--判断递增。
学习心得:算法库使代码的编写简便。