6868
6969 </ head >
7070 < body >
71- < header data-kunai-mdinfo ="{"meta": {"header": ["algorithm"], "namespace": ["std::ranges"], "id-type": ["function template"], "cpp": ["cpp20"]}, "sources": [{"id": "94b511aefed15c994920f4798fd75254e74b254d", "source": "#include <algorithm>\n#include <iostream>\n#include <vector>\n#include <numeric>\n#include <iterator>\n#include <random>\n\nint main() {\n std::vector<int> v(10);\n std::iota(v.begin(), v.end(), 0); // 0\uff5e9 \u307e\u3067\u306e\u5024\u3092\u751f\u6210\n\n std::cout << \"before: \";\n std::ranges::copy(v, std::ostream_iterator<int>(std::cout));\n std::cout << std::endl;\n\n // \u30b7\u30e3\u30c3\u30d5\u30eb\n std::random_device seed_gen;\n std::mt19937 engine(seed_gen());\n std::ranges::shuffle(v, engine);\n\n std::cout << \" after: \";\n std::ranges::copy(v, std::ostream_iterator<int>(std::cout));\n std::cout << std::endl;\n}\n"}, {"id": "698c0cb181871af237971e44b70a6cd1f9fe2155", "source": "#include <algorithm>\n#include <iostream>\n#include <string>\n#include <random>\n\nint main() {\n std::string input = \"0123456789abcdef\";\n\n std::cout << \"before: \" << input << std::endl;\n\n // \u30b7\u30e3\u30c3\u30d5\u30eb\n std::random_device seed_gen;\n std::mt19937 engine(seed_gen());\n std::ranges::shuffle(input, engine);\n\n std::cout << \" after: \" << input << std::endl;\n}\n"}], "page_id": ["reference", "algorithm", "ranges_shuffle"]} ">
71+ < header data-kunai-mdinfo ="{"meta": {"header": ["algorithm"], "namespace": ["std::ranges"], "id-type": ["function template"], "cpp": ["cpp20"]}, "sources": [{"id": "92f1f98455a5147992451042e7d2f8a5081731e1", "source": "#include <algorithm>\n#include <iostream>\n#include <vector>\n#include <numeric>\n#include <iterator>\n#include <random>\n#include <cstdint>\n\nint main() {\n std::vector<int> v(10);\n std::iota(v.begin(), v.end(), 0); // 0\uff5e9 \u307e\u3067\u306e\u5024\u3092\u751f\u6210\n\n std::cout << \"before: \";\n std::ranges::copy(v, std::ostream_iterator<int>(std::cout));\n std::cout << std::endl;\n\n // \u30b7\u30e3\u30c3\u30d5\u30eb\n std::random_device seed_gen;\n std::uint32_t seed = seed_gen();\n std::mt19937 engine(seed);\n std::ranges::shuffle(v, engine);\n\n std::cout << \" after: \";\n std::ranges::copy(v, std::ostream_iterator<int>(std::cout));\n std::cout << std::endl;\n}\n"}, {"id": "60ca1271bb0d8bfd506de04b1af9a4da4e2a1ac4", "source": "#include <algorithm>\n#include <iostream>\n#include <string>\n#include <random>\n#include <cstdint>\n\nint main() {\n std::string input = \"0123456789abcdef\";\n\n std::cout << \"before: \" << input << std::endl;\n\n // \u30b7\u30e3\u30c3\u30d5\u30eb\n std::random_device seed_gen;\n std::uint32_t seed = seed_gen();\n std::mt19937 engine(seed);\n std::ranges::shuffle(input, engine);\n\n std::cout << \" after: \" << input << std::endl;\n}\n"}], "page_id": ["reference", "algorithm", "ranges_shuffle"]} ">
7272 < nav class ="navbar navbar-default " role ="navigation ">
7373 < div class ="container-fluid ">
7474 < div class ="navbar-header ">
188188
189189 < p class ="text-right "> < small >
190190 最終更新日時(UTC):
191- < span itemprop ="datePublished " content ="2025-07-08T15:33:39 ">
192- 2025年07月08日 15時33分39秒
191+ < span itemprop ="datePublished " content ="2025-10-22T16:15:43 ">
192+ 2025年10月22日 16時15分43秒
193193 </ span >
194194 < br />
195195 < span itemprop ="author " itemscope itemtype ="http://schema.org/Person ">
@@ -251,12 +251,13 @@ <h2>備考</h2>
251251</ ul >
252252< h2 > 例</ h2 >
253253< h3 > 整数の配列をシャッフルする</ h3 >
254- < p > < div class ="yata " id ="94b511aefed15c994920f4798fd75254e74b254d "> < div class ="codehilite "> < pre > < span > </ span > < code > < span class ="cp "> #include</ span > < span class ="cpf "> < a href ="../algorithm.html "> <algorithm></ a > </ span > < span class ="cp "> </ span >
254+ < p > < div class ="yata " id ="92f1f98455a5147992451042e7d2f8a5081731e1 "> < div class ="codehilite "> < pre > < span > </ span > < code > < span class ="cp "> #include</ span > < span class ="cpf "> < a href ="../algorithm.html "> <algorithm></ a > </ span > < span class ="cp "> </ span >
255255< span class ="cp "> #include</ span > < span class ="cpf "> < a href ="../iostream.html "> <iostream></ a > </ span > < span class ="cp "> </ span >
256256< span class ="cp "> #include</ span > < span class ="cpf "> < a href ="../vector.html "> <vector></ a > </ span > < span class ="cp "> </ span >
257257< span class ="cp "> #include</ span > < span class ="cpf "> < a href ="../numeric.html "> <numeric></ a > </ span > < span class ="cp "> </ span >
258258< span class ="cp "> #include</ span > < span class ="cpf "> < a href ="../iterator.html "> <iterator></ a > </ span > < span class ="cp "> </ span >
259259< span class ="cp "> #include</ span > < span class ="cpf "> < a href ="../random.html "> <random></ a > </ span > < span class ="cp "> </ span >
260+ < span class ="cp "> #include</ span > < span class ="cpf "> < a href ="../cstdint.html "> <cstdint></ a > </ span > < span class ="cp "> </ span >
260261
261262< span class ="kt "> int</ span > < span class ="nf "> main</ span > < span class ="p "> ()</ span > < span class ="p "> {</ span >
262263 < span class ="n "> < a href ="../vector/vector.html "> std::vector</ a > </ span > < span class ="o "> <</ span > < span class ="kt "> int</ span > < span class ="o "> ></ span > < span class ="n "> v</ span > < span class ="p "> (</ span > < span class ="mi "> 10</ span > < span class ="p "> );</ span >
@@ -268,7 +269,8 @@ <h3>整数の配列をシャッフルする</h3>
268269
269270 < span class ="c1 "> // シャッフル</ span >
270271 < span class ="n "> < a href ="../random/random_device.html "> std::random_device</ a > </ span > < span class ="n "> seed_gen</ span > < span class ="p "> ;</ span >
271- < span class ="n "> < a href ="../random/mt19937.html "> std::mt19937</ a > </ span > < span class ="n "> engine</ span > < span class ="p "> (</ span > < span class ="n "> < a href ="../random/random_device/op_call.html "> seed_gen()</ a > </ span > < span class ="p "> );</ span >
272+ < span class ="n "> < a href ="../cstdint/uint32_t.html "> std::uint32_t</ a > </ span > < span class ="n "> seed</ span > < span class ="o "> =</ span > < span class ="n "> seed_gen</ span > < span class ="p "> ();</ span >
273+ < span class ="n "> < a href ="../random/mt19937.html "> std::mt19937</ a > </ span > < span class ="n "> engine</ span > < span class ="p "> (</ span > < span class ="n "> seed</ span > < span class ="p "> );</ span >
272274 < span class ="n "> < span style ="color:#ff0000 "> std::ranges::shuffle</ span > </ span > < span class ="p "> (</ span > < span class ="n "> v</ span > < span class ="p "> ,</ span > < span class ="n "> engine</ span > < span class ="p "> );</ span >
273275
274276 < span class ="n "> < a href ="../iostream/cout.html "> std::cout</ a > </ span > < span class ="o "> <<</ span > < span class ="s "> " after: "</ span > < span class ="p "> ;</ span >
@@ -282,10 +284,11 @@ <h4>出力例</h4>
282284 after: 5803429716
283285</ code > </ pre > </ p >
284286< h3 > 文字列をシャッフルする</ h3 >
285- < p > < div class ="yata " id ="698c0cb181871af237971e44b70a6cd1f9fe2155 "> < div class ="codehilite "> < pre > < span > </ span > < code > < span class ="cp "> #include</ span > < span class ="cpf "> < a href ="../algorithm.html "> <algorithm></ a > </ span > < span class ="cp "> </ span >
287+ < p > < div class ="yata " id ="60ca1271bb0d8bfd506de04b1af9a4da4e2a1ac4 "> < div class ="codehilite "> < pre > < span > </ span > < code > < span class ="cp "> #include</ span > < span class ="cpf "> < a href ="../algorithm.html "> <algorithm></ a > </ span > < span class ="cp "> </ span >
286288< span class ="cp "> #include</ span > < span class ="cpf "> < a href ="../iostream.html "> <iostream></ a > </ span > < span class ="cp "> </ span >
287289< span class ="cp "> #include</ span > < span class ="cpf "> < a href ="../string.html "> <string></ a > </ span > < span class ="cp "> </ span >
288290< span class ="cp "> #include</ span > < span class ="cpf "> < a href ="../random.html "> <random></ a > </ span > < span class ="cp "> </ span >
291+ < span class ="cp "> #include</ span > < span class ="cpf "> < a href ="../cstdint.html "> <cstdint></ a > </ span > < span class ="cp "> </ span >
289292
290293< span class ="kt "> int</ span > < span class ="nf "> main</ span > < span class ="p "> ()</ span > < span class ="p "> {</ span >
291294 < span class ="n "> < a href ="../string/basic_string.html "> std::string</ a > </ span > < span class ="n "> input</ span > < span class ="o "> =</ span > < span class ="s "> "0123456789abcdef"</ span > < span class ="p "> ;</ span >
@@ -294,7 +297,8 @@ <h3>文字列をシャッフルする</h3>
294297
295298 < span class ="c1 "> // シャッフル</ span >
296299 < span class ="n "> < a href ="../random/random_device.html "> std::random_device</ a > </ span > < span class ="n "> seed_gen</ span > < span class ="p "> ;</ span >
297- < span class ="n "> < a href ="../random/mt19937.html "> std::mt19937</ a > </ span > < span class ="n "> engine</ span > < span class ="p "> (</ span > < span class ="n "> < a href ="../random/random_device/op_call.html "> seed_gen()</ a > </ span > < span class ="p "> );</ span >
300+ < span class ="n "> < a href ="../cstdint/uint32_t.html "> std::uint32_t</ a > </ span > < span class ="n "> seed</ span > < span class ="o "> =</ span > < span class ="n "> seed_gen</ span > < span class ="p "> ();</ span >
301+ < span class ="n "> < a href ="../random/mt19937.html "> std::mt19937</ a > </ span > < span class ="n "> engine</ span > < span class ="p "> (</ span > < span class ="n "> seed</ span > < span class ="p "> );</ span >
298302 < span class ="n "> < span style ="color:#ff0000 "> std::ranges::shuffle</ span > </ span > < span class ="p "> (</ span > < span class ="n "> input</ span > < span class ="p "> ,</ span > < span class ="n "> engine</ span > < span class ="p "> );</ span >
299303
300304 < span class ="n "> < a href ="../iostream/cout.html "> std::cout</ a > </ span > < span class ="o "> <<</ span > < span class ="s "> " after: "</ span > < span class ="o "> <<</ span > < span class ="n "> input</ span > < span class ="o "> <<</ span > < span class ="n "> < a href ="../ostream/endl.html "> std::endl</ a > </ span > < span class ="p "> ;</ span >
0 commit comments