File tree Expand file tree Collapse file tree 6 files changed +178
-322
lines changed
Expand file tree Collapse file tree 6 files changed +178
-322
lines changed Original file line number Diff line number Diff line change 188188
189189 < p class ="text-right "> < small >
190190 最終更新日時(UTC):
191- < span itemprop ="datePublished " content ="2025-06-25T13:48:21 ">
192- 2025年06月25日 13時48分21秒
191+ < span itemprop ="datePublished " content ="2025-10-14T02:34:00 ">
192+ 2025年10月14日 02時34分00秒
193193 </ span >
194194 < br />
195195 < span itemprop ="author " itemscope itemtype ="http://schema.org/Person ">
196- < span itemprop ="name "> suomesta </ span >
196+ < span itemprop ="name "> Akira Takahashi </ span >
197197 </ span >
198198 が更新
199199 </ small > </ p >
225225</ p >
226226< h2 > 概要</ h2 >
227227< p > < code > std::flat_map</ code > は、重複しない要素を格納する連想コンテナの一種であり、キーとそれに対応する値を格納する。</ p >
228- < p > < code > std::flat_map</ code > は、ノードベースで実装される< code > < a href ="../map/map.html "> std::map</ a > </ code > 、ハッシュテーブルで実装される< code > < a href ="../unordered_map/unordered_map.html "> std::unordered_map</ a > </ code > とは異なり、ソート済み配列と二分探索の組み合わせで実装される。これはほかの実装と比較して、メモリ使用量と列挙速度において優位であり、一方で挿入速度と検索速度はほかの実装に劣る。</ p >
228+ < p > < code > std::flat_map</ code > は、ノードベースで実装される< code > < a href ="../map/map.html "> std::map</ a > </ code > 、ハッシュテーブルで実装される< code > < a href ="../unordered_map/unordered_map.html "> std::unordered_map</ a > </ code > とは異なり、ソート済み配列と二分探索の組み合わせで実装される。</ p >
229+ < p > ほかの連想コンテナとの比較としては、</ p >
230+ < ul >
231+ < li > メモリ使用量と列挙速度において優位</ li >
232+ < li > 挿入速度と削除速度はほかの実装に劣る</ li >
233+ < li > 検索速度は、< code > < a href ="../map/map.html "> std::map</ a > </ code > より高速であることが期待できるが (< a class ="cpprefjp-defined-word " data-desc ="関数等の意味論を構成する要素の1つ。Complexity。関数が使うアルゴリズムの空間計算量・時間計算量 "> 計算量</ a > としては同じ対数時間だが、メモリアクセスが高速)、サイズが大きいときは< code > < a href ="../unordered_map/unordered_map.html "> std::unordered_map</ a > </ code > に劣る</ li >
234+ </ ul >
229235< p > また、このクラスは分類としては< code > < a href ="../queue/queue.html "> std::queue</ a > </ code > や< code > < a href ="../stack/stack.html "> std::stack</ a > </ code > と同様の< a class ="cpprefjp-defined-word " data-desc ="コンテナをラップしたクラス。一部のコンテナインタフェースをもたない場合がある "> コンテナアダプタ</ a > に分類され、キーの配列と値の配列の2つを内部で持ち、それを< code > < a href ="../ranges/zip_view.html "> std::ranges::zip_view</ a > </ code > で綴じあわせて扱う実装となっている。</ p >
230236< p > このコンテナクラスは、ランダムアクセスイテレータをサポートする。</ p >
231237< h3 > ほかの連想コンテナとの要件の違い</ h3 >
Original file line number Diff line number Diff line change 188188
189189 < p class ="text-right "> < small >
190190 最終更新日時(UTC):
191- < span itemprop ="datePublished " content ="2025-06-25T13:48:21 ">
192- 2025年06月25日 13時48分21秒
191+ < span itemprop ="datePublished " content ="2025-10-14T02:34:00 ">
192+ 2025年10月14日 02時34分00秒
193193 </ span >
194194 < br />
195195 < span itemprop ="author " itemscope itemtype ="http://schema.org/Person ">
196- < span itemprop ="name "> suomesta </ span >
196+ < span itemprop ="name "> Akira Takahashi </ span >
197197 </ span >
198198 が更新
199199 </ small > </ p >
225225</ p >
226226< h2 > 概要</ h2 >
227227< p > < code > flat_multimap</ code > は同一キーの要素を複数格納できる連想コンテナの一種であり、キーとそれに対応する値を格納する。</ p >
228- < p > < code > std::flat_multimap</ code > は、ノードベースで実装される< code > < a href ="../map/multimap.html "> std::multimap</ a > </ code > 、ハッシュテーブルで実装される< code > < a href ="../unordered_map/unordered_multimap.html "> std::unordered_multimap</ a > </ code > とは異なり、ソート済み配列と二分探索の組み合わせで実装される。これはほかの実装と比較して、メモリ使用量と列挙速度において優位であり、一方で挿入速度と検索速度はほかの実装に劣る。</ p >
228+ < p > < code > std::flat_multimap</ code > は、ノードベースで実装される< code > < a href ="../map/multimap.html "> std::multimap</ a > </ code > 、ハッシュテーブルで実装される< code > < a href ="../unordered_map/unordered_multimap.html "> std::unordered_multimap</ a > </ code > とは異なり、ソート済み配列と二分探索の組み合わせで実装される。</ p >
229+ < p > ほかの連想コンテナとの比較としては、</ p >
230+ < ul >
231+ < li > メモリ使用量と列挙速度において優位</ li >
232+ < li > 挿入速度と削除速度はほかの実装に劣る</ li >
233+ < li > 検索速度は、< code > < a href ="../map/multimap.html "> std::multimap</ a > </ code > より高速であることが期待できるが (< a class ="cpprefjp-defined-word " data-desc ="関数等の意味論を構成する要素の1つ。Complexity。関数が使うアルゴリズムの空間計算量・時間計算量 "> 計算量</ a > としては同じ対数時間だが、メモリアクセスが高速)、サイズが大きいときは< code > < a href ="../unordered_map/unordered_multimap.html "> std::unordered_multimap</ a > </ code > に劣る</ li >
234+ </ ul >
229235< p > また、このクラスは分類としては< code > < a href ="../queue/queue.html "> std::queue</ a > </ code > や< code > < a href ="../stack/stack.html "> std::stack</ a > </ code > と同様の< a class ="cpprefjp-defined-word " data-desc ="コンテナをラップしたクラス。一部のコンテナインタフェースをもたない場合がある "> コンテナアダプタ</ a > に分類され、キーの配列と値の配列の2つを内部で持ち、それを< code > < a href ="../ranges/zip_view.html "> std::ranges::zip_view</ a > </ code > で綴じあわせて扱う実装となっている。</ p >
230236< p > このコンテナクラスは、ランダムアクセスイテレータをサポートする。</ p >
231237< h3 > ほかの連想コンテナとの要件の違い</ h3 >
Original file line number Diff line number Diff line change 188188
189189 < p class ="text-right "> < small >
190190 最終更新日時(UTC):
191- < span itemprop ="datePublished " content ="2025-06-25T13:48:21 ">
192- 2025年06月25日 13時48分21秒
191+ < span itemprop ="datePublished " content ="2025-10-14T02:34:00 ">
192+ 2025年10月14日 02時34分00秒
193193 </ span >
194194 < br />
195195 < span itemprop ="author " itemscope itemtype ="http://schema.org/Person ">
196- < span itemprop ="name "> suomesta </ span >
196+ < span itemprop ="name "> Akira Takahashi </ span >
197197 </ span >
198198 が更新
199199 </ small > </ p >
223223</ p >
224224< h2 > 概要</ h2 >
225225< p > < code > std::flat_multiset</ code > は、重複する要素を許可する連想コンテナの一種であり、要素自身がキーとなる、集合を表すクラスである。</ p >
226- < p > < code > std::flat_multiset</ code > は、ノードベースで実装される< code > < a href ="../set/multiset.html "> std::multiset</ a > </ code > 、ハッシュテーブルで実装される< code > < a href ="../unordered_set/unordered_multiset.html "> std::unordered_multiset</ a > </ code > とは異なり、ソート済み配列と二分探索の組み合わせで実装される。これはほかの実装と比較して、メモリ使用量と列挙速度において優位であり、一方で挿入速度と検索速度はほかの実装に劣る。</ p >
226+ < p > < code > std::flat_multiset</ code > は、ノードベースで実装される< code > < a href ="../set/multiset.html "> std::multiset</ a > </ code > 、ハッシュテーブルで実装される< code > < a href ="../unordered_set/unordered_multiset.html "> std::unordered_multiset</ a > </ code > とは異なり、ソート済み配列と二分探索の組み合わせで実装される。</ p >
227+ < p > ほかの連想コンテナとの比較としては、</ p >
228+ < ul >
229+ < li > メモリ使用量と列挙速度において優位</ li >
230+ < li > 挿入速度と削除速度はほかの実装に劣る</ li >
231+ < li > 検索速度は、< code > < a href ="../set/multiset.html "> std::multiset</ a > </ code > より高速であることが期待できるが (< a class ="cpprefjp-defined-word " data-desc ="関数等の意味論を構成する要素の1つ。Complexity。関数が使うアルゴリズムの空間計算量・時間計算量 "> 計算量</ a > としては同じ対数時間だが、メモリアクセスが高速)、サイズが大きいときは< code > < a href ="../unordered_set/unordered_multiset.html "> std::unordered_multiset</ a > </ code > に劣る</ li >
232+ </ ul >
227233< p > また、このクラスは分類としては< code > < a href ="../queue/queue.html "> std::queue</ a > </ code > や< code > < a href ="../stack/stack.html "> std::stack</ a > </ code > と同様の< a class ="cpprefjp-defined-word " data-desc ="コンテナをラップしたクラス。一部のコンテナインタフェースをもたない場合がある "> コンテナアダプタ</ a > に分類され、キーの配列をラップして扱う実装となっている。</ p >
228234< p > このコンテナクラスは、ランダムアクセスイテレータをサポートする。</ p >
229235< h3 > ほかの連想コンテナとの要件の違い</ h3 >
Original file line number Diff line number Diff line change 188188
189189 < p class ="text-right "> < small >
190190 最終更新日時(UTC):
191- < span itemprop ="datePublished " content ="2025-06-25T13:48:21 ">
192- 2025年06月25日 13時48分21秒
191+ < span itemprop ="datePublished " content ="2025-10-14T02:34:00 ">
192+ 2025年10月14日 02時34分00秒
193193 </ span >
194194 < br />
195195 < span itemprop ="author " itemscope itemtype ="http://schema.org/Person ">
196- < span itemprop ="name "> suomesta </ span >
196+ < span itemprop ="name "> Akira Takahashi </ span >
197197 </ span >
198198 が更新
199199 </ small > </ p >
223223</ p >
224224< h2 > 概要</ h2 >
225225< p > < code > std::flat_set</ code > は、重複しない要素を格納する連想コンテナの一種であり、要素自身がキーとなる、集合を表すクラスである。</ p >
226- < p > < code > std::flat_set</ code > は、ノードベースで実装される< code > < a href ="../set/set.html "> std::set</ a > </ code > 、ハッシュテーブルで実装される< code > < a href ="../unordered_set/unordered_set.html "> std::unordered_set</ a > </ code > とは異なり、ソート済み配列と二分探索の組み合わせで実装される。これはほかの実装と比較して、メモリ使用量と列挙速度において優位であり、一方で挿入速度と検索速度はほかの実装に劣る。</ p >
226+ < p > < code > std::flat_set</ code > は、ノードベースで実装される< code > < a href ="../set/set.html "> std::set</ a > </ code > 、ハッシュテーブルで実装される< code > < a href ="../unordered_set/unordered_set.html "> std::unordered_set</ a > </ code > とは異なり、ソート済み配列と二分探索の組み合わせで実装される。</ p >
227+ < p > ほかの連想コンテナとの比較としては、</ p >
228+ < ul >
229+ < li > メモリ使用量と列挙速度において優位</ li >
230+ < li > 挿入速度と削除速度はほかの実装に劣る</ li >
231+ < li > 検索速度は、< code > < a href ="../set/set.html "> std::set</ a > </ code > より高速であることが期待できるが (< a class ="cpprefjp-defined-word " data-desc ="関数等の意味論を構成する要素の1つ。Complexity。関数が使うアルゴリズムの空間計算量・時間計算量 "> 計算量</ a > としては同じ対数時間だが、メモリアクセスが高速)、サイズが大きいときは< code > < a href ="../unordered_set/unordered_set.html "> std::unordered_set</ a > </ code > に劣る</ li >
232+ </ ul >
227233< p > また、このクラスは分類としては< code > < a href ="../queue/queue.html "> std::queue</ a > </ code > や< code > < a href ="../stack/stack.html "> std::stack</ a > </ code > と同様の< a class ="cpprefjp-defined-word " data-desc ="コンテナをラップしたクラス。一部のコンテナインタフェースをもたない場合がある "> コンテナアダプタ</ a > に分類され、キーの配列をラップして扱う実装となっている。</ p >
228234< p > このコンテナクラスは、ランダムアクセスイテレータをサポートする。</ p >
229235< h3 > ほかの連想コンテナとの要件の違い</ h3 >
You can’t perform that action at this time.
0 commit comments