操作の表6-6セットリーディング鎖ノード(20分)

トピック住所:https://pintia.cn/problem-sets/15/problems/729

しかし、情報を格納するためにヘッドノードを作成し、一般的な動作は、実質的に同じチェーンテーブルでありません

リストMakeEmpty(){ 
    リストL =(リスト)はmallocはsizeof構造体lノード))。
    L - >次に= NULL;
    リターンL; 
} 

ポジション検索(リストL、のElementType X){ 
    リストQ = L。
    一方、(Q){
         場合(Q->データ== X)リターンQ。
        Q = Q-> 次に、
    } 
    戻りERROR; 
} 

BOOL 挿入(リストL、のElementType X、位置p){
     場合(P == L-> 次に){ 
        リストP =(リスト)malloc関数のsizeof構造体lノード))。
        P - >データ= X; 
        P - >次に= L-> 次に、
        L - >次に= P。
        返す ; 
    } 

    リストP = L。
    一方、(P){
         場合(P->次に== P){ 
            リストQ =(一覧)はmallocはsizeof構造体lノード))。
            Q - >データ= X; 
            Q - >次に= P。
            P- >次に= Q。
            返す ; 
        } 
        P = P-> 次に、
    } 
    のprintf(" 挿入\ nの誤った位置" )。
    返す ; 
} 

BOOL (リストL、位置p){削除
    リストQ = Lと、
    一方、(Q){
         場合(Q->次に== P){ 
            Q >次に= P-> - ;次に
            返す ; 
        } 
        Q = Q-> 次に、
    }
    printf("削除\ nに対する誤った位置" );
     を返す はfalse ; 
}
コードの表示

 

おすすめ

転載: www.cnblogs.com/mile-star/p/11458151.html