いろんな言語で宿題 第五編at TECH
いろんな言語で宿題 第五編 - 暇つぶし2ch239:デフォルトの名無しさん
10/07/05 15:39:40
>>233
% Prolog

分離連鎖の初期化(_ハッシュ表の長さ) :-
    abolish(分離連鎖/2),
    abolish(ハッシュ表の長さ/1),
    assertz(ハッシュ表の長さ(_ハッシュ表の長さ)),
    M is _ハッシュ表の長さ - 1,
    for(0,N,M),
    assertz(分離連鎖(N,[])),
    N = M,!.

分離連鎖法による文字列の検索(_文字列,_付加情報) :-
    atom_codes(_文字列,Codes),
    加算(Codes,Y),
    ハッシュ表の長さ(_ハッシュ表の長さ),
    _ハッシュ値 is truncate(Y) mod _ハッシュ表の長さ,
    分離連鎖(_ハッシュ値,L),
    append(_,[[_文字列|_付加情報]|_],L).

分離連鎖法による文字列の追加(_文字列,_付加情報) :-
    atom_codes(_文字列,Codes),
    加算(Codes,Y),
    ハッシュ表の長さ(_ハッシュ表の長さ),
    _ハッシュ値 is truncate(Y) mod _ハッシュ表の長さ,
    retract(分離連鎖(_ハッシュ値,L)),
    asserta(分離連鎖(_ハッシュ値,[[_文字列|_付加情報]|L])).



次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch