問題タブ [difference-lists]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
6 に答える
74999 参照

list - Prologにあるリストに要素をどのように追加しますか?

X = [1、2、3、4]などのリストがPrologにある場合、リストの最後に要素5を追加してX = [1、2、3、4、5]にする方法を教えてください。

append関数には、AとBをリストCに連結するために、2つのリスト、つまりappend(A、B、C)が必要です。

一時リストY=[1、2、3、4]およびZ = [5]を使用してこれを実行し、次にappend(Y、Z、X)を実行できますが、一時リストを作成するのは好きではありません。

通常の免責事項がここに適用されます-これは宿題ではなく、私はPrologを学んでいます。

0 投票する
2 に答える
392 参照

prolog - リストを扱うときのPrologの「-」記号はどういう意味ですか?

私はこの質問への答えを読んでいました、

上記のコードは、構文List-Listを使用しています。何が起こっているのかはある程度理解できますが、ここで「-」記号/述語が何をしているのかを正確に知りたいです。また、これはSWI固有ですか?

0 投票する
2 に答える
2522 参照

haskell - なぜ違いリストは折り畳み式のインスタンスではないのですか?

dlist パッケージDListには、多数のインスタンスを持つデータ型が含まれていますが、Foldableorは含まれていませんTraversable。私の考えでは、これらは最も「リストに似た」型クラスの 2 つです。DListこれらのクラスのインスタンスではないパフォーマンス上の理由はありますか?

また、パッケージはと を実装しますが、他の折りたたみ機能は実装foldrしません。unfoldr

0 投票する
1 に答える
617 参照

prolog - Prolog 差分リスト - マージソート

1 つのリストを 2 つのリスト (半分) に分割する述語を作成する必要があります。

それは簡単でしたが、今度はマージソートを行うアルゴリズムを書かなければなりません - 私にはわかりません。このアルゴリズムは差分リストを使用する必要があります。

助けてください。

0 投票する
2 に答える
150 参照

prolog - prolog が奇妙な木のようなリストを出力するのはなぜですか?

この Prolog コードでは、最初の N 個の素数をリストするつもりです。

そして、リストを逆順に並べたい場合はうまくいきます:

しかし、コードの最後の行を [P|L] から [L|P] に変更すると、次のようになります。

私は得る:

私は何が欠けていますか?これは私を怒らせています!

0 投票する
2 に答える
3098 参照

prolog - 差分リストを理解する (プロローグ)

特にこの述語では、差分リストを理解するのに苦労しています:

何が起こっているのかを追跡するのを手伝ってくれる人はいますか?

0 投票する
3 に答える
3542 参照

prolog - プロローグ差分一覧

次のプログラムを考えてみましょう。1 つは差分リストを使用し、もう 1 つはそうではありません。

どちらも同じことをするので、相違点リストを使用する利点は何ですか?

0 投票する
3 に答える
217 参照

recursion - 1 つおきの要素をリストの後ろに再帰的に移動する

特定の方法で数字のリストをシャッフルする方法を探しています。

shuffle([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12])戻るべき[1, 3, 5, 7, 9, 11, 2, 6, 10, 4, 12, 8]

再帰は次のようになります。

次に、結果リストを追加して、必要な回答を返します。

私の現在のコードは次のようになります。上で説明したタイプの再帰を生成するように、どのように適応させることができますか? モードはshuffle(+,?)です。