STLÀÇ ¾Ë°í¸®Áò ÇÔ¼öµéÀº ´ëºÎºÐ ƯÁ¤ ÄÁÅ×À̳ÊÀÇ ¸â¹ö ÇÔ¼ö°¡ ¾Æ´Ñ ÀÏ¹Ý Àü¿ª ÇÔ¼ö·Î ÀÛ¼ºµÇ¾î ÀÖ´Ù. ¿Ö³ÄÇÏ¸é ¹Ýº¹ÀÚ¿¡ ÀÇÇØ ÄÁÅ×À̳ʸ¦ ´Ù·ç´Â ¹æ¹ýÀÌ ÀϹÝÈµÇ¾î ¸ðµç ÄÁÅ×À̳ʿ¡ ´ëÇØ Àû¿ëÇÒ ¼ö ÀÖÀ¸¹Ç·Î ¸â¹ö ÇÔ¼ö°¡ µÉ Çʿ䵵 ¾ø°í ¸â¹ö ÇÔ¼ö°¡ µÇ¾î¼µµ ¾ÈµÈ´Ù. STLÀº ÀϹÝÈµÈ ¾Ë°í¸®ÁòÀ» Á¦°øÇϹǷΠĸ½¶È¸¦ Àû±ØÀûÀ¸·Î »ç¿ëÇÏÁö ¾Ê´Â´Ù. ÄÁÅ×ÀÌ³Ê Å¬·¡½ºµéÀº Ç¥ÇöÇϰíÀÚ ÇÏ´Â ÀÚ·á ±¸Á¶¸¦ À§ÇÑ µ¥ÀÌÅÍ ¸â¹ö¿Í ¿¬»êÀÚ¸¸À» Á¤ÀÇÇÏ¸ç ¾Ë°í¸®Áò ±¸ÇöÀº ¹Ýº¹ÀÚ¿Í Àü¿ª ÇÔ¼ö¿¡°Ô ¸Ã±ä´Ù.
¾Ë°í¸®Áò ÇÔ¼öµéÀº ´ëºÎºÐ algorithm Çì´õ ÆÄÀÏ¿¡ Á¤ÀǵǾî ÀÖÀ¸¹Ç·Î ¾Ë°í¸®Áò ÇÔ¼ö Áß Çϳª¶óµµ »ç¿ëÇÏ·Á¸é ÀÌ Çì´õ ÆÄÀÏÀ» Æ÷ÇÔÇØ¾ß ÇÑ´Ù. ¿¹»óÇÒ ¼ö ÀÖ°ÚÁö¸¸ ÀÌ Çì´õ ÆÄÀÏ¿¡´Â STLÀÇ ¸ðµç ¾Ë°í¸®ÁòÀÌ Á¤ÀǵǾî ÀÖÀ¸¹Ç·Î ±²ÀåÈ÷ ±æÀ̰¡ ±æ´Ù. ½Ã°£ÀÌ Çã¶ôÇÑ´Ù¸é ÇÑ ¹øÂë µé¿©´Ù º¼¸¸ÇÑ Çì´õ ÆÄÀÏÀÌ´Ù. ¾Ë°í¸®Áò ÇÔ¼ö Áß °¡Àå ÈçÇÏ°Ô »ç¿ëµÇ´Â °ÍÀº ÄÁÅ×À̳ʿ¡ ƯÁ¤°ªÀÌ Á¸ÀçÇÏ´ÂÁö¸¦ ã´Â find ÀÌ´Ù. ¿øÇüÀº ´ÙÀ½°ú °°´Ù.
template<typename InIt, class T>
InIt find(InIt first, InIt last, const T& val);
ÀÓÀÇÀÇ ¸ðµç ŸÀÔ¿¡ ´ëÇØ µ¿ÀÛÇÒ ¼ö ÀÖ¾î¾ß ÇϹǷΠSTL ¾Ë°í¸®Áò ÇÔ¼öµéÀº ¿¹¿Ü¾øÀÌ ÅÛÇø´À¸·Î ±¸ÇöµÇ¾î ÀÖ´Ù. findÀÇ °æ¿ì °Ë»öÁß¿¡ »ç¿ëÇÒ ¹Ýº¹ÀÚ¿Í ÄÁÅ×À̳ÊÀÇ ¿ä¼Ò ŸÀÔÀ» ÅÛÇø´ Àμö·Î ¹Þ¾Æµé¿© ±¸Ã¼ÈµÈ´Ù. ±×·¡¼ º¤ÅÍµç ¸®½ºÆ®µç ÇØ´ç ÄÁÅ×À̳ÊÀÇ ¹Ýº¹ÀÚ¸¸ Àü´ÞÇÏ¸é µÇ°í ¿ä¼Ò°¡ Á¤¼öÇüÀ̵ç TimeÀ̳ª PersonÀÌµç °¡¸®Áö ¾Ê°í °Ë»öÀ» ÇÒ ¼ö ÀÖ´Â °ÍÀÌ´Ù. ÅÛÇø´À¸·Î Àü´ÞµÇ´Â Àμö´Â InIt, OutIt, T µîÀÇ À̸§À¸·Î ÀϰüµÇ°Ô Ç¥½ÃµÇ¹Ç·Î ÀÌÈÄ ¾Ë°í¸®Áò ÇÔ¼ö¸¦ ¼Ò°³ÇÒ ¶§ template¹®Àº »ý·«Çϱâ·Î ÇÑ´Ù.
find´Â first ~ last »çÀÌÀÇ ¹Ýº¹ÀÚ ±¸°£¿¡¼ TÇüÀÇ °ª valÀÌ ÀÖ´ÂÁö °Ë»çÇÑ´Ù. ¹ß°ßµÇ¸é ÇØ´ç À§Ä¡ÀÇ ¹Ýº¹ÀÚ°¡ ¸®ÅÏµÇ¸ç ¹ß°ßµÇÁö ¾ÊÀ» °æ¿ì ÄÁÅ×ÀÌ³Ê Àüü¸¦ ¼øÈ¸¸¸ Çϰí Á¾·áµÇ¹Ç·Î ±¸°£ÀÇ ³¡ÀÎ last°¡ ¸®ÅϵȴÙ. C ÇÔ¼öµéÀº °Ë»ö¿¡ ½ÇÆÐÇÒ °æ¿ì NULLÀ» ¸®ÅÏÇÏÁö¸¸ STLÀº °Ë»ö ½ÇÆÐÁ¶Â÷µµ ¹Ýº¹ÀÚ·Î ¸®ÅÏÇÑ´Ù.
¹Ýº¹ÀÚ¸¸À¸·Î ¿ä¼Ò¸¦ ÀÐÀ» ¼ö ÀÖ°í ÀÌ ¿ä¼Ò¸¦ val°ú ºñ±³ÇÒ ¼ö ÀÖÀ¸¸ç ºñ±³ ¹üÀ§µµ ¸íÈ®ÇÏ°Ô Àü´ÞµÇ¾úÀ¸¹Ç·Î find°¡ ÄÁÅ×À̳ʿ¡ ´ëÇÑ Á¤º¸¸¦ Àü´Þ¹ÞÀ» ÇÊ¿ä´Â ¾ø´Ù. ÄÁÅ×À̳ʰ¡ ¾î¶² ½ÄÀÇ ±¸Á¶¸¦ °¡Áö´ÂÁö ¸ð¸£¹Ç·Î find´Â °¡Àå °£´ÜÇÏ°í ¾î¶² ÇüÅÂÀÇ ÀÚ·á¿¡³ª »ç¿ëÇÒ ¼ö ÀÖ´Â ¼øÂ÷ °Ë»ö ¹æ¹ýÀ» »ç¿ëÇÑ´Ù. ¿¹Á¦¸¦ ÀÛ¼ºÇØ º¸ÀÚ.
¿¹ Á¦ : find |
#include <iostream>
#include <vector>
#include <list>
#include <algorithm>
using namespace std;
void main()
{
int ari[]={1,2,3,4,5};
vector<int> vi(&ari[0],&ari[5]);
list<int> li(&ari[0],&ari[5]);
puts(find(vi.begin(),vi.end(),4)==vi.end() ? "¾ø´Ù.":"ÀÖ´Ù.");
puts(find(li.begin(),li.end(),8)==li.end() ? "¾ø´Ù.":"ÀÖ´Ù.");
puts(find(&ari[0],&ari[5],3)==&ari[5] ? "¾ø´Ù.":"ÀÖ´Ù.");
}
º¤ÅÍ¿Í ¸®½ºÆ®, ´Ü¼ø ¹è¿¿¡ ´ëÇØ find·Î ¿©·¯ °¡Áö °ªµéÀ» °Ë»öÇØ º¸¾Ò´Ù. Å©±â°¡ ÀÛÀº ÄÁÅ×À̳ʶó °á°ú°¡ »·È÷ º¸ÀδÙ.
ÀÖ´Ù.
¾ø´Ù.
ÀÖ´Ù.
ÄÁÅ×À̳ʿ¡ »ó°ü¾øÀÌ °Ë»ö ¹æ¹ýÀÌ ¶È°°´Ù´Â °ÍÀ» ¾Ë ¼ö ÀÖ´Ù. °Ë»ö ¹üÀ§¸¦ ÁöÁ¤ÇÏ´Â ¹Ýº¹ÀÚ¿Í Ã£°íÀÚ ÇÏ´Â °ª¸¸ Àμö·Î Àü´ÞÇϴµ¥ ¿¹Á¦¿¡¼´Â ÄÁÅ×ÀÌ³Ê Àüü ¹üÀ§¿¡ ´ëÇØ Á¤¼ö°ªÀ» °Ë»öÇß´Ù. ÄÁÅ×À̳ÊÀÇ ³»ºÎ ±¸Á¶°¡ ´Þ¶óµµ ¹Ýº¹ÀÚ¿¡ ÀÇÇØ ÀÐ°í ´ÙÀ½ ¿ä¼Ò·Î À̵¿ÇÒ ¼ö Àֱ⠶§¹®¿¡ ¶È°°Àº ¾Ë°í¸®Áò ÇÔ¼ö¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Â °ÍÀÌ´Ù. algorithm Çì´õ ÆÄÀÏÀ» µÚÁ® º¸¸é ´ÙÀ½Ã³·³ Á¤ÀǵǾî ÀÖ´Â find ÇÔ¼ö¸¦ º¼ ¼ö ÀÖ´Ù.
InIt find(InIt first, InIt last, const T& val)
{
for (;first != last; ++first) {
if (*first == val) break;
}
return first;
}
first¸¦ °è¼Ó Áõ°¡½ÃŰ¸é¼ last¿¡ À̸¦ ¶§±îÁö ¼øÈ¸ÇÏ¸ç ¼øÈ¸ Áß¿¡ *¿¬»êÀÚ·Î firstÀÇ °ªÀ» Àоî val°ú °°ÀºÁö¸¦ Á¡°ËÇÑ´Ù. °Ë»öµÇ¾ú´Ù¸é ÀÌ »óÅ¿¡¼ ·çÇÁ¸¦ ºüÁ® ³ª¿Í first¸¦ ¸®ÅÏÇÏ¸ç °Ë»ö¿¡ ½ÇÆÐÇß´Ù¸é first°¡ last±îÁö À̵¿ÇÑ Ã¤·Î ¸®Å쵃 °ÍÀÌ´Ù. ¾Ë°í¸®ÁòÀÇ ½ÇÁ¦ ±¸ÇöÀº ÄÄÆÄÀÏ·¯¸¶´Ù Á¶±Ý¾¿ ´Ù¸¥µ¥ À§ ÄÚµå´Â ºñÁÖ¾ó C++ÀÇ °ÍÀ̰í gcc´Â find¸¦ ´ÙÀ½°ú °°ÀÌ ±¸ÇöÇϰí ÀÖ´Ù.
InIt find(InIt first, InIt last, const T& val)
{
while(first != last && *first != val) ++first;
return first;
}
³¡¿¡ µµ´ÞÇϰųª °Ë»öÇÏ´Â °ªÀ» ãÀ» ¶§±îÁö ¹«Á¶°Ç ÀüÁø À̵¿ÇÏ´Ù°¡ ·çÇÁ°¡ ³¡³µÀ» ¶§ÀÇ ¹Ýº¹ÀÚ¸¦ ¸®ÅÏÇÑ´Ù. µÎ ±¸ÇöÀÇ ÄÚµå´Â Á¶±Ý ´Ù¸£Áö¸¸ ÇÏ´Â ÀÏÀº »ç½Ç»ó µ¿ÀÏÇÏ´Ù°í ÇÒ ¼ö ÀÖ´Ù. ¾Ë°í¸®ÁòÀÌ ¾î¶»°Ô ±¸ÇöµÇ¾î ÀÖµçÁö ¾Ë°í¸®Áò º»Ã¼¿¡¼ »ç¿ëÇÏ´Â ++, !=, * ¿¬»êÀÚ¸¦ ¸ðµç ¹Ýº¹ÀÚ°¡ Áö¿øÇϹǷΠ°Ë»ö ¾Ë°í¸®ÁòÀÌ È¹ÀÏÀûÀ¸·Î Á¤ÀǵȴÙ. ´Ù¸¥ ¾Ë°í¸®Áòµµ ¿ø¸®´Â µ¿ÀÏÇѵ¥ ³»ºÎ°¡ ±Ã±ÝÇϸé Ç×»ó Çì´õ ÆÄÀÏÀ» ÀÐ¾î º¸µµ·Ï ÇÏÀÚ.
°Ë»ö ´ÙÀ½À¸·Î ¸¹ÀÌ »ç¿ëµÇ´Â ¾Ë°í¸®ÁòÀº ÀڷḦ ÀÏÁ¤ÇÑ ±âÁØ¿¡ µû¶ó Àç¹èÄ¡ÇÏ´Â Á¤·ÄÀÌ´Ù. ÄÁÅ×À̳ʳ»ÀÇ ¸ðµç ¿ä¼ÒµéÀ» ¿©·¯ ¹ø ºñ±³ÇÏ°í °á°ú¿¡ µû¶ó ¿ä¼Ò¸¦ ±³È¯ÇÏ´Â °úÁ¤À» Á¤·Ä ¿Ï·áµÉ ¶§±îÁö ¹Ýº¹ÇØ¾ß ÇÏ´Â ²Ï º¹ÀâÇÑ ¿¬»êÀÌ´Ù. ÀÌ·± ¿¬»êµµ sort ÇÔ¼ö Çϳª¸¸ »ç¿ëÇÏ¸é ½±°Ô ¼öÇàÇÒ ¼ö ÀÖ´Ù. sortÀÇ ¿øÇüÀº ´ÙÀ½°ú °°´Ù.
void sort(RanIt first, RanIt last);
ÀÌ ÇÔ¼ö´Â Àμö·Î ÁÖ¾îÁø first ~ last »çÀÌÀÇ ¸ðµç ¿ä¼Ò¸¦ Á¤·ÄÇÑ´Ù. Á¤·ÄÀ» Çϱâ À§Çؼ´Â °´Ã¼µéÀ» ºñ±³ÇØ¾ß Çϴµ¥ sort ÇÔ¼ö´Â Á¤·Ä Áß¿¡ < ¿¬»êÀÚ·Î ¿ä¼ÒÀÇ ¼øÀ§¸¦ ÆÇ´ÜÇÑ´Ù. µû¶ó¼ Á¤·Ä ´ë»ó ¿ä¼ÒµéÀº < ¿¬»êÀÚ¸¦ ¹Ýµå½Ã Á¤ÀÇÇØ¾ß ÇÑ´Ù. Á¤¼ö, ½Ç¼ö µîÀÇ ±âº» ŸÀÔÀº < ¿¬»êÀÚ·Î ºñ±³ÇÒ ¼ö ÀÖÀ¸¹Ç·Î Ç×»ó Á¤·Ä °¡´ÉÇÏ¸ç »ç¿ëÀÚ°¡ Á¤ÀÇÇÑ Å¬·¡½º¶óµµ < ¿¬»êÀÚ°¡ ¿À¹ö·ÎµùµÇ¾î ÀÖÀ¸¸é ÀÌ ÇÔ¼ö·Î Á¤·Ä °¡´ÉÇÏ´Ù.
¿¹ Á¦ : sort |
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
void main()
{
int ari[]={2,8,5,1,9};
vector<int> vi(&ari[0],&ari[5]);
sort(vi.begin(),vi.end());
vector<int>::iterator it;
for (it=vi.begin();it!=vi.end();it++) {
printf("%d\n",*it);
}
}
º¤ÅÍ¿¡ ´Ù¼¸ °³ÀÇ Á¤¼ö¸¦ ³Ö¾î µÎ°í sort ÇÔ¼ö·Î Á¤·ÄÇÑ ÈÄ Ãâ·ÂÇØ º¸¾Ò´Ù. ¿À¸§Â÷¼øÀ¸·Î Á¤·ÄµÇ¾î Ãâ·ÂµÉ °ÍÀÌ´Ù.
1
2
5
8
9
Á¤·ÄÀº ¿ö³« ÈçÇÑ ¿¬»êÀÌ¶ó ±²ÀåÈ÷ ¸¹Àº ¾Ë°í¸®ÁòÀÌ °³¹ßµÇ¾î ÀÖ´Ù. STLÀÇ sort ÇÔ¼ö´Â ±× Áß °¡Àå ºü¸£´Ù°í Á¤ÆòÀÌ ³ Äü ¼ÒÆ® ¾Ë°í¸®ÁòÀ» »ç¿ëÇϴµ¥ ¾Õ¿¡¼ °øºÎÇØ ºÁ¼ ¾Ë°ÚÁö¸¸ Äü ¼ÒÆ® ¾Ë°í¸®ÁòÀº ±×´ÙÁö °£´ÜÇÏÁö ¾Ê´Ù. ÀÌ·± ¾Ë°í¸®ÁòÀ» ¹üÀ§¸¸ Àü´ÞÇÏ¸é °øÂ¥·Î ¾µ ¼ö ÀÖ´Ù´Â °ÍÀÌ STLÀÇ ¸Å·ÂÀÌ´Ù. °¡Àå ±âº»ÀûÀÎ µÎ °³ÀÇ ¾Ë°í¸®Áò¿¡ ´ëÇØ ¿¹Á¦¸¦ ¸¸µé¾î ºÃ´Âµ¥ ¸î °¡Áö¸¸ ´õ ±¸°æÇØ º¸ÀÚ.
void reverse(BiIt first, BiIt last);
reverse ÇÔ¼ö´Â À̸§´ë·Î ÁöÁ¤ÇÑ ±¸°£ÀÇ ¿ä¼Òµé ¼ø¼¸¦ ¹Ý´ë·Î µÚÁý´Â´Ù. begin°ú end¸¦ ±¸°£À¸·Î ÁöÁ¤Çϸé ÄÁÅ×À̳ÊÀÇ ¸ðµç ¿ä¼Òµé ¼ø¼°¡ ¹Ý´ë·Î ¹Ù²ð °ÍÀÌ´Ù. ÄÁÅ×À̳ÊÀÇ ÀϺΠ±¸°£¸¸ ¹Ý´ë·Î µÚÁýÀ» ¼öµµ ÀÖ´Ù. ´ÙÀ½ ¿¹Á¦´Â ¹è¿ÀÇ Áß°£ ºÎºÐ ¿ä¼ÒµéÀ» ¹Ý´ëÀÇ ¼ø¼·Î µÚÁý´Â´Ù.
¿¹ Á¦ : reverse |
#include <iostream>
#include <algorithm>
using namespace std;
void main()
{
int ari[]={1,2,3,4,5,6,7,8,9};
int i;
for (i=0;i<9;i++) printf("%d ",ari[i]);puts("");
reverse(&ari[2],&ari[6]);
for (i=0;i<9;i++) printf("%d ",ari[i]);puts("");
}
2¹øÂ° ¿ä¼Ò ~ 5¹øÂ° ¿ä¼Ò±îÁöÀÇ ¼ø¼°¡ ¹Ý´ë·Î µÚÁý¾îÁø´Ù. Áï ari[2]´Â ari[5]¿Í ±³È¯µÇ°í ari[3]Àº ari[4]¿Í ±³È¯µÈ´Ù.
1 2 3 4 5 6 7 8 9
1 2 6 5 4 3 7 8 9
ÀÌ ÇÔ¼ö°¡ ³»ºÎ¿¡¼ ¾î¶² 󸮸¦ ÇÒ °ÍÀΰ¡´Â ¾î·ÆÁö ¾Ê°Ô ÃßÃøÇÒ ¼ö ÀÖÀ¸¸ç Á÷Á¢ ¸¸µç´Ù ÇÏ´õ¶óµµ ±×´ÙÁö ¿À·£ ½Ã°£ÀÌ °É¸®Áö´Â ¾ÊÀ» °ÍÀÌ´Ù. ¸¸µé¾î ¾²´Â °ÍÀÌ ¾î·Á¿ö¼°¡ ¾Æ´Ï¶ó ¸Å¹ø ¸¸µé±â´Â ±ÍÂúÀº ÀÛ¾÷À̶ó°í ÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½ ÇÔ¼ö´Â ÄÁÅ×À̳ÊÀÇ ±¸°£³» ¿ä¼Ò¸¦ ¹«ÀÛÀ§·Î ¸¶±¸ ¼¯´Â´Ù.
void random_shuffle(RanIt first, RanIt last);
°ÔÀÓÀ» ¸¸µé ¶§ ÀÌ ÇÔ¼ö°¡ ÀÚÁÖ »ç¿ëµÇ´Âµ¥ ÆÛÁñÀ̳ª Ä«µåÆÐ¸¦ »ç¿ëÀÚ°¡ ¿¹ÃøÇÏÁö ¸øÇϵµ·Ï ÇÒ ¶§ ¹«ÀÛÀ§ ¼¯±â ±â´ÉÀÌ »ç¿ëµÈ´Ù. ¿¹Á¦¸¦ º¸ÀÚ.
¿¹ Á¦ : shuffle |
#include <iostream>
#include <vector>
#include <algorithm>
#include <time.h>
using namespace std;
void main()
{
int i;
vector<int> vi(20);
vector<int>::iterator it;
for (i=0;i<20;i++) vi[i]=i;
srand(time(NULL));
random_shuffle(vi.begin(),vi.end());
for (it=vi.begin();it!=vi.end();it++) {
cout << *it << ' ';
}
cout << endl;
}
º¤ÅÍ¿¡ 0~19±îÁöÀÇ Á¤¼ö¸¦ Â÷·Ê´ë·Î Áý¾î ³Ö°í random_shuffle ÇÔ¼ö·Î ¼¯¾ú´Ù. ÀÌ ÇÔ¼ö°¡ ³»ºÎÀûÀ¸·Î ³¼ö¸¦ »ç¿ëÇϹǷΠ³¼ö ¹ß»ý±â´Â ¸ÕÀú ÃʱâÈÇØ ³õ¾Æ¾ß ÇÑ´Ù. ¸Å ½ÇÇàÇÒ ¶§¸¶´Ù ¼¯ÀÌ´Â °á°ú´Â ´Þ¶óÁø´Ù.
6 9 15 12 16 2 11 1 8 5 3 13 14 4 7 0 19 10 18 17
´Ü ÇϳªÀÇ ÇÔ¼ö È£Ãâ·Î ÆÐ¸¦ ¿ÏÀüÈ÷ ¼¯À» ¼ö ÀÖ´Ù. STL¿¡´Â ÀÌ ¿Ü¿¡µµ ¾öû³ª°Ô ¸¹Àº ¾Ë°í¸®Áò ÇÔ¼öµéÀÌ Á¦°øµÇ´Âµ¥ ´ë·« 60¿©°³ Á¤µµ µÇ¸ç ¾ÕÀ¸·Î Á¡Á¡ ´õ ´Ã¾î³¯ °ÍÀÌ´Ù. °¢ ÇÔ¼öº° »ç¿ë¿¹´Â õõÈ÷ ¿¬±¸ÇØ º¸µµ·Ï Çϰí ÀÏ´Ü µµÇ¥·Î °£´ÜÇÏ°Ô ¸ñ·Ï¸¸ Á¤¸®ÇØ º¸ÀÚ. ¾çÀÌ ¸¹¾ÆÁú ¶§´Â ´ëÃæ ´«¿¡¸¸ ÀÍÇô µÎ°í ÇÊ¿äÇÒ ¶§ ·¹ÆÛ·±½º¸¦ ÂüÁ¶ÇÏ´Â °ÍÀÌ ÈξÀ ´õ Çö¸íÇÑ Ã³»ç´Ù.
ÇÔ¼ö |
¼³¸í |
count |
Á¶°Ç¿¡ ¸Â´Â ¿ä¼ÒÀÇ °³¼ö¸¦ ¼¾´Ù. |
for_each |
°¢ ¿ä¼Ò¿¡ ´ëÇØ ÁöÁ¤ÇÑ ÀÛ¾÷À» ÇÑ´Ù. |
equal |
±¸°£ÀÌ ÀÏÄ¡ÇÏ´ÂÁö ºñ±³ÇÑ´Ù. |
search |
ÀÏÄ¡ÇÏ´Â ºÎºÐ ±¸°£À» °Ë»öÇÑ´Ù. |
copy |
±¸°£³¢¸® º¹»çÇÑ´Ù. |
fill |
ÀÏÁ¤ÇÑ °ªÀ¸·Î ÁöÁ¤ ±¸°£À» ä¿î´Ù. |
reverse |
±¸°£ÀÇ ¿ä¼ÒµéÀ» ¹Ý´ë·Î µÚÁý´Â´Ù. |
random_shuffle |
¿ä¼ÒµéÀ» ¹«ÀÛÀ§·Î ¼¯´Â´Ù. |
swap |
ÄÁÅ×À̳ʸ¦ ±³È¯ÇÑ´Ù. |
binary_search |
À̺Р°Ë»öÇÑ´Ù. |
merge |
±¸°£À» º´ÇÕÇÏ¿© »õ·Î¿î ±¸°£À¸·Î º¹»çÇÑ´Ù. |
accumulate |
±¸°£ÀÇ °ªÀ» ¸ðµÎ ÇÕÇÑ´Ù. |
¿Ø¸¸Å Á÷°ü·ÂÀÌ ÀÖ´Â »ç¶÷Àº ÇÔ¼ö À̸§À¸·ÎºÎÅÍ ±â´ÉÀ» ´ëÃæ À¯ÃßÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù. copy´Â º¹»çÇÏ´Â °ÍÀÌ¿ä fillÀº ä¿ì´Â °ÍÀ̰í swapÀº ±³È¯ÇÏ´Â °ÍÀ̰í merge´Â º´ÇÕÇÏ´Â °ÍÀÌ´Ù. ÇÊ¿äÇÒ ¶§¸¶´Ù ÀÌ·± ¾Ë°í¸®ÁòÀ» ÀÏÀÏÀÌ ¸¸µå´Â °Íº¸´Ù´Â Ç¥ÁØ ¾Ë°í¸®ÁòÀÇ »ç¿ë ¹æ¹ýÀ» ´ëÃæÀÌ¶óµµ ¾Ë¾Æ µÎ´Â °ÍÀÌ ½Ã°£ Àý¾à°ú ü·Â º¸Á¸¿¡ À¯¸®ÇÏ´Ù.