陌湘萘 2015-12-21 10:43 采纳率: 40%
浏览 3081
已采纳

C++链表(我写的程序自己也看不懂)

建立一个10结点的单向链表,每个结点包括学号,姓名,性别,年龄,对其进行排序,采用插入排序法,按学号从小到大排序。
(我链表没听懂,基础概念讲讲也好~)

  • 写回答

10条回答 默认 最新

  • 普通网友 2015-12-22 02:12
    关注

    以下是创建链表的代码,c语言结构体实现:(不带头结点,一级指针实现,当然可以多级指针实现,也可以带头结点,也可以是循环链表,也可以是
    双向循环链表)
    #include
    #include
    //链表结构体定义
    typedef struct _NODE
    {
    int data;
    struct _NODE *next;
    }Node, *List;

    //创建链表
    List CreateList()
    {
    Node head = NULL, *p1 = NULL, *p2 = NULL;
    p1 = p2 = (Node
    )malloc(sizeof(Node));

                while(1 == scanf("%d", &p1->data))
                {
                                if(NULL == head)
                                {
                                            p1->next = NULL;
                                            head  = p1;
                                }
                                else
                                {
                                            p2->next = p1;
                                            p2 = p1;
                                }
                                p1 = (Node*)malloc(sizeof(Node));
                }
                free(p1);
                p1 = NULL;
                p2->next = NULL;
                /*注意这里 若果是 p2->next = p1; 那么就成为了一个单向循环链表*/
                return head;
    

    }

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(9条)

报告相同问题?

悬赏问题

  • ¥50 寻找一位有逆向游戏盾sdk 应用程序经验的技术
  • ¥15 请问有用MZmine处理 “Waters SYNAPT G2-Si QTOF质谱仪在MSE模式下采集的非靶向数据” 的分析教程吗
  • ¥50 opencv4nodejs 如何安装
  • ¥15 adb push异常 adb: error: 1409-byte write failed: Invalid argument
  • ¥15 nginx反向代理获取ip,java获取真实ip
  • ¥15 eda:门禁系统设计
  • ¥50 如何使用js去调用vscode-js-debugger的方法去调试网页
  • ¥15 376.1电表主站通信协议下发指令全被否认问题
  • ¥15 物体双站RCS和其组成阵列后的双站RCS关系验证
  • ¥15 复杂网络,变滞后传递熵,FDA