(2) ¼±Åà Á¤·Ä¹ý(Selection Sorting)
¾ÕÀÇ ¸®½ºÆ® 5ÀÇ Á¤·Ä¹ýÀ» °¡¸¸È÷ °üÂûÇØ º¸¸é
°£´ÜÇÑ ¹æ¹ýÀ¸·Î ¼öÇà ¼Óµµ¸¦ Çâ»ó½Ãų ¼ö ÀÖ´Â °Í
À» ¾Ë ¼ö ÀÖ´Ù. ¹æ¹ýÀ» Àбâ Àü¿¡ Àá½Ã¸¸ ¿©·¯ºÐ ½º½º·Î »ý°¢À» ÇØº¸±â ¹Ù¶õ´Ù.
¾à°£ÀÇ ÈùÆ®¸¦ ÁØ
´Ù¸é, ¹Ýº¹Çؼ ¼öÇàµÇ´Â ºÎºÐÀ» ÁÖÀÇÇØ¼ »ìÆìº¸¶ó.
¸®½ºÆ® 5ÀÇ ¿¹¸¦ °¡¸¸È÷ »ìÆìº¸¸é, ¿·ÀÇ °ª°ú ºñ±³ ÈÄ¿¡ ¹Ù·Î¹Ù·Î °ªÀ»
±³È¯ÇÏ´Â °ÍÀ» ¾Ë ¼ö°¡
ÀÖ´Ù. ÀÌ·¸°Ô ¹Ù·Î ±³È¯ÇÏ´Â ¹æ¹ýÀº ±³È¯ Ƚ¼ö¸¦ »ó´çÈ÷ ¸¹°Ô ¸¸µç´Ù. ÇѹøÀÇ ±³È¯À»
Çϱâ À§Çؼ
´Â 3¹øÀÇ Ä¡È¯¹®ÀÌ »ç¿ëµÈ´Ù. À̰ÍÀ» ´ÙÀ½°ú °°ÀÌ ¹Ù²Ù¾î º¸¸é ¾î¶³±î?
¸®½ºÆ® 6ÀÇ ¹æ¹ýÀº ¾ÕÀÇ ´Ü¼ø Á¤·Ä¹ý°ú´Â ´Þ¸® ÀÏ´Ü Á¤·ÄµÇÁö
¾Ê´Â °ªµé Áß¿¡ °¡Àå Å« °ªÀÌ ÀÖ´Â
À§Ä¡¸¦ ¾Ë¾Æ³½ ÈÄ ÇÑ ¹øÀÇ ±³È¯¿¡ ÀÇÇØ ±×
°ªÀÌ Á¤·ÄµÇÁö ¾Ê´Â °ªÀÇ ¸Ç µÚ·Î ¿Å°ÜÁö°Ô µÈ´Ù. ÀÌ ¹æ
¹ýÀº ÀÚ·áÀÇ ±³È¯ Ƚ¼ö¸¦ ¾ÕÀÇ ¹æ¹ýº¸´Ù »ó´çÈ÷ °¨¼Ò½ÃŲ´Ù. µû¶ó¼ ±³È¯ÇØ¾ß ÇÒ
ÀÚ·áÀÇ Å©±â°¡
Ŭ¼ö·Ï È¿°ú´Âºñ·ÊÇØ¼ Áõ°¡ÇÏ°Ô µÈ´Ù.
(¸®½ºÆ® 6) ¼±Åà Á¤·Ä¹ýÀ» »ç¿ëÇÑ ¿¹
void Select_Sort(int *a,int last_item)
{
int loop1,loop2;
int temp;
int max_item;
for (loop1=0;loop1<last_item;loop1++)
{
max_item=0;
for
(loop2=0;loop2<(last_item-loop1);loop2++)
{
if
(a[max_item]<a[loop2+1])
max_item=loop2+1;
temp=a[max_item];
a[max_item]=a[max_item-loop1];
a[last_item-loop1]=temp;
}
}
}