zoukankan      html  css  js  c++  java
  • 线性表-带头结点的单链表

    #include<iostream>
    #include<vector>
    
    using namespace std;
    
    //结构定义
    #define maxSize 50
    typedef struct LNode{
        int data;
        LNode* next;
    }LNode,*LinkList;
    
    //头插法建立单链表
    LinkList List_HeadInsert(LinkList &L){
        LNode *s;
        int elem;
        //建立头结点
        L = new LNode;
        L->next = nullptr;
    
        cin>>elem;
    
        while(elem != -1){
            s = new LNode;
            s->data = elem;
            s->next = L->next;
            L->next = s;
            cin>>elem;
        }
        return L;
    }
    
    //尾插法建立单链表
    LinkList List_TailInsert(LinkList &L){
        L = new LNode;
        L->next = nullptr;
        LNode *s, *r = L;
        int elem;
    
        cin>>elem;
        while(elem != -1){
            s = new LNode;
            s->data = elem;
            r->next = s;
            r = s;
            cin>>elem;
        }
        r->next = nullptr;
        return L;
    }
    
    //按序号查找某个节点
    LNode *GetElem(LinkList &L,int i){
        if(i == 0){
            return L;
        }
        if(i < 0){
            return nullptr;
        }
        LNode* p = L;
        while(p != nullptr && i--){
            p = p->next;
        }
        cout<<p->data;
        return p;
    }
    
    //按值查找表结点
    LNode *LocateElem(LinkList &L,int e){
        if(L->next == nullptr){
            return nullptr;
        }
        LNode * p = L->next;
        while(p != nullptr && p->data != e){
            p =p->next;
        }
        return p;
    }
    

       

  • 相关阅读:
    对象结构型
    对象结构型
    对象行为型模式
    定时任务(二)
    定时任务(一)
    kill端口-更新sql-添加字段
    获取ip和端口号
    List集合中的末位元素置首位
    首页报表数据展示(一)
    具体的类中包括枚举类写法
  • 原文地址:https://www.cnblogs.com/buaaZhhx/p/12367333.html
Copyright © 2011-2022 走看看