リニアテーブル - 単一リンクリスト最初のノード

書式#include <iostreamの> 
の#include <ベクトル> 

std名前空間を使用しました。

//结构定义
の#define maxSizeの50 
のtypedef構造体lノード{ 
    intデータ。
    lノード*次の; 
} lノード、* LINKLIST。

//头插法建立单链表
LINKLIST List_HeadInsert(LINKLIST&L){ 
    lノード* S。
    int型のelem; 
    //建立头结点
    L =新しいlノード。
    L->次= nullptr。

    cinを>> ELEM。

    (!ELEM = -1){ながら、
        S =新しいlノード。
        S->データ= elemは。
        S->次= L->次。
        L->次= S。
        cinを>> ELEM。
    } 
    Lを返します。
} 
 
リストの//端単一補間を確立します
LINKLIST List_TailInsert(LINKLIST&L){ 
    L =新しいlノード。
    L->次= nullptr。
    lノード* S * R = L。
    int型のelem; 

    cinを>> ELEM。
    (!ELEM = -1){ながら、
        S =新しいlノード。
        S->データ= elemは。
        R->次= S; 
        R = Sであり; 
        cinを>> ELEM。
    } 
    R->次= nullptr。
    Lを返します。
} 

//按序号查找某个节点
lノード* GetElem(LINKLIST&L、IをINT){ 
    (I == 0){もし
        戻りL。
    } 
    (I <0){もし
        戻りnullptr。
    } 
    lノード* P = L。
    しばらく(P = nullptr && I - !){ 
        P = P - >
    } 
    COUT << P->データ。
    Pを返します。
}
 
//ルックアップテーブル値ノードによって
lノード* LocateElem(LINKLIST&L、int型E){ 
    IF(L->次== nullptr){ 
        戻りnullptr。
    } 
    lノード* P = L->次。
    一方、(P = nullptr && P->データ= E!){ 
        P = P->次。
    } 
    Pを返します。
}

   

おすすめ

転載: www.cnblogs.com/buaaZhhx/p/12367333.html