<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ja">
	<id>https://mochiu.net/index.php?action=history&amp;feed=atom&amp;title=Rust%E3%81%AE%E5%9F%BA%E7%A4%8E_-_%E9%9B%86%E5%90%88</id>
	<title>Rustの基礎 - 集合 - 版の履歴</title>
	<link rel="self" type="application/atom+xml" href="https://mochiu.net/index.php?action=history&amp;feed=atom&amp;title=Rust%E3%81%AE%E5%9F%BA%E7%A4%8E_-_%E9%9B%86%E5%90%88"/>
	<link rel="alternate" type="text/html" href="https://mochiu.net/index.php?title=Rust%E3%81%AE%E5%9F%BA%E7%A4%8E_-_%E9%9B%86%E5%90%88&amp;action=history"/>
	<updated>2026-09-15T05:30:31Z</updated>
	<subtitle>このウィキのこのページに関する変更履歴</subtitle>
	<generator>MediaWiki 1.43.9</generator>
	<entry>
		<id>https://mochiu.net/index.php?title=Rust%E3%81%AE%E5%9F%BA%E7%A4%8E_-_%E9%9B%86%E5%90%88&amp;diff=13628&amp;oldid=prev</id>
		<title>Wiki: /* 集合と他の集合との関係 */</title>
		<link rel="alternate" type="text/html" href="https://mochiu.net/index.php?title=Rust%E3%81%AE%E5%9F%BA%E7%A4%8E_-_%E9%9B%86%E5%90%88&amp;diff=13628&amp;oldid=prev"/>
		<updated>2025-11-30T18:59:56Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;集合と他の集合との関係&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ja&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← 古い版&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;2025年12月1日 (月) 03:59時点における版&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l377&quot;&gt;377行目:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;377行目:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== 集合と他の集合との関係 ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== 集合と他の集合との関係 ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;集合と集合が等しいかどうか、また、集合が他の集合の部分集合かどうか等、集合と他の集合との関係を確認する方法について記載する。&lt;/del&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;集合と集合が等しいかどうか、また、集合が他の集合の部分集合かどうか等、集合と他の集合との関係を確認する。&lt;/ins&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== 集合が他の集合と等しいかどうか ====&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== 集合が他の集合と等しいかどうか ====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;比較演算子の==または!=で比較することができる。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;比較演算子の &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;code&amp;gt;&lt;/ins&gt;==&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/code&amp;gt; &lt;/ins&gt;または &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;code&amp;gt;&lt;/ins&gt;!=&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/code&amp;gt; &lt;/ins&gt;で比較することができる。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;集合aの要素が集合bに全て含まれており、集合bの要素が集合aに全て含まれている場合、trueとなる。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;集合aの要素が集合bに全て含まれており、集合bの要素が集合aに全て含まれている場合、trueとなる。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l396&quot;&gt;396行目:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;396行目:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== 部分集合 ====&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== 部分集合 ====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;is_subset&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;()&lt;/del&gt;メソッドで比較することができる。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;code&amp;gt;&lt;/ins&gt;is_subset&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/code&amp;gt; &lt;/ins&gt;メソッドで比較することができる。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;集合aの要素が全て集合bに含まれている場合、集合aは集合bの部分集合であるという。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;集合aの要素が全て集合bに含まれている場合、集合aは集合bの部分集合であるという。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l420&quot;&gt;420行目:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;420行目:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== 真部分集合 ====&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== 真部分集合 ====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Rustには真部分集合を直接判定するメソッドは存在しないが、is_subset()メソッドと&lt;/del&gt;==&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;演算子を組み合わせることで判定できる。&lt;/del&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Rustには真部分集合を直接判定するメソッドは存在しないが、&amp;lt;code&amp;gt;is_subset&amp;lt;/code&amp;gt; メソッド と &amp;lt;code&amp;gt;&lt;/ins&gt;==&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/code&amp;gt; 演算子を組み合わせることで判定することができる。&lt;/ins&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;集合aの要素が全て集合bに含まれており、かつ、集合aと集合bが等しくない場合、集合aは集合bの真部分集合であるという。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;集合aの要素が全て集合bに含まれており、かつ、集合aと集合bが等しくない場合、集合aは集合bの真部分集合であるという。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l444&quot;&gt;444行目:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;444行目:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== 超集合 ====&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== 超集合 ====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;is_superset&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;()&lt;/del&gt;メソッドで比較することができる。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;code&amp;gt;&lt;/ins&gt;is_superset&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/code&amp;gt; &lt;/ins&gt;メソッドで比較することができる。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;集合bの要素が全て集合aに含まれている場合、集合aは集合bの超集合であるという。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;集合bの要素が全て集合aに含まれている場合、集合aは集合bの超集合であるという。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l470&quot;&gt;470行目:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;470行目:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== 真超集合 ====&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== 真超集合 ====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Rustには真超集合を直接判定するメソッドは存在しないが、is_superset()メソッドと&lt;/del&gt;==&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;演算子を組み合わせることで判定できる。&lt;/del&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Rustには真超集合を直接判定するメソッドは存在しないが、&amp;lt;code&amp;gt;is_superset&amp;lt;/code&amp;gt; メソッド と &amp;lt;code&amp;gt;&lt;/ins&gt;==&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/code&amp;gt; 演算子を組み合わせることで判定することができる。&lt;/ins&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;集合bの要素が全て集合aに含まれており、かつ、集合aと集合bが等しくない場合、集合aは集合bの真超集合であるという。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;集合bの要素が全て集合aに含まれており、かつ、集合aと集合bが等しくない場合、集合aは集合bの真超集合であるという。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l495&quot;&gt;495行目:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;495行目:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== 互いに素 ====&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== 互いに素 ====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;is_disjoint&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;()&lt;/del&gt;メソッドで比較することができる。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;code&amp;gt;&lt;/ins&gt;is_disjoint&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/code&amp;gt; &lt;/ins&gt;メソッドで比較することができる。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;集合aと集合bが同じ要素を1つも持たない時、集合aは集合bと互いに素であるという。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;集合aと集合bが同じ要素を1つも持たない時、集合aは集合bと互いに素であるという。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key mochiu_wiki:diff:1.41:old-13627:rev-13628:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Wiki</name></author>
	</entry>
	<entry>
		<id>https://mochiu.net/index.php?title=Rust%E3%81%AE%E5%9F%BA%E7%A4%8E_-_%E9%9B%86%E5%90%88&amp;diff=13627&amp;oldid=prev</id>
		<title>Wiki: /* 集合の演算 */</title>
		<link rel="alternate" type="text/html" href="https://mochiu.net/index.php?title=Rust%E3%81%AE%E5%9F%BA%E7%A4%8E_-_%E9%9B%86%E5%90%88&amp;diff=13627&amp;oldid=prev"/>
		<updated>2025-11-30T18:57:37Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;集合の演算&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ja&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← 古い版&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;2025年12月1日 (月) 03:57時点における版&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l329&quot;&gt;329行目:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;329行目:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== 差集合 ====  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== 差集合 ====  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;差集合は、一方には含まれているがもう一方には含まれていない要素の集合である。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;差集合は、一方には含まれているがもう一方には含まれていない要素の集合である。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;-&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;演算子またはdifference()&lt;/del&gt;メソッドで求めることができる。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;code&amp;gt;&lt;/ins&gt;-&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/code&amp;gt; 演算子 または &amp;lt;code&amp;gt;difference&amp;lt;/code&amp;gt; &lt;/ins&gt;メソッドで求めることができる。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  use std::collections::HashSet;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  use std::collections::HashSet;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l339&quot;&gt;339行目:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;340行目:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  let c = &amp;amp;a - &amp;amp;b;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  let c = &amp;amp;a - &amp;amp;b;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  // &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;difference()メソッドを使用&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  // &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;differenceメソッドを使用&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  let d: HashSet&amp;lt;_&amp;gt; = a.difference(&amp;amp;b).cloned().collect();&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  let d: HashSet&amp;lt;_&amp;gt; = a.difference(&amp;amp;b).cloned().collect();&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l345&quot;&gt;345行目:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;346行目:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  println!(&amp;quot;{:?}&amp;quot;, d);&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  println!(&amp;quot;{:?}&amp;quot;, d);&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  // 出力(順序は不定)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  // 出力 (順序は不定)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  {1}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  {1}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  {1}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  {1}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l352&quot;&gt;352行目:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;353行目:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== XOR (対称差集合) ====  &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==== XOR (対称差集合) ====  &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;XORは、どちらか片方に含まれるが両方には含まれない要素の集合である。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;XORは、どちらか片方に含まれるが両方には含まれない要素の集合である。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;^&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;演算子またはsymmetric_difference()&lt;/del&gt;メソッドで求めることができる。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;br&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;code&amp;gt;&lt;/ins&gt;^&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/code&amp;gt; 演算子 または &amp;lt;code&amp;gt;symmetric_difference&amp;lt;/code&amp;gt; &lt;/ins&gt;メソッドで求めることができる。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  use std::collections::HashSet;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  use std::collections::HashSet;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l362&quot;&gt;362行目:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;364行目:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  let c = &amp;amp;a ^ &amp;amp;b;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  let c = &amp;amp;a ^ &amp;amp;b;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  // &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;symmetric_difference()メソッドを使用&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  // &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;symmetric_differenceメソッドを使用&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  let d: HashSet&amp;lt;_&amp;gt; = a.symmetric_difference(&amp;amp;b).cloned().collect();&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  let d: HashSet&amp;lt;_&amp;gt; = a.symmetric_difference(&amp;amp;b).cloned().collect();&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l368&quot;&gt;368行目:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;370行目:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  println!(&amp;quot;{:?}&amp;quot;, d);&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  println!(&amp;quot;{:?}&amp;quot;, d);&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  // 出力(順序は不定)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  // 出力 (順序は不定)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  {1, 4}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  {1, 4}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  {1, 4}&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  {1, 4}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key mochiu_wiki:diff:1.41:old-13626:rev-13627:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Wiki</name></author>
	</entry>
	<entry>
		<id>https://mochiu.net/index.php?title=Rust%E3%81%AE%E5%9F%BA%E7%A4%8E_-_%E9%9B%86%E5%90%88&amp;diff=13626&amp;oldid=prev</id>
		<title>Wiki: /* 集合に指定した値と同じ要素が含まれているか確認する */</title>
		<link rel="alternate" type="text/html" href="https://mochiu.net/index.php?title=Rust%E3%81%AE%E5%9F%BA%E7%A4%8E_-_%E9%9B%86%E5%90%88&amp;diff=13626&amp;oldid=prev"/>
		<updated>2025-11-30T18:55:55Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;集合に指定した値と同じ要素が含まれているか確認する&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ja&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← 古い版&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;2025年12月1日 (月) 03:55時点における版&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l518&quot;&gt;518行目:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;518行目:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== 集合に指定した値と同じ要素が含まれているか確認する ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== 集合に指定した値と同じ要素が含まれているか確認する ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;集合に対して、指定した値と同じ要素が含まれているかどうか確認する方法について記載する。&lt;/del&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;集合に対して、指定した値と同じ要素が含まれているかどうか確認することもできる。&lt;/ins&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;要素が含まれているかどうかを確認するには、contains()&lt;/del&gt;メソッドを使用する。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;要素が含まれているかどうかを確認するには、&amp;lt;code&amp;gt;contains&amp;lt;/code&amp;gt; &lt;/ins&gt;メソッドを使用する。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;contains&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;()&lt;/del&gt;メソッドは、集合の要素に指定した値と同じ値の要素が存在する場合はtrue、存在しない場合はfalseとなる。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;code&amp;gt;&lt;/ins&gt;contains&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/code&amp;gt; &lt;/ins&gt;メソッドは、集合の要素に指定した値と同じ値の要素が存在する場合はtrue、存在しない場合はfalseとなる。&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;否定形を使用したい場合は、!&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;演算子を使用してcontains()の結果を反転させる。&lt;/del&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;否定形を使用したい場合は、&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;code&amp;gt;&lt;/ins&gt;!&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/code&amp;gt; 演算子を使用して、containsメソッドの結果を反転させる。&lt;/ins&gt;&amp;lt;br&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  use std::collections::HashSet;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  use std::collections::HashSet;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key mochiu_wiki:diff:1.41:old-13625:rev-13626:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>Wiki</name></author>
	</entry>
	<entry>
		<id>https://mochiu.net/index.php?title=Rust%E3%81%AE%E5%9F%BA%E7%A4%8E_-_%E9%9B%86%E5%90%88&amp;diff=13625&amp;oldid=prev</id>
		<title>Wiki: ページの作成:「== 概要 == Rustにおける集合とは、HashMapの値の無いキーだけの集まりのようなものである。&lt;br&gt; &lt;br&gt; 複数の集合に共通の要素があるのか、片方にあって片方に無いものは何かといった計算をすることができる。&lt;br&gt; &lt;br&gt; HashSetは標準ライブラリに含まれているが、使用する場合には &lt;code&gt;std::collections::HashSet&lt;/code&gt; をインポートする必要がある。&lt;br&gt; &lt;br&gt;&lt;br&gt;  ==…」</title>
		<link rel="alternate" type="text/html" href="https://mochiu.net/index.php?title=Rust%E3%81%AE%E5%9F%BA%E7%A4%8E_-_%E9%9B%86%E5%90%88&amp;diff=13625&amp;oldid=prev"/>
		<updated>2025-11-30T18:49:03Z</updated>

		<summary type="html">&lt;p&gt;ページの作成:「== 概要 == Rustにおける集合とは、HashMapの値の無いキーだけの集まりのようなものである。&amp;lt;br&amp;gt; &amp;lt;br&amp;gt; 複数の集合に共通の要素があるのか、片方にあって片方に無いものは何かといった計算をすることができる。&amp;lt;br&amp;gt; &amp;lt;br&amp;gt; HashSetは標準ライブラリに含まれているが、使用する場合には &amp;lt;code&amp;gt;std::collections::HashSet&amp;lt;/code&amp;gt; をインポートする必要がある。&amp;lt;br&amp;gt; &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;  ==…」&lt;/p&gt;
&lt;p&gt;&lt;b&gt;新規ページ&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== 概要 ==&lt;br /&gt;
Rustにおける集合とは、HashMapの値の無いキーだけの集まりのようなものである。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
複数の集合に共通の要素があるのか、片方にあって片方に無いものは何かといった計算をすることができる。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
HashSetは標準ライブラリに含まれているが、使用する場合には &amp;lt;code&amp;gt;std::collections::HashSet&amp;lt;/code&amp;gt; をインポートする必要がある。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 集合の宣言 ==&lt;br /&gt;
HashSetを使用するには、&amp;lt;code&amp;gt;std::collections::HashSet&amp;lt;/code&amp;gt; をインポートする必要がある。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
集合の要素には、同じ値が複数存在せず、ただ1つだけである。&amp;lt;br&amp;gt;&lt;br /&gt;
したがって、複数の同じ値を集合の要素に追加しても要素は整理される。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 // 空のHashSetを作成&lt;br /&gt;
 let mut set_a = HashSet::new();&lt;br /&gt;
 set_a.insert(1);&lt;br /&gt;
 set_a.insert(3);&lt;br /&gt;
 set_a.insert(5);&lt;br /&gt;
 set_a.insert(7);&lt;br /&gt;
 set_a.insert(9);&lt;br /&gt;
 &lt;br /&gt;
 // 重複を含むHashSetを作成&lt;br /&gt;
 let mut set_b = HashSet::new();&lt;br /&gt;
 set_b.insert(1);&lt;br /&gt;
 set_b.insert(1);&lt;br /&gt;
 set_b.insert(1);&lt;br /&gt;
 set_b.insert(3);&lt;br /&gt;
 set_b.insert(5);&lt;br /&gt;
 set_b.insert(7);&lt;br /&gt;
 set_b.insert(8);&lt;br /&gt;
 set_b.insert(5);&lt;br /&gt;
 set_b.insert(6);&lt;br /&gt;
 set_b.insert(6);&lt;br /&gt;
 set_b.insert(3);&lt;br /&gt;
 set_b.insert(3);&lt;br /&gt;
 set_b.insert(9);&lt;br /&gt;
 set_b.insert(7);&lt;br /&gt;
 &lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, set_b);&lt;br /&gt;
 &lt;br /&gt;
 // 出力&lt;br /&gt;
 {1, 3, 5, 6, 7, 8, 9}&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
また、空のHashSetは &amp;lt;code&amp;gt;new&amp;lt;/code&amp;gt; メソッドで生成する。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;from&amp;lt;/code&amp;gt; メソッドを使用すると、配列から直接HashSetを生成することもできる。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 // 空のHashSetを作成&lt;br /&gt;
 let set_a: HashSet&amp;lt;i32&amp;gt; = HashSet::new();&lt;br /&gt;
 &lt;br /&gt;
 // 配列からHashSetを作成&lt;br /&gt;
 let set_b = HashSet::from([1, 2, 3, 4, 5]);&lt;br /&gt;
 &lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, set_b);&lt;br /&gt;
 &lt;br /&gt;
 // 出力&lt;br /&gt;
 {1, 2, 3, 4, 5}&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;※注意&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;HashSet型には、要素の順番が存在しない。&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;そのため、複数の要素が含まれている場合、どのような順序で並んでいるのかは不定である。&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;また、HashSet型には同じ値の要素は1つしか格納できないため、同じ値を持つ要素は1つにまとめられる。&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
以下の例では、集合の要素として、&amp;quot;H&amp;quot; &amp;quot;a&amp;quot; &amp;quot;p&amp;quot; &amp;quot;p&amp;quot; &amp;quot;y&amp;quot;という5つの文字を要素として集合を作成している。&amp;lt;br&amp;gt;&lt;br /&gt;
重複した&amp;quot;p&amp;quot;は1つにまとめられ、順序は不定である。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 let mut my_set = HashSet::new();&lt;br /&gt;
 my_set.insert(&amp;quot;H&amp;quot;);&lt;br /&gt;
 my_set.insert(&amp;quot;a&amp;quot;);&lt;br /&gt;
 my_set.insert(&amp;quot;p&amp;quot;);&lt;br /&gt;
 my_set.insert(&amp;quot;p&amp;quot;);&lt;br /&gt;
 my_set.insert(&amp;quot;y&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, my_set);&lt;br /&gt;
 &lt;br /&gt;
 // 出力(順序は不定)&lt;br /&gt;
 {&amp;quot;H&amp;quot;, &amp;quot;y&amp;quot;, &amp;quot;a&amp;quot;, &amp;quot;p&amp;quot;}&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 集合のメソッド ==&lt;br /&gt;
==== 要素の追加 ====&lt;br /&gt;
集合に要素を加えるには、&amp;lt;code&amp;gt;insert&amp;lt;/code&amp;gt; メソッドを使用する。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;insert&amp;lt;/code&amp;gt; メソッドは、要素が追加された場合はtrueを返し、既に存在していた場合はfalseを返す。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 let mut x = HashSet::new();&lt;br /&gt;
 x.insert(10);&lt;br /&gt;
 x.insert(&amp;quot;Rust&amp;quot;);&lt;br /&gt;
 &lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, x);&lt;br /&gt;
 &lt;br /&gt;
 // 出力(順序は不定)&lt;br /&gt;
 {10, &amp;quot;Rust&amp;quot;}&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==== 要素の削除 ====&lt;br /&gt;
また、集合の要素を削除するには、&amp;lt;code&amp;gt;remove&amp;lt;/code&amp;gt; メソッドを使用する。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;remove&amp;lt;/code&amp;gt; メソッドは、要素が削除された場合はtrueを返し、要素が存在しなかった場合はfalseを返す。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
集合の要素を全て削除するには、&amp;lt;code&amp;gt;clear&amp;lt;/code&amp;gt; メソッドを使用する。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 let mut x = HashSet::from([3, 1, 5, 4, 2]);&lt;br /&gt;
 x.remove(&amp;amp;5);&lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, x);&lt;br /&gt;
 &lt;br /&gt;
 x.clear();&lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, x);&lt;br /&gt;
 &lt;br /&gt;
 // 出力 (順序は不定)&lt;br /&gt;
 {1, 2, 3, 4}&lt;br /&gt;
 {}&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
removeメソッドは、要素が存在しない場合でもパニックを起こさず、falseを返すだけである。&amp;lt;br&amp;gt;&lt;br /&gt;
これは、Pythonのdiscard関数と同様の動作である。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 let mut color_set = HashSet::from([&amp;quot;Red&amp;quot;, &amp;quot;Green&amp;quot;, &amp;quot;Blue&amp;quot;]);&lt;br /&gt;
 &lt;br /&gt;
 // 存在しない要素を削除しようとしてもエラーにならない&lt;br /&gt;
 color_set.remove(&amp;quot;White&amp;quot;);&lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, color_set);&lt;br /&gt;
 &lt;br /&gt;
 // 出力 (順序は不定)&lt;br /&gt;
 {&amp;quot;Blue&amp;quot;, &amp;quot;Green&amp;quot;, &amp;quot;Red&amp;quot;}&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==== 要素の取得 ====&lt;br /&gt;
HashSetから任意の要素を1つ取り出すための専用メソッドは存在しない。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;iter&amp;lt;/code&amp;gt; メソッドを使用してイテレータを取得して、&amp;lt;code&amp;gt;next&amp;lt;/code&amp;gt; メソッドで要素を取得することができる。&amp;lt;br&amp;gt;&lt;br /&gt;
ただし、どの要素が取得されるかは不定である。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 let mut color_set = HashSet::from([&amp;quot;Red&amp;quot;, &amp;quot;Green&amp;quot;, &amp;quot;Blue&amp;quot;]);&lt;br /&gt;
 &lt;br /&gt;
 // イテレータから要素を1つ取得&lt;br /&gt;
 if let Some(&amp;amp;color) = color_set.iter().next() {&lt;br /&gt;
    println!(&amp;quot;{}&amp;quot;, color);&lt;br /&gt;
    color_set.remove(color);&lt;br /&gt;
    println!(&amp;quot;{:?}&amp;quot;, color_set);&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 if let Some(&amp;amp;color) = color_set.iter().next() {&lt;br /&gt;
    println!(&amp;quot;{}&amp;quot;, color);&lt;br /&gt;
    color_set.remove(color);&lt;br /&gt;
    println!(&amp;quot;{:?}&amp;quot;, color_set);&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 // 出力 (順序は不定)&lt;br /&gt;
 Green&lt;br /&gt;
 {&amp;quot;Blue&amp;quot;, &amp;quot;Red&amp;quot;}&lt;br /&gt;
 Blue&lt;br /&gt;
 {&amp;quot;Red&amp;quot;}&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==== 要素数の取得 ====&lt;br /&gt;
&amp;lt;code&amp;gt;len&amp;lt;/code&amp;gt; メソッドは、HashSetに含まれる要素の数を取得することができる。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 let set1 = HashSet::from([&amp;quot;Red&amp;quot;, &amp;quot;Green&amp;quot;, &amp;quot;Blue&amp;quot;]);&lt;br /&gt;
 let set2 = HashSet::from([1, 2, 3, 4, 5]);&lt;br /&gt;
 &lt;br /&gt;
 println!(&amp;quot;{}&amp;quot;, set1.len());&lt;br /&gt;
 println!(&amp;quot;{}&amp;quot;, set2.len());&lt;br /&gt;
 &lt;br /&gt;
 // 出力&lt;br /&gt;
 3&lt;br /&gt;
 5&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== イテレータを使用して集合に変換する ==&lt;br /&gt;
&amp;lt;code&amp;gt;collect&amp;lt;/code&amp;gt; メソッドを使用すれば、配列、ベクター、文字列等のイテレータを持つコレクションから重複する要素を取り除いてHashSetを生成することができる。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
以下の例では、重複した要素は整理されている。&amp;lt;br&amp;gt;&lt;br /&gt;
文字列の場合は、文字ごとに分解されてHashSetに格納される。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 // 文字列から作成 (文字ごとに分解される)&lt;br /&gt;
 let a: HashSet&amp;lt;char&amp;gt; = &amp;quot;RustRust&amp;quot;.chars().collect();&lt;br /&gt;
 &lt;br /&gt;
 // ベクターから作成&lt;br /&gt;
 let b: HashSet&amp;lt;&amp;amp;str&amp;gt; = vec![&amp;quot;Rust&amp;quot;, &amp;quot;JavaScript&amp;quot;, &amp;quot;PHP&amp;quot;, &amp;quot;Rust&amp;quot;, &amp;quot;JavaScript&amp;quot;, &amp;quot;Rust&amp;quot;]&lt;br /&gt;
    .into_iter()&lt;br /&gt;
    .collect();&lt;br /&gt;
 &lt;br /&gt;
 // 配列から作成&lt;br /&gt;
 let c: HashSet&amp;lt;&amp;amp;str&amp;gt; = [&amp;quot;Rust&amp;quot;, &amp;quot;JavaScript&amp;quot;, &amp;quot;PHP&amp;quot;, &amp;quot;C&amp;quot;, &amp;quot;JavaScript&amp;quot;, &amp;quot;Ruby&amp;quot;, &amp;quot;Swift&amp;quot;]&lt;br /&gt;
    .into_iter()&lt;br /&gt;
    .collect();&lt;br /&gt;
 &lt;br /&gt;
 // HashMapのキーからHashSetを作成&lt;br /&gt;
 use std::collections::HashMap;&lt;br /&gt;
 let mut map = HashMap::new();&lt;br /&gt;
 map.insert(&amp;quot;x&amp;quot;, 100);&lt;br /&gt;
 map.insert(&amp;quot;y&amp;quot;, 200);&lt;br /&gt;
 map.insert(&amp;quot;z&amp;quot;, 300);&lt;br /&gt;
 let d: HashSet&amp;lt;_&amp;gt; = map.keys().cloned().collect();&lt;br /&gt;
 &lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, a);&lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, b);&lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, c);&lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, d);&lt;br /&gt;
 &lt;br /&gt;
 // 出力 (順序は不定)&lt;br /&gt;
 {&amp;#039;R&amp;#039;, &amp;#039;u&amp;#039;, &amp;#039;s&amp;#039;, &amp;#039;t&amp;#039;}&lt;br /&gt;
 {&amp;quot;Rust&amp;quot;, &amp;quot;JavaScript&amp;quot;, &amp;quot;PHP&amp;quot;}&lt;br /&gt;
 {&amp;quot;Rust&amp;quot;, &amp;quot;JavaScript&amp;quot;, &amp;quot;PHP&amp;quot;, &amp;quot;C&amp;quot;, &amp;quot;Ruby&amp;quot;, &amp;quot;Swift&amp;quot;}&lt;br /&gt;
 {&amp;quot;x&amp;quot;, &amp;quot;y&amp;quot;, &amp;quot;z&amp;quot;}&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
配列からHashSetを生成するには、&amp;lt;code&amp;gt;from&amp;lt;/code&amp;gt; メソッド または &amp;lt;code&amp;gt;collect&amp;lt;/code&amp;gt; メソッドを使用する。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 let my_array = [&amp;quot;A&amp;quot;, &amp;quot;B&amp;quot;, &amp;quot;C&amp;quot;];  // 配列の生成&lt;br /&gt;
 &lt;br /&gt;
 // fromメソッドを使用&lt;br /&gt;
 let my_set1 = HashSet::from(my_array);&lt;br /&gt;
 &lt;br /&gt;
 // collectメソッドを使用&lt;br /&gt;
 let my_set2: HashSet&amp;lt;_&amp;gt; = my_array.into_iter().collect();&lt;br /&gt;
 &lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, my_set1);&lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, my_set2);&lt;br /&gt;
 &lt;br /&gt;
 // 出力 (順序は不定)&lt;br /&gt;
 {&amp;quot;B&amp;quot;, &amp;quot;C&amp;quot;, &amp;quot;A&amp;quot;}&lt;br /&gt;
 {&amp;quot;B&amp;quot;, &amp;quot;C&amp;quot;, &amp;quot;A&amp;quot;}&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
ベクターからHashSetを作成するには、&amp;lt;code&amp;gt;collect&amp;lt;/code&amp;gt; メソッドを使用する。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 let my_vec = vec![&amp;quot;A&amp;quot;, &amp;quot;B&amp;quot;, &amp;quot;C&amp;quot;];  // ベクターの生成&lt;br /&gt;
 let my_set: HashSet&amp;lt;_&amp;gt; = my_vec.into_iter().collect();&lt;br /&gt;
 &lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, my_set);&lt;br /&gt;
 &lt;br /&gt;
 // 出力 (順序は不定)&lt;br /&gt;
 {&amp;quot;B&amp;quot;, &amp;quot;C&amp;quot;, &amp;quot;A&amp;quot;}&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
範囲 (Range) からHashSetを生成するには、&amp;lt;code&amp;gt;collect&amp;lt;/code&amp;gt; メソッドを使用する。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Rustの範囲 (Range) とは、開始値から終了値までの連続した数値を表すイテレータである。&amp;lt;br&amp;gt;&lt;br /&gt;
範囲は、&amp;lt;code&amp;gt;開始値..終了値&amp;lt;/code&amp;gt; という形式で記述する。&amp;lt;br&amp;gt;&lt;br /&gt;
終了値は範囲に含まれない。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;開始値..=終了値&amp;lt;/code&amp;gt; という形式では、終了値も範囲に含まれる。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 // 0〜9までの範囲からHashSetを作成&lt;br /&gt;
 let my_set: HashSet&amp;lt;_&amp;gt; = (0..10).collect();&lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, my_set);&lt;br /&gt;
 &lt;br /&gt;
 // 出力 (順序は不定)&lt;br /&gt;
 {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 集合の演算 ==&lt;br /&gt;
==== 積集合 ==== &lt;br /&gt;
積集合は、両方の集合に共通する要素からなる集合である。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;amp;&amp;lt;/code&amp;gt; 演算子 または &amp;lt;code&amp;gt;intersection&amp;lt;/code&amp;gt; メソッドを使用して求めることができる。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;intersection&amp;lt;/code&amp;gt; メソッドはイテレータを返すため、&amp;lt;code&amp;gt;collect&amp;lt;/code&amp;gt; メソッドで新しいHashSetに変換する必要がある。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 let a = HashSet::from([1, 2, 3]);&lt;br /&gt;
 let b = HashSet::from([2, 3, 4]);&lt;br /&gt;
 &lt;br /&gt;
 // &amp;amp;演算子を使用&lt;br /&gt;
 let c = &amp;amp;a &amp;amp; &amp;amp;b;&lt;br /&gt;
 &lt;br /&gt;
 // intersectionメソッドを使用&lt;br /&gt;
 let d: HashSet&amp;lt;_&amp;gt; = a.intersection(&amp;amp;b).cloned().collect();&lt;br /&gt;
 &lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, c);&lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, d);&lt;br /&gt;
 &lt;br /&gt;
 // 出力(順序は不定)&lt;br /&gt;
 {2, 3}&lt;br /&gt;
 {2, 3}&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==== 和集合 ==== &lt;br /&gt;
和集合は、少なくともどちらかの集合に要素が含まれている集合である。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;code&amp;gt;|&amp;lt;/code&amp;gt; 演算子 または &amp;lt;code&amp;gt;union&amp;lt;/code&amp;gt; メソッドを使用して求めることができる。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 let a = HashSet::from([1, 2, 3]);&lt;br /&gt;
 let b = HashSet::from([2, 3, 4]);&lt;br /&gt;
 &lt;br /&gt;
 // |演算子を使用&lt;br /&gt;
 let c = &amp;amp;a | &amp;amp;b;&lt;br /&gt;
 &lt;br /&gt;
 // union()メソッドを使用&lt;br /&gt;
 let d: HashSet&amp;lt;_&amp;gt; = a.union(&amp;amp;b).cloned().collect();&lt;br /&gt;
 &lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, c);&lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, d);&lt;br /&gt;
 &lt;br /&gt;
 // 出力(順序は不定)&lt;br /&gt;
 {1, 2, 3, 4}&lt;br /&gt;
 {1, 2, 3, 4}&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==== 差集合 ==== &lt;br /&gt;
差集合は、一方には含まれているがもう一方には含まれていない要素の集合である。&amp;lt;br&amp;gt;&lt;br /&gt;
-演算子またはdifference()メソッドで求めることができる。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 let a = HashSet::from([1, 2, 3]);&lt;br /&gt;
 let b = HashSet::from([2, 3, 4]);&lt;br /&gt;
 &lt;br /&gt;
 // -演算子を使用&lt;br /&gt;
 let c = &amp;amp;a - &amp;amp;b;&lt;br /&gt;
 &lt;br /&gt;
 // difference()メソッドを使用&lt;br /&gt;
 let d: HashSet&amp;lt;_&amp;gt; = a.difference(&amp;amp;b).cloned().collect();&lt;br /&gt;
 &lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, c);&lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, d);&lt;br /&gt;
 &lt;br /&gt;
 // 出力(順序は不定)&lt;br /&gt;
 {1}&lt;br /&gt;
 {1}&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==== XOR (対称差集合) ==== &lt;br /&gt;
XORは、どちらか片方に含まれるが両方には含まれない要素の集合である。&amp;lt;br&amp;gt;&lt;br /&gt;
^演算子またはsymmetric_difference()メソッドで求めることができる。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 let a = HashSet::from([1, 2, 3]);&lt;br /&gt;
 let b = HashSet::from([2, 3, 4]);&lt;br /&gt;
 &lt;br /&gt;
 // ^演算子を使用&lt;br /&gt;
 let c = &amp;amp;a ^ &amp;amp;b;&lt;br /&gt;
 &lt;br /&gt;
 // symmetric_difference()メソッドを使用&lt;br /&gt;
 let d: HashSet&amp;lt;_&amp;gt; = a.symmetric_difference(&amp;amp;b).cloned().collect();&lt;br /&gt;
 &lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, c);&lt;br /&gt;
 println!(&amp;quot;{:?}&amp;quot;, d);&lt;br /&gt;
 &lt;br /&gt;
 // 出力(順序は不定)&lt;br /&gt;
 {1, 4}&lt;br /&gt;
 {1, 4}&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 集合と他の集合との関係 ==&lt;br /&gt;
集合と集合が等しいかどうか、また、集合が他の集合の部分集合かどうか等、集合と他の集合との関係を確認する方法について記載する。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==== 集合が他の集合と等しいかどうか ====&lt;br /&gt;
比較演算子の==または!=で比較することができる。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
集合aの要素が集合bに全て含まれており、集合bの要素が集合aに全て含まれている場合、trueとなる。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 let set1 = HashSet::from([&amp;quot;A&amp;quot;, &amp;quot;B&amp;quot;, &amp;quot;C&amp;quot;]);&lt;br /&gt;
 let set2 = HashSet::from([&amp;quot;B&amp;quot;, &amp;quot;C&amp;quot;, &amp;quot;A&amp;quot;]);&lt;br /&gt;
 &lt;br /&gt;
 println!(&amp;quot;{}&amp;quot;, set1 == set2);&lt;br /&gt;
 &lt;br /&gt;
 // 出力&lt;br /&gt;
 true&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==== 部分集合 ====&lt;br /&gt;
is_subset()メソッドで比較することができる。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
集合aの要素が全て集合bに含まれている場合、集合aは集合bの部分集合であるという。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
以下の例では、集合set1は集合set2の部分集合であるが、集合set2は集合set1の部分集合ではない。&amp;lt;br&amp;gt;&lt;br /&gt;
集合set1と集合set3が等しい場合においても、集合set1は集合set3の部分集合となる。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 let set1 = HashSet::from([&amp;quot;A&amp;quot;, &amp;quot;B&amp;quot;]);&lt;br /&gt;
 let set2 = HashSet::from([&amp;quot;B&amp;quot;, &amp;quot;D&amp;quot;, &amp;quot;C&amp;quot;, &amp;quot;A&amp;quot;]);&lt;br /&gt;
 let set3 = HashSet::from([&amp;quot;B&amp;quot;, &amp;quot;A&amp;quot;]);&lt;br /&gt;
 &lt;br /&gt;
 println!(&amp;quot;{}&amp;quot;, set1.is_subset(&amp;amp;set2));  // set1がset2の部分集合の場合、true&lt;br /&gt;
 println!(&amp;quot;{}&amp;quot;, set2.is_subset(&amp;amp;set1));&lt;br /&gt;
 println!(&amp;quot;{}&amp;quot;, set1.is_subset(&amp;amp;set3));&lt;br /&gt;
 &lt;br /&gt;
 // 出力&lt;br /&gt;
 true&lt;br /&gt;
 false&lt;br /&gt;
 true&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==== 真部分集合 ====&lt;br /&gt;
Rustには真部分集合を直接判定するメソッドは存在しないが、is_subset()メソッドと==演算子を組み合わせることで判定できる。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
集合aの要素が全て集合bに含まれており、かつ、集合aと集合bが等しくない場合、集合aは集合bの真部分集合であるという。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
以下の例では、集合set1は集合set2の真部分集合であり、集合set1と集合set3は真部分集合ではない。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 let set1 = HashSet::from([&amp;quot;A&amp;quot;, &amp;quot;B&amp;quot;]);&lt;br /&gt;
 let set2 = HashSet::from([&amp;quot;B&amp;quot;, &amp;quot;D&amp;quot;, &amp;quot;C&amp;quot;, &amp;quot;A&amp;quot;]);&lt;br /&gt;
 let set3 = HashSet::from([&amp;quot;A&amp;quot;, &amp;quot;B&amp;quot;]);&lt;br /&gt;
 &lt;br /&gt;
 // 真部分集合の判定: 部分集合であり、かつ等しくない&lt;br /&gt;
 println!(&amp;quot;{}&amp;quot;, set1.is_subset(&amp;amp;set2) &amp;amp;&amp;amp; set1 != set2);&lt;br /&gt;
 println!(&amp;quot;{}&amp;quot;, set2.is_subset(&amp;amp;set1) &amp;amp;&amp;amp; set2 != set1);&lt;br /&gt;
 println!(&amp;quot;{}&amp;quot;, set1.is_subset(&amp;amp;set3) &amp;amp;&amp;amp; set1 != set3);&lt;br /&gt;
 &lt;br /&gt;
 // 出力&lt;br /&gt;
 true&lt;br /&gt;
 false&lt;br /&gt;
 false&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==== 超集合 ====&lt;br /&gt;
is_superset()メソッドで比較することができる。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
集合bの要素が全て集合aに含まれている場合、集合aは集合bの超集合であるという。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
以下の例では、集合set1は集合set2の超集合ではないが、集合set2は集合set1の超集合である。&amp;lt;br&amp;gt;&lt;br /&gt;
集合set1と集合set3が等しい場合も、集合set1は集合set3の超集合となる。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 let set1 = HashSet::from([&amp;quot;A&amp;quot;, &amp;quot;B&amp;quot;]);&lt;br /&gt;
 let set2 = HashSet::from([&amp;quot;B&amp;quot;, &amp;quot;D&amp;quot;, &amp;quot;C&amp;quot;, &amp;quot;A&amp;quot;]);&lt;br /&gt;
 let set3 = HashSet::from([&amp;quot;B&amp;quot;, &amp;quot;A&amp;quot;]);&lt;br /&gt;
 &lt;br /&gt;
 println!(&amp;quot;{}&amp;quot;, set1.is_superset(&amp;amp;set2));&lt;br /&gt;
 println!(&amp;quot;{}&amp;quot;, set2.is_superset(&amp;amp;set1));&lt;br /&gt;
 println!(&amp;quot;{}&amp;quot;, set1.is_superset(&amp;amp;set3));&lt;br /&gt;
 println!(&amp;quot;{}&amp;quot;, set3.is_superset(&amp;amp;set1));&lt;br /&gt;
 &lt;br /&gt;
 // 出力&lt;br /&gt;
 false&lt;br /&gt;
 true&lt;br /&gt;
 true&lt;br /&gt;
 true&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==== 真超集合 ====&lt;br /&gt;
Rustには真超集合を直接判定するメソッドは存在しないが、is_superset()メソッドと==演算子を組み合わせることで判定できる。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
集合bの要素が全て集合aに含まれており、かつ、集合aと集合bが等しくない場合、集合aは集合bの真超集合であるという。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
以下の例では、集合set1は集合set2の真超集合ではないが、集合set2は集合set1の真超集合である。&amp;lt;br&amp;gt;&lt;br /&gt;
また、集合set1と集合set3が等しい場合も真超集合ではない。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 let set1 = HashSet::from([&amp;quot;A&amp;quot;, &amp;quot;B&amp;quot;]);&lt;br /&gt;
 let set2 = HashSet::from([&amp;quot;B&amp;quot;, &amp;quot;D&amp;quot;, &amp;quot;C&amp;quot;, &amp;quot;A&amp;quot;]);&lt;br /&gt;
 let set3 = HashSet::from([&amp;quot;A&amp;quot;, &amp;quot;B&amp;quot;]);&lt;br /&gt;
 &lt;br /&gt;
 // 真超集合の判定: 超集合であり、かつ等しくない&lt;br /&gt;
 println!(&amp;quot;{}&amp;quot;, set1.is_superset(&amp;amp;set2) &amp;amp;&amp;amp; set1 != set2);&lt;br /&gt;
 println!(&amp;quot;{}&amp;quot;, set2.is_superset(&amp;amp;set1) &amp;amp;&amp;amp; set2 != set1);&lt;br /&gt;
 println!(&amp;quot;{}&amp;quot;, set1.is_superset(&amp;amp;set3) &amp;amp;&amp;amp; set1 != set3);&lt;br /&gt;
 &lt;br /&gt;
 // 出力&lt;br /&gt;
 false&lt;br /&gt;
 true&lt;br /&gt;
 false&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==== 互いに素 ====&lt;br /&gt;
is_disjoint()メソッドで比較することができる。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
集合aと集合bが同じ要素を1つも持たない時、集合aは集合bと互いに素であるという。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
以下の例では、集合set1は集合set2は共通の要素がないので互いに素であるが、&amp;lt;br&amp;gt;&lt;br /&gt;
集合set1と集合set3、および、集合set2と集合set3は共通する要素があるため互いに素ではない。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 let set1 = HashSet::from([&amp;quot;A&amp;quot;, &amp;quot;B&amp;quot;]);&lt;br /&gt;
 let set2 = HashSet::from([&amp;quot;C&amp;quot;, &amp;quot;D&amp;quot;, &amp;quot;E&amp;quot;]);&lt;br /&gt;
 let set3 = HashSet::from([&amp;quot;A&amp;quot;, &amp;quot;C&amp;quot;]);&lt;br /&gt;
 &lt;br /&gt;
 println!(&amp;quot;{}&amp;quot;, set1.is_disjoint(&amp;amp;set2));&lt;br /&gt;
 println!(&amp;quot;{}&amp;quot;, set1.is_disjoint(&amp;amp;set3));&lt;br /&gt;
 println!(&amp;quot;{}&amp;quot;, set2.is_disjoint(&amp;amp;set3));&lt;br /&gt;
 &lt;br /&gt;
 // 出力&lt;br /&gt;
 true&lt;br /&gt;
 false&lt;br /&gt;
 false&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 集合に指定した値と同じ要素が含まれているか確認する ==&lt;br /&gt;
集合に対して、指定した値と同じ要素が含まれているかどうか確認する方法について記載する。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
要素が含まれているかどうかを確認するには、contains()メソッドを使用する。&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
contains()メソッドは、集合の要素に指定した値と同じ値の要素が存在する場合はtrue、存在しない場合はfalseとなる。&amp;lt;br&amp;gt;&lt;br /&gt;
否定形を使用したい場合は、!演算子を使用してcontains()の結果を反転させる。&amp;lt;br&amp;gt;&lt;br /&gt;
 &amp;lt;syntaxhighlight lang=&amp;quot;rust&amp;quot;&amp;gt;&lt;br /&gt;
 use std::collections::HashSet;&lt;br /&gt;
 &lt;br /&gt;
 let my_set = HashSet::from([&amp;quot;A&amp;quot;, &amp;quot;B&amp;quot;, &amp;quot;C&amp;quot;]);&lt;br /&gt;
 &lt;br /&gt;
 println!(&amp;quot;{}&amp;quot;, my_set.contains(&amp;quot;A&amp;quot;));&lt;br /&gt;
 println!(&amp;quot;{}&amp;quot;, my_set.contains(&amp;quot;D&amp;quot;));&lt;br /&gt;
 println!(&amp;quot;{}&amp;quot;, !my_set.contains(&amp;quot;D&amp;quot;));&lt;br /&gt;
 &lt;br /&gt;
 // 出力&lt;br /&gt;
 true&lt;br /&gt;
 false&lt;br /&gt;
 true&lt;br /&gt;
 &amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
__FORCETOC__&lt;br /&gt;
[[カテゴリ:Rust]]&lt;/div&gt;</summary>
		<author><name>Wiki</name></author>
	</entry>
</feed>