2016-04-24 15 views
1

集合理論ではがあり、これは{z, y, x}と同じです。{y, x, z}{z, x, y} ...今、Lisp(Schemeなど)では、このような並べ替えを許可していません。注文事項質問:注文とは関係のないLisp/Schemeがありますか?ただ、私は単にリストを作成するかもしれませんが、推測設定しましたが、Lispワールドにリストされていませんか?

は、(x y z)を言う、そしてmember?のいくつかの並べ替えを持っている、すなわち、あなたはのメンバーですか?メカニズム。

...私はこのことについて疑問に思っています唯一の人ではないよ賭ける...

+0

[SRFI-1](http://srfi.schemers.org/srfi-1/srfi- 1.html)にリストの設定操作がいくつかあります。 – jkiiski

+1

http://stackoverflow.com/q/165767/1116364 –

+0

私はこれが重複しているとは思わない。これは、Lispの性質や理論についての深い疑問であり、Common Lispやデータ構造としての「セット」に関するものではありません。 – Rei

答えて

1

あなたがcommon lispについて話している場合、それは彼らがセットした場合のようなリストを操作する関数、の束を持っています:

(member 'b '(a b c d)) => (B C)

またmember_ifを使用することができます。いくつかの他の機能は、セット動作のためにもあります

(union '(a b c) '(f a d)) => (C B F A D)

(intersection '(a b c) '(f a d)) => (A)

(set-difference '(a b c) '(b c d)) => (A)

関連する問題