第四周 单链表的应用(3)

本文介绍了一种用于判断单链表是否递增的算法,并通过示例代码展示了如何实现及测试该算法。作者强调了多加练习的重要性。
烟台大学计算机与控制工程学院 
        
作    者:     郝环宇
完成日期:     9.23
      
问题描述:判断单链表L是否是递增的。实现这个算法,并完成测试。
输入描述:若干数据 。    

程序输出:是就输出“Y”,不是则输出“N”。

数据库链接

int main()
{
    LinkList *A, *B;
    int i;
    ElemType a[]= {1, 3, 2, 9};
    ElemType b[]= {0, 4, 5 ,6, 7, 8};
    InitList(A);
    for(i=3; i>=0; i--)
        ListInsert(A, 1, a[i]);
    InitList(B);
    for(i=5; i>=0; i--)
        ListInsert(B, 1, b[i]);
    printf("A: %c\n", increase(A)?'Y':'N');
    printf("B: %c\n", increase(B)?'Y':'N');
    DestroyList(A);
    DestroyList(B);
    return 0;
}
bool increase(LinkList *l)
{
	LinkList *p;
	int a;
	p=l->next;
	a=p->data;
	while(p!=NULL)
	{
	
		if(p->data>=a)
		{
			a=p->data;
		}
		else return false;
		p=p->next;
	}
	return true;
}
运行结果:


心得体会:

单链表问题还是得多练习,练得多了,算法也就熟悉了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值