zoukankan      html  css  js  c++  java
  • 单链表

    建表、删除

    typedef struct LNode
    {
        int data;
        struct LNode *next;
    }*Slink;
    
    LNode *p,*q;//指向链表节点的p,q指针 
    Slink H;//指向链表,头指针 
    
    void InitList(Slink &L)
    {
        L = new LNode;
        if(!L) cout<<"空间分配失败";
        L->next = NULL;
    }
    
    void DestroyList(Slink &L)
    {
        while(L)
        {
            p = L;
            L = L->next;
            delete p;
        }
    L
    = NULL;//头结点占有的空间被释放,但指针L的值不变,为安全起见,置L为空 }

    搜索

    void GetElem(Slink &L,int pos,int &e) 
    {
        int i = 0;
        p = L;
        while(p && i<pos)
        {
            i++;
            p = p->next;
        }
        if(p == NULL)cout << "false";
        else e = p->data;
        
        p = NULL;
    }

    插入

    void InsertElem(Slink &L,int pos,int &e) 
    {
        int i = 0;
        p = L;
        while(p && i < pos-1)
        {
            i++;
            p = p->next;
        }
        
        if(i != pos-1)cout<<"false";
        else 
        {
            q = new LNode;
            q->data = e;
            
            q->next = p->next;
            p->next = q;
        }
        
        p = NULL;
        q = NULL;
    }

    删除

    bool ListDelete(SLink &L,int pos,int &e)
    {
        p = L;j = 0;
    while(p->next && j < pos-1) p = p->next;
    if((!p->next) || j > pos-1)return FALSE; q = p->next; p->next = q->next; e = q->next; delete(q);//释放节点空间

    return TRUE; }

     交换前后两段

    void exchange_L(SLink &L,int m)
    {
        if(m && L->next)
        {
            p = L->next;
            k = 1;
            while(k < m && p)
                p = p->next,++k;
            if(p && p->next)
            {
                ha = L->next;
                L->next = p->next;
                p->next = NULL;
                q = L->next;
                while(q->next)q = q->next;
                q->next = ha;
            }
        }
    }
  • 相关阅读:
    重构了一波代码,聊聊后端也聊聊游戏后端
    浅谈游戏开发中常见的设计模式
    一次查内存泄露
    sql语句技巧
    python后端链接数据库-----MySQLdb
    web的应用模式
    静态文件
    django配置文件
    视图
    django子应用
  • 原文地址:https://www.cnblogs.com/Cindy-Chan/p/11179597.html
Copyright © 2011-2022 走看看