zoukankan      html  css  js  c++  java
  • C语言:链表

    #include<stdio.h>
    #include<stdlib.h>
    typedef int ElemType;
    typedef struct Lnode
    {
    ElemType data;
    struct Lnode *next;
    }Lnode,*LinkList;

    void CreateList(LinkList &l);//创建
    void ShowList(LinkList &l);//输出链表
    int CountList(LinkList &l);//计算结点数
    int CountNodeAdd(LinkList &l);//计算元素和
    int CountNodeMax(LinkList &l);//求最大元素
    void ReverseList(LinkList &l);//链表逆置

    void main()
    {
    LinkList L;
    CreateList(L);
    printf("元 素 为:");
    ShowList(L);
    printf("结点数为:%d\n",CountList(L));
    printf("结点和为:%d\n",CountNodeAdd(L));
    printf("最大元素为:%d\n",CountNodeMax(L));
    ReverseList(L);
    printf("逆置后为:");
    ShowList(L);
    }

    void CreateList(LinkList &l)//创建链表
    {
    LinkList p,q;
    q=l=(LinkList)malloc(sizeof(Lnode));
    q->next=NULL;
    puts("输入元素以'0'结束");
    while(1)
    {
    p=(LinkList)malloc(sizeof(Lnode));
    scanf("%d",&p->data);
    if(p->data==0)
    break;
    p->next=q->next;
    q->next=p;
    q=p;
    }
    }
    void ShowList(LinkList &l)//输出链表
    {
    LinkList p;
    p=l;
    while(p->next!=NULL)
    {
    p=p->next;
    printf("%d ",p->data);
    }
    puts("");
    }
    int CountList(LinkList &l)//求结点数
    {
    LinkList p;
    int sum=0;
    p=l;
    while(p!=NULL)
    {
    p=p->next;
    sum++;
    }
    return sum;
    }
    int CountNodeAdd(LinkList &l)//求元素和
    {
    LinkList p;
    int sum=0;
    p=l;
    while(p->next!=NULL)
    {
    p=p->next;
    sum+=p->data;
    }
    return sum;
    }
    int CountNodeMax(LinkList &l)//求最大元素
    {
    LinkList p;
    int max=0;
    p=l;
    while(p->next!=NULL)
    {
    p=p->next;
    if(p->data>max)
    max=p->data;
    }
    return max;
    }
    void ReverseList(LinkList &l)//链表逆置
    {
    LinkList p,q,s;
    s=p=q=l;
    q=q->next;
    p->next=NULL;
    while(q!=NULL)
    {
    s=q->next;
    q->next=p->next;
    p->next=q;
    q=s;
    }
    }
  • 相关阅读:
    C# 根据Word模版生成Word文件
    C# 添加事件
    类HTML语法显示格式化文本
    简易内存池实现
    12306订票助手
    网站前端的收藏
    摘抄 ander图片上传
    对于文件上传的几种处理方法,转载的
    对于 asp.net 中IhttpHandle,和IHttpModel中使用Session 会话
    KindEdit 的编辑插件的提问家
  • 原文地址:https://www.cnblogs.com/gaorui/p/2289163.html
Copyright © 2011-2022 走看看