ã¢ã«ã´ãªãºã ã©ã¤ãã©ãª
ã¢ã«ã´ãªãºã ã©ã¤ãã©ãªã¯è¦ç´ ã®ç¯å²ã«å¯¾ãã¦åä½ããæ§ã
ãªç®ç (æ¤ç´¢ãã½ã¼ããè¨æ°ãæä½ãªã©) ã®é¢æ°ãå®ç¾©ãã¾ãã ç¯å²ã¯ [first, last)
ã¨ãã¦å®ç¾©ããã last
ã¯èª¿æ»ã¾ãã¯å¤æ´ããæå¾ã®è¦ç´ ã®æ¬¡ã®è¦ç´ ãåç
§ãããã¨ã«æ³¨æãã¦ãã ããã
å¶ç´ä»ãã¢ã«ã´ãªãºãC++20 ã§ã¯ã»ã¨ãã©ã®ã¢ã«ã´ãªãºã ã®å¶ç´ä»ããã¼ã¸ã§ã³ãåå空é std::vector<int> v = {7, 1, 4, 0, -1}; std::ranges::sort(v); // å¶ç´ä»ãã¢ã«ã´ãªãºã ããã <iterator> ã¯å ±éã¢ã«ã´ãªãºã æä½ãå¶ç´ä»ãã«ãããã¨ã容æã«ããããã«è¨è¨ãããã³ã³ã»ããããã³é¢é£ã¦ã¼ãã£ãªãã£ã®ã»ãããæä¾ãã¾ãã |
(C++20以ä¸) |
å®è¡ããªã·ã¼ã»ã¨ãã©ã®ã¢ã«ã´ãªãºã ã«ã¯å®è¡ããªã·ã¼ãåãåããªã¼ãã¼ãã¼ããããã¾ãã æ¨æºã©ã¤ãã©ãªã®ã¢ã«ã´ãªãºã ã¯ããã¤ãã®å®è¡ããªã·ã¼ããµãã¼ããã¦ããã対å¿ããå®è¡ããªã·ã¼åã¨ãªãã¸ã§ã¯ããæä¾ããã¾ãã ã¦ã¼ã¶ã¯å¯¾å¿ããåã®å®è¡ããªã·ã¼ãªãã¸ã§ã¯ããæå®ãã¦ä¸¦åã¢ã«ã´ãªãºã ãå¼ã³åºããã¨ã§ãå®è¡ããªã·ã¼ãéçã«é¸æã§ãã¾ãã æ¨æºã©ã¤ãã©ãªã®å®è£ ã¯æ¡å¼µã¨ãã¦è¿½å ã®å®è¡ããªã·ã¼ãå®ç¾©ãã¦ããå ´åãããã¾ãã å¦çç³»å®ç¾©åã®å®è¡ããªã·ã¼ãªãã¸ã§ã¯ããæå®ãã¦ä¸¦åã¢ã«ã´ãªãºã ãå¼ã³åºããå ´åã®ã»ãã³ãã£ã¯ã¹ã¯å¦çç³»å®ç¾©ã§ãã 並åçã®ã¢ã«ã´ãªãºã (std::for_each 㨠std::for_each_n ãé¤ãã¾ã) ã¯ã std::is_trivially_copy_constructible_v<T> ã㤠std::is_trivially_destructible_v<T> ã§ããã° (ãã ã
|
(C++17以ä¸) |
é夿´ã·ã¼ã±ã³ã¹æä½ | |
ããã
<algorithm> ã§å®ç¾© | |
(C++11)(C++11)(C++11) |
è¿°èªãæå®ç¯å²ã®è¦ç´ ã®ãã¹ã¦ã«å¯¾ã㦠true ãè¿ããã©ãããããããã«å¯¾ã㦠true ãè¿ããã©ãããã¾ãã¯ãããã«å¯¾ãã¦ã true ãè¿ããªããã©ããã調ã¹ã¾ã (颿°ãã³ãã¬ã¼ã) |
æå®ç¯å²ã®è¦ç´ ã«é¢æ°ãé©ç¨ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
(C++17) |
æå®åæ°ã®è¦ç´ ã«é¢æ°ãé©ç¨ãã¾ã (颿°ãã³ãã¬ã¼ã) |
ä¸å®ã®åºæºãæºããè¦ç´ ã®æ°ãè¿ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
2ã¤ã®ç¯å²ãç°ãªãæåã®ä½ç½®ãæ¢ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
(C++11) |
ä¸å®ã®åºæºãæºããæåã®è¦ç´ ãæ¢ãã¾ã (颿°ãã³ãã¬ã¼ã) |
æå®ãããè¦ç´ ã®ä¸¦ã³ãç¾ããæå¾ã®ä½ç½®ãæ¢ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå®ãããè¦ç´ ã®ãããããç¾ããä½ç½®ãæ¢ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
åãè¦ç´ (ã¾ãã¯æå®ãããè¿°èªãæºããè¦ç´ ) 2ã¤ã飿¥ãã¦ããæåã®ä½ç½®ãæ¢ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå®ç¯å²ã®è¦ç´ ã«å¯¾ãã¦æ¤ç´¢ãè¡ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå®åæ°ã®é£ç¶ããæå®è¦ç´ ãæå®ç¯å²ããæ¤ç´¢ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
夿´ã·ã¼ã±ã³ã¹æä½ | |
ããã
<algorithm> ã§å®ç¾© | |
(C++11) |
æå®ç¯å²ã®è¦ç´ ãæ°ããä½ç½®ã«ã³ãã¼ãã¾ã (颿°ãã³ãã¬ã¼ã) |
(C++11) |
æå®åæ°ã®è¦ç´ ãæ°ããä½ç½®ã«ã³ãã¼ãã¾ã (颿°ãã³ãã¬ã¼ã) |
æå®ç¯å²ã®è¦ç´ ãå¾ãããã³ãã¼ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
(C++11) |
æå®ç¯å²ã®è¦ç´ ãæ°ããä½ç½®ã«ã ã¼ããã¾ã (颿°ãã³ãã¬ã¼ã) |
(C++11) |
æå®ç¯å²ã®è¦ç´ ãå¾ãããã ã¼ããã¾ã (颿°ãã³ãã¬ã¼ã) |
æå®ãããè¦ç´ ãç¯å²å
ã®å
¨è¦ç´ ã«ã³ãã¼ä»£å
¥ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå®ãããè¦ç´ ãæå®åæ°ã®è¦ç´ ã«ã³ãã¼ä»£å
¥ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå®ç¯å²ã®è¦ç´ ã«é¢æ°ãé©ç¨ããçµæãå¥ã®ç¯å²ã«æ ¼ç´ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
颿°ãé£ç¶çã«å¼ã³åºããçµæãæå®ç¯å²ã®å
¨è¦ç´ ã«ä»£å
¥ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
颿°ãé£ç¶çã«å¼ã³åºããçµæãæå®åæ°ã®è¦ç´ ã«ä»£å
¥ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
ä¸å®ã®åºæºãæºããè¦ç´ ãåé¤ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå®ç¯å²ã®è¦ç´ ããä¸å®ã®åºæºãæºãããã®ãé¤ãã¦ã³ãã¼ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
ä¸å®ã®åºæºãæºãããã¹ã¦ã®å¤ãå¥ã®å¤ã«ç½®ãæãã¾ã (颿°ãã³ãã¬ã¼ã) | |
ä¸å®ã®åºæºãæºããè¦ç´ ãå¥ã®å¤ã«ç½®ãæããªããæå®ç¯å²ãã³ãã¼ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
2ã¤ã®ãªãã¸ã§ã¯ãã®å¤ãå
¥ãæ¿ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
2ã¤ã®ç¯å²ã®è¦ç´ ãå
¥ãæ¿ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
2ã¤ã®ã¤ãã¬ã¼ã¿ãæãè¦ç´ ãå
¥ãæ¿ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå®ç¯å²ã®è¦ç´ ã®é åºãå転ããã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå®ç¯å²ã®è¦ç´ ã®é åºãå転ãããã³ãã¼ã使ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå®ç¯å²ã®è¦ç´ ã®é åºãå転ããã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå®ç¯å²ã®è¦ç´ ã®é åºãå転ãããã³ãã¼ã使ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
(C++20) |
ç¯å²å
ã®è¦ç´ ãã·ãããã¾ã (颿°ãã³ãã¬ã¼ã) |
(C++17æªæº)(C++11) |
æå®ç¯å²ã®è¦ç´ ãã©ã³ãã ã«ä¸¦ã¹æ¿ãã¾ã (颿°ãã³ãã¬ã¼ã) |
(C++17) |
æå®åæ°ã®è¦ç´ ãã©ã³ãã ã«é¸æãã¾ã (颿°ãã³ãã¬ã¼ã) |
æå®ç¯å²ã®é£ç¶ãã¦ããéè¤è¦ç´ ãåé¤ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå®ç¯å²ã®è¦ç´ ã®é£ç¶ãã¦ããéè¤è¦ç´ ãå«ã¾ããªãã³ãã¼ã使ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
åå²æä½ | |
ããã
<algorithm> ã§å®ç¾© | |
(C++11) |
æå®ç¯å²ãæå®ããè¿°èªã§åå²ããã¦ãããã©ãã調ã¹ã¾ã (颿°ãã³ãã¬ã¼ã) |
æå®ç¯å²ã®è¦ç´ ã2ã¤ã®ã°ã«ã¼ãã«åå²ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
(C++11) |
æå®ç¯å²ã®è¦ç´ ã2ã¤ã®ã°ã«ã¼ãã«åå²ããªããã³ãã¼ãã¾ã (颿°ãã³ãã¬ã¼ã) |
ç¸å¯¾çãªé åºãç¶æããªããè¦ç´ ã2ã¤ã®ã°ã«ã¼ãã«åå²ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
(C++11) |
åå²ãããç¯å²ã®åå²ç¹ãæ¢ãã¾ã (颿°ãã³ãã¬ã¼ã) |
ã½ã¼ãæä½ | |
ããã
<algorithm> ã§å®ç¾© | |
(C++11) |
æå®ç¯å²ãæé ã«ã½ã¼ãããã¦ããã調ã¹ã¾ã (颿°ãã³ãã¬ã¼ã) |
(C++11) |
æã大ããªã½ã¼ãæ¸ã¿ã®é¨åç¯å²ãæ¢ãã¾ã (颿°ãã³ãã¬ã¼ã) |
æå®ç¯å²ãæé ã«ã½ã¼ããã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå®ç¯å²ã®æåã® N åã®è¦ç´ ãã½ã¼ããã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå®ç¯å²ã®æåã® N åã®è¦ç´ ãã½ã¼ããããã³ãã¼ã使ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
çããè¦ç´ éã®é åºãç¶æããªããæå®ç¯å²ã®è¦ç´ ãã½ã¼ããã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå®ãããè¦ç´ ã§åå²ãããããã«æå®ç¯å²ãé¨åã½ã¼ããã¾ã (颿°ãã³ãã¬ã¼ã) | |
äºåæ¢ç´¢æä½ (ã½ã¼ãæ¸ã¿ç¯å²ç¨) | |
ããã
<algorithm> ã§å®ç¾© | |
æå®ãããå¤ããå°ãããªãæåã®è¦ç´ ãæãã¤ãã¬ã¼ã¿ãè¿ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå®ãããå¤ãã大ããæåã®è¦ç´ ã¸ã®ã¤ãã¬ã¼ã¿ãè¿ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå®ç¯å²ã«è¦ç´ ãåå¨ãããã©ãã調ã¹ã¾ã (颿°ãã³ãã¬ã¼ã) | |
ç¹å®ã®ãã¼ã«ä¸è´ããè¦ç´ ã®ç¯å²ãè¿ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
éåæä½ (ã½ã¼ãæ¸ã¿ç¯å²ç¨) | |
ããã
<algorithm> ã§å®ç¾© | |
2ã¤ã®ã½ã¼ãæ¸ã¿ç¯å²ããã¼ã¸ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
2ã¤ã®ã½ã¼ãæ¸ã¿ç¯å²ããã®å ´ã§ãã¼ã¸ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
ããéåãå¥ã®éåã®é¨åéåã§ãããã©ãã調ã¹ã¾ã (颿°ãã³ãã¬ã¼ã) | |
2ã¤ã®éåã®å·®ãè¨ç®ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
2ã¤ã®éåã®äº¤åãè¨ç®ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
2ã¤ã®éåã®å¯¾ç§°å·®ãè¨ç®ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
2ã¤ã®éåã®åãè¨ç®ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
ãã¼ãæä½ | |
ããã
<algorithm> ã§å®ç¾© | |
(C++11) |
æå®ç¯å²ãæå¤§ãã¼ãã§ãããã©ãã調ã¹ã¾ã (颿°ãã³ãã¬ã¼ã) |
(C++11) |
æå¤§ãã¼ãã§ããæã大ããªé¨åç¯å²ãæ¢ãã¾ã (颿°ãã³ãã¬ã¼ã) |
æå®ç¯å²ã®è¦ç´ ããæå¤§ãã¼ãã使ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå¤§ãã¼ãã«è¦ç´ ã追å ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå¤§ãã¼ãããæã大ããªè¦ç´ ãåé¤ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå¤§ãã¼ããæé ã«ã½ã¼ããããè¦ç´ ã®ç¯å²ã«å¤æãã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå°/æå¤§æ¼ç® | |
ããã
<algorithm> ã§å®ç¾© | |
æå®ãããå¤ã®å¤§ããæ¹ãè¿ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå®ç¯å²ã®æã大ããªè¦ç´ ãè¿ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå®ãããå¤ã®å°ããæ¹ãè¿ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå®ç¯å²ã®æãå°ããªè¦ç´ ãè¿ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
(C++11) |
2ã¤ã®è¦ç´ ã®å°ããæ¹ã¨å¤§ããæ¹ãè¿ãã¾ã (颿°ãã³ãã¬ã¼ã) |
(C++11) |
æå®ç¯å²ã®æãå°ããªè¦ç´ ã¨æã大ããªè¦ç´ ãè¿ãã¾ã (颿°ãã³ãã¬ã¼ã) |
(C++17) |
å¤ãå¢çå¤ã®éã«ã¯ã©ã³ããã¾ã (颿°ãã³ãã¬ã¼ã) |
æ¯è¼æ¼ç® | |
ããã
<algorithm> ã§å®ç¾© | |
2ã¤ã®è¦ç´ éåãåããã©ãã調ã¹ã¾ã (颿°ãã³ãã¬ã¼ã) | |
ããç¯å²ãå¥ã®ç¯å²ããè¾æ¸çã«å°ãããã©ãã調ã¹ã¾ã (颿°ãã³ãã¬ã¼ã) | |
䏿¹æ¯è¼ãç¨ãã¦2ã¤ã®ç¯å²ãæ¯è¼ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
é åæä½ | |
ããã
<algorithm> ã§å®ç¾© | |
(C++11) |
ããã·ã¼ã±ã³ã¹ãå¥ã®ã·ã¼ã±ã³ã¹ã®é åä¸¦ã³æ¿ãã«ãªã£ã¦ãããã©ãã調ã¹ã¾ã (颿°ãã³ãã¬ã¼ã) |
æå®ç¯å²ã®è¦ç´ ããè¾æ¸çã«å¤§ããªæ¬¡ã®é åãçæãã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå®ç¯å²ã®è¦ç´ ããè¾æ¸çã«å°ããªæ¬¡ã®é åãçæãã¾ã (颿°ãã³ãã¬ã¼ã) | |
æ°å¤æ¼ç® | |
ããã
<numeric> ã§å®ç¾© | |
(C++11) |
éå§å¤ãé£ç¶çã«ã¤ã³ã¯ãªã¡ã³ããã¦æå®ç¯å²ãåãã¾ã (颿°ãã³ãã¬ã¼ã) |
æå®ç¯å²ã®è¦ç´ ãåè¨ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
2ã¤ã®ç¯å²ã®è¦ç´ ã®å
ç©ãè¨ç®ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå®ç¯å²ã®é£æ¥ããè¦ç´ éã®å·®ãè¨ç®ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
æå®ç¯å²ã®è¦ç´ ã®é¨ååãè¨ç®ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
(C++17) |
std::accumulate ã¨åæ§ã§ãããè¨ç®é åºã¯ä¸å®ã§ã (颿°ãã³ãã¬ã¼ã) |
(C++17) |
std::inclusive_scan ã¨åæ§ã§ããã i çªç®ã®åè¨ã« i çªç®ã®è¦ç´ ãå«ã¾ãã¾ãã (颿°ãã³ãã¬ã¼ã) |
(C++17) |
std::partial_sum ã¨åæ§ã§ãããè¨ç®é åºã¯ä¸å®ã§ã (颿°ãã³ãã¬ã¼ã) |
(C++17) |
ä¸å®ã®è¨ç®é åºã§ã颿°ãªãã¸ã§ã¯ããé©ç¨ããçµæã reduce ãã¾ã (颿°ãã³ãã¬ã¼ã) |
(C++17) |
颿°ãªãã¸ã§ã¯ããé©ç¨ããçµæã«å¯¾ã㦠exclusive scan ãè¨ç®ãã¾ã (颿°ãã³ãã¬ã¼ã) |
(C++17) |
颿°ãªãã¸ã§ã¯ããé©ç¨ããçµæã«å¯¾ã㦠inclusive scan ãè¨ç®ãã¾ã (颿°ãã³ãã¬ã¼ã) |
æªåæåè¨æ¶åã®æä½ |
ããã
<memory> ã§å®ç¾© | |
æå®ç¯å²ã®ãªãã¸ã§ã¯ããã¡ã¢ãªã®æªåæåé åã«ã³ãã¼ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
(C++11) |
æå®åæ°ã®ãªãã¸ã§ã¯ããã¡ã¢ãªã®æªåæåé åã«ã³ãã¼ãã¾ã (颿°ãã³ãã¬ã¼ã) |
1åã®ãªãã¸ã§ã¯ããã¡ã¢ãªã®æªåæåé åã®æå®ç¯å²ã«ã³ãã¼ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
1åã®ãªãã¸ã§ã¯ããã¡ã¢ãªã®æªåæåé åã«æå®åæ°ã³ãã¼ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
(C++17) |
æå®ç¯å²ã®ãªãã¸ã§ã¯ããã¡ã¢ãªã®æªåæåé åã«ã ã¼ããã¾ã (颿°ãã³ãã¬ã¼ã) |
(C++17) |
æå®åæ°ã®ãªãã¸ã§ã¯ããã¡ã¢ãªã®æªåæåé åã«ã ã¼ããã¾ã (颿°ãã³ãã¬ã¼ã) |
ãªãã¸ã§ã¯ããããã©ã«ãåæåã«ããã¡ã¢ãªã®æªåæåé åã®æå®ç¯å²ã«æ§ç¯ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
ãªãã¸ã§ã¯ããããã©ã«ãåæåã«ããã¡ã¢ãªã®æªåæåé åã«æå®åæ°æ§ç¯ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
ãªãã¸ã§ã¯ããå¤åæåã«ããã¡ã¢ãªã®æªåæåé åã®æå®ç¯å²ã«æ§ç¯ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
ãªãã¸ã§ã¯ããå¤åæåã«ããã¡ã¢ãªã®æªåæåé åã«æå®åæ°æ§ç¯ãã¾ã (颿°ãã³ãã¬ã¼ã) | |
(C++17) |
æå®ãããã¢ãã¬ã¹ã«ãããªãã¸ã§ã¯ããç ´æ£ãã¾ã (颿°ãã³ãã¬ã¼ã) |
(C++17) |
æå®ç¯å²ã®ãªãã¸ã§ã¯ããç ´æ£ãã¾ã (颿°ãã³ãã¬ã¼ã) |
(C++17) |
æå®åæ°ã®ãªãã¸ã§ã¯ããç ´æ£ãã¾ã (颿°ãã³ãã¬ã¼ã) |
C ã®ã©ã¤ãã©ãª | |
ããã
<cstdlib> ã§å®ç¾© | |
æå®ç¯å²ã®ä¸ç¹å®ãªåã®è¦ç´ ãã½ã¼ããã¾ã (颿°) | |
ä¸ç¹å®ãªåã®è¦ç´ ãæå®ã®é
åããæ¢ãã¾ã (颿°) |
[ç·¨é] é¢é£é ç®
ã¢ã«ã´ãªãºã ã® Cè¨èªãªãã¡ã¬ã³ã¹
|