`

创建正向链表

 
阅读更多
创建正向链表

nodeType* buildList() {
    nodeType *first, *last, *newNode;
    int num;

    cout<<"Enter a list number(end with -999): ";
    cin>>num;
    first = NULL;
    last = NULL;
    newNode = NULL;

    while(num!=-999) {
        newNode = new nodeType;
        newNode->info = num;
        newNode->next = NULL;

        if(first==NULL) {
            first = newNode;
            last = newNode;
        }else {
            last->next = newNode;
            last = newNode;
            last->next = NULL;
        }
        cin>>num;
    }

    return first;
}
分享到:
评论

相关推荐

    链正向链表、反向链表.rar

    本资料主要探讨的是正向链表和反向链表,这两种链表类型各有特点,适用于不同的场景。 首先,让我们了解什么是链表。链表是由一系列节点构成的数据结构,每个节点包含两部分:数据域和指针域。数据域存储实际的元素...

    8581 线性链表逆置

    这种插入方式确保了新节点总是插入到链表的前端,最终结果是一个反向的链表,但此处的目的是创建一个正向链表,所以实际操作与预期不符。正确的做法是在循环中将新节点插入到`q`之后,而不是之前。 #### 三、遍历...

    node双链表好用的资源

    1. **创建链表**:提供创建新链表的API,初始化一个空的双链表。 2. **插入节点**:在链表的头部、尾部或其他指定位置插入新节点。 3. **删除节点**:根据节点值或引用删除链表中的节点。 4. **遍历链表**:支持正向...

    c#版的双向链表实现

    这使得双向链表可以在正向和反向遍历中灵活切换。 2. **模板(Template)** C#中的模板允许创建泛型类或方法,这样就可以在不指定具体类型的情况下编写代码。在实现双向链表时,我们通常会使用模板来确保链表可以...

    操作系统课设-线程安全的双向链表

    锁住链表,创建新节点,设置其前后指针,然后将新节点插入到适当位置,最后解锁链表。 2. **删除节点**:类似地,删除节点也需要先锁定链表,找到要删除的节点,更新其前后节点的指针,然后释放该节点的内存,最后...

    大一C++上机作业11.12周(链表类模板插入排序删除输出)

    //创建3个空的整型链表 int c; for(int i=0;i;i++){ cin&gt;&gt;c; p1=l1.CreatNode(c); l1.insertFront(p1); //插在链头,倒向生成链表 p1=l2.CreatNode(c); l2.insertRear(p1); //插在链尾,正向生成链表 p1=...

    双链表的编程实现

    1. 初始化:创建一个新的空链表,通常包含一个头节点,其数据域可以为空,后继指针和前驱指针都指向自身,表示链表为空。 2. 插入节点:在双链表中插入节点,需要更新插入点前后两个节点的前驱和后继指针。例如,要...

    双向链表双向链表

    1. **创建**:初始化一个空的双向链表,通常包括创建头节点,其前驱和后继指针都为null。 2. **插入节点**:在双向链表中插入节点可以发生在链表的头部、尾部或任意位置。插入时需要更新插入节点与其前后节点的指针...

    sss.rar_sss_双向链表_链表_链表 插入

    双向链表的初始化通常涉及到创建一个头节点,该节点不存储实际数据,但作为链表的起点。头节点的前一个指针应设置为`NULL`,表示链表的开始,后一个指针则指向链表的第一个实际数据节点。如果链表为空,第一个数据...

    一个自己写的链表类list chain

    2. **链表初始化**:链表类的初始化通常涉及创建一个空头节点,表示链表的开始。初始状态下,头节点的`prev`和`next`指针都应为`None`。 3. **添加元素**:添加元素可以分为在链表末尾(追加)或特定位置插入。在...

    双向循环链表(C++)

    接着,我们需要创建一个链表类,它将包含对链表进行操作的方法。这个类可能包含以下方法: 1. **构造函数**:初始化为空链表。 2. **插入节点**:在指定位置插入一个新节点。为了实现定点插入,我们需要找到目标...

    VB.net编写的双向链表

    在VB.NET中,我们可以自定义一个类来表示链表节点,并创建一个链表类来管理这些节点。 首先,我们需要定义一个`Node`类,它包含两个成员:数据字段(存储元素)和两个指针(next和prev): ```vbnet Public Class ...

    网上搜集的七种双向链表模板c++实现

    与单向链表不同,双向链表允许元素在正向和反向两个方向上进行遍历,这为程序员提供了更大的灵活性。这里我们将深入探讨网上搜集的七种双向链表模板在C++中的实现。 1. **基础的双向链表模板** 双向链表的基本结构...

    双链表_链表_线性结构_数据结构与算法

    在`main()`函数中,我们展示了如何创建链表、正向和反向遍历、使用归并排序对链表进行排序,以及再次遍历显示排序后的结果。 这些基本操作是双链表数据结构的基础,掌握它们对于理解和实现更复杂的数据结构和算法至...

    C语言编的双向链表

    分别编写了创建动态链表的函数、正向输出链表的函数、逆向输出链表的函数、删除节点的函数、插入结点的函数、界面函数,实现了一个简单的学生管理系统。

    222018321062006 宋行健(链表)1

    在`main()`函数中,程序首先提示用户选择输入链表的顺序(正向或逆向),然后创建链表。接着,用户可以选择对链表进行的操作:删除节点、插入节点或修改节点值。根据用户的选择,调用相应的函数执行操作,并在每次...

    双向链表实例(VC++)

    这种数据结构提供了在链表中的正向和反向遍历能力,使得在某些情况下操作更加灵活高效。在本实例中,我们将探讨如何在VC++环境下实现双向链表。 首先,我们需要定义双向链表的节点结构。每个节点通常包括数据部分和...

    Intel的单向链表与双向链表,C语言源码

    2. **链表初始化**:创建新的链表或初始化空链表。 3. **插入操作**:在链表的特定位置插入新节点。 4. **删除操作**:根据条件删除链表中的某个节点。 5. **遍历操作**:按顺序访问链表的所有节点。 6. **查找操作*...

    双向链表的实现

    1. **创建链表**:初始化链表时,可以创建一个空的头节点,所有其他节点都将链接到此头节点。 2. **插入节点**:在双向链表中插入节点比单向链表更复杂,因为需要同时更新前驱和后继指针。例如,要在某个特定位置...

    双向链表结构

    本篇将详细介绍基于C语言实现的双向链表,并通过提供的代码示例来深入理解双向链表的创建、插入、打印等基本操作。 #### C语言中的双向链表实现 ##### 1. 结构定义 在C语言中,定义一个双向链表首先需要定义一个...

Global site tag (gtag.js) - Google Analytics