|
°Á Àü Å¿ÀÀÇ Àâ´ã>
±è¹Î¿À´ÔÀÇ ¾Ë°í¸®Áò °Á ±× µÎ¹øÂ° À̾߱âÀÔ´Ï´Ù. ^^ À̹ø ³»¿ëÀº ²Ï À¯ÀÍÇÑ °Íµé·Î ±¸¼ºµÇ¾ú³×¿ä
°Á ½ÃÀÛ >
Replace ÇÔ¼ö¿Í bubble_sort
¾Ë°í¸®Áò
ù°ÀǸ¦ ¸¶Ä¡°í ³ª¼ »ý°¢º¸´Ùµµ ¸¹Àº ºÐµéÀÌ °Ý·ÁÀÇ ¸ÞÀÏÀ» º¸³»Áּż ³Ê¹« °¨»ç Çß½À´Ï´Ù.
¾ÆÁ÷ ¾Ë°í¸®ÁòÀÌ ¹«¾ùÀÌ°í ¿Ö ¹è¿ö¾ß ÇÏ´ÂÁö ¸ð¸£°Ú´Ù°í ÇϽŠºÐµéµµ ²Ï ¸¹¾Ò½À´Ï´Ù. ±×Áß ¾î¶² ºÐÀÌ ±×·¯½Ã´õ±º¿ä
.
"Æò¹üÇÑ À¥µðÀÚÀ̳ʴ Æ÷Åä¼¥À» Àß´Ù·ç°í ¶Ù¾î³ À¥µðÀÚÀ̳ʴ ³²µéÀÌ µû¶ó¿Ã¼ö ¾ø´Â
°¨°¢ÀÌ ÀÖ´Ù.."
Á¦°¡ ¸»¾ÈÇØµµ À̶æÀÌ ¹«¾ùÀÎÁö À߾˰ÍÀ̰í .. ¿ì¸®´Â °¨°¢À» ¹è¿ì±âÀ§ÇØ ¾Ë°í¸®ÁòÀ» ¹è¿î´Ù »ý°¢Çϼŵµ
µË´Ï´Ù. °Á°¡ Á¶±Ý ´Ê¾ú´Âµ¥ ¾î¶²°Á¸¦ ÇØ¾ß ÇÒÁö ¼ÖÁ÷È÷ Á¦ ½º½º·Î ±âÁØÀÌ ÀâÈ÷Áú ¾Ê¾Ò¾ú½À´Ï´Ù. Á»
´õ ÀÌ·ÐÀûÀ¸·Î °¡¾ß ÇÒ°ÍÀΰ¡ ¾Æ´Ï¸é ½Ç¹«¿¡ ÇÊ¿äÇѰÍÀ» °¡¸£ÃÄ µå·Á¾ß ÇÏ´ÂÁö T.T ÀÏ´Ü ÁÖÁ¦°¡ ¾Ë°í¸®ÁòÀ̱â
¶§¹®¿¡ replace ¸¦ ÇÔ¼ö¸¦ ¸¸µå´Â ¹ý°ú ¹®ÀÚ¿À» Á¤·ÄÇÏ´Â ¹ýÀ» ¾Ë·Áµå¸®°Ú½À´Ï´Ù.
»ç½Ç asp ¿¡¼ string À» ´Ù·ç±â´Â ±²ÀåÈ÷ ½±½À´Ï´Ù. °¢Á¾ ÇÔ¼öµéÀÌ
Áö¿øÀ» ÇØÁֱ⠶§¹®¿¡ ¾î·ÆÁö ¾Ê°Ô ¹®ÀÚ¿À» ÀÚ¸¦¼öµµ ÀÖ°í ¹®ÀÚ¿À» ¹Ù²Ü¼öµµ ÀÖ½À´Ï´Ù. ¶ÇÇÑ ¹®ÀÚ¿À»
Ãß°¡ ÇÒ¼öµµ ÀÖ½À´Ï´Ù. ÇÏÁö¸¸ ´Ù¸¥¾ð¾î¸¦ ÇØº¸½ÅºÐµéÀº ¾Æ½Ã°ÚÁö¸¸ ÀÌ ¹®ÀÚ¿À» ´Ù·é´Ù´Â°ÍÀº
»ó´çÈ÷ º¹ÀâÇÏ°í ±ÍÂúÀº ÀÏÀ̱⠱îÁö ÇÕ´Ï´Ù.
°¡±î¿î ¿¹¸¦ µé¾î ¿©·¯ºÐÀº °Ô½ÃÆÇÀ» ¸¸µé¶§ ÀÛÀºµû¿òÇ¥ ¹®Á¦¸¦ ÇØ°áÇϱâ À§ÇØ replace(str, "'",
"''" ) °¡ Ç×»ó µé¾î °©´Ï´Ù. ±×·¸´Ù¸é ¾î¶»°Ô ÇØ¾ß ÇÒ±î¿ä...°Ô½ÃÆÇ À§¿¡´Ù°¡ " ÀÛÀº µû¿òÇ¥°¡ µé¾î°¡¸é ¿¡·¯°¡ ³ª´Ï
¾²Áö ¸»¾Æ ÁÖ¼¼¿ä " ¶ó°í ÇÏ¸é µÉ±î¿ä ?
¾Æ ÀÌ·±°ÍÀº ¿ì¸® ÇÁ·Î±×·¡¸ÓÀÇ ÀÚÁ¸½ÉÀÌ ¿ë³³ÇÏÁö ¸øÇÕ´Ï´Ù.. ±×·¸´Ù¸é ¿ì¸®´Â asp ¿¡
replace ¶ó´Â ÇÔ¼ö°¡ ¾ø´Ù°í »ý°¢Çϰí replace ÇÔ¼ö¸¦ ¸¸µé¾î º¸µµ·ÏÇÏÁÒ.. À̰ÍÀÇ ¼º´ÉÀº ±âÁ¸ÀÇ
replace ÇÔ¼öº¸´Ù ºü¸£´Ù°Å³ª ÇÏÁö´Â ¾ÊÀ»°ÍÀÔ´Ï´Ù. ¿Ö³ÄÇÏ¸é ±× replace ÇÔ¼ö´Â ºÐ¸í c¾ð¾î·Î ¸¸µé¾î Á³À»Å״ϱî¿ä
.. ¿ì¸®´Â ´ÜÁö ¿ø¸®¸¦ ¾Ë°í³ª¼ " ÇÊ¿äÇÑ ÇÔ¼öµûÀ§´Â ¾ðÁ¦µçÁö ¸¸µé¼ö ÀÖ¾î!!! " ¶ó´Â Àڽۨ°ú
¹®ÀÚ¿À» ´Ù·ç´Â ¹æ¹ý¿¡ ´ëÇØ¼¸¸ ¾Ë¸é µË´Ï´Ù.
ÀÏ´Ü ¿ì¸®´Â left ÇÔ¼ö¿Í right , mid , len ÇÔ¼ö´Â
»ç¿ëÇÒ¼ö ÀÖ´Ù°í °¡Á¤ÇØ¾ß ÇÕ´Ï´Ù. À̰ÍÀº asp ·Î ±¸ÇöÇϱâ´Â °ÅÀÇ ºÒ°¡´ÉÇÕ´Ï´Ù. C¿¡¼´Â Æ÷ÀÎÅÍ ¶ó´Â°ÍÀÌ Àֱ⠶§¹®¿¡
ÀÌ·±ÇÔ¼ö±îÁöµµ ¸¸µé¼ö ÀÖÁö¸¸ asp ¿¡¼´Â ±×Á¤µµ±îÁö´Â ÈûÀÌ µå³»¿ä T.T
replace ÇÔ¼öÀÇ ¿ø¸®´Â °£´ÜÇÕ´Ï´Ù str À̶ó´Â ¹®ÀÚ¿ÀÌ ÀÖ°í ¿©±â¼ ' ¸¦ ãÀ¸¸é
'' ·Î ¹Ù²ã¼ str¿¡ ÀúÀ常 ½ÃŰ¸é µÇ´Â °ÍÀÔ´Ï´Ù. ¾Æ ±×Àü¿¡ ¿©·¯ºÐµé¿¡°Ô ÇÔ¼ö¿¡¼
¸Þ¸ð¸® ÁÖ¼ÒÀÇ Àü´Þ°ú °ªÀü´ÞÀÇ Â÷ÀÌ¿¡ ´ëÇØ¼ ¸»¾¸À» µå·Á¾ß ÇÒ °Í °°½À´Ï´Ù. ÀÏ´Ü ¿ì¸®´Â Æ÷ÀÎÅͰ¡ ¹«¾ùÀÎÁö À߸𸣴 ºÐµéÀÌ
¸¹°í asp ¿¡¼ Æ÷ÀÎÅÍ´Â ±¸ÇöÇÒ¼öµµ ¾øÀ»»Ó´õ·¯ »ç¿ëÇÒ Àϵµ °ÅÀÇ ¾ø½À´Ï´Ù.
±×·±µ¥ ¿ì¸®´Â ¾Ë°Ô ¸ð¸£°Ô Æ÷ÀÎÅÍ °³³ä°ú ºñ½ÁÇѰÍÀ» »ç¿ëÇϰí ÀÖ½À´Ï´Ù. ¹Ù·Î ·¹ÆÛ·±½º¶ó´Â °ÍÀÌÁö¿ä.. À̰ÍÀº
Æ÷ÀÎÅͰ¡ ³Ê¹« ¾î·Æ±â ¶§¹®¿¡ java ³ª C# ¿¡¼ Æ÷ÀÎÅ͸¦ ´ëü Çϱâ À§ÇØ ³ª¿Â°ÍÀε¥ ÀÏ´Ü ¹×ÀÇ ÇÔ¼ö¸¦ º¸¸é¼
¼³¸íÇϰڽÀ´Ï´Ù.
|
<% sub
test(str_mother) str_mother
= "¾ö¸¶µ·¾ø´Ù." end sub
str_me = "¾ö¸¶µ·Áà" call test(str_me) '
ÇÔ¼ö È£Ãâ
response.write str_me ' <- ¿©±â¼ °ú¿¬
¾î¶²°ªÀÌ ÂïÈú±î¿ä.. (Á÷Á¢Çѹø¾¿ ÇØº¸¼¼¿ä . ) %>
|
ÇØº¸½Ã¸é ¾Ë°ÚÁö¸¸ str_me ¿¡´Â "¾ö¸¶µ·¾ø´Ù." ¶ó´Â ¹®ÀÚ¿ÀÌ µé¾î°¡ ÀÖ½À´Ï´Ù.
ÀÌ»óÇÕ´Ï´Ù.. ¿ì¸®´Â str_me ¶ó´Â º¯¼ö¿¡ °ªÀ» ³Ö¾îÁØÀûÀÌ ¾ø°í ´ÜÁö ÆÄ¶ó¹ÌÅÍÀÎ str_ mother ¿¡¸¸
"¾ö¸¶µ·¾ø´Ù." ¶ó´Â ¹®ÀÚ¿À» ³Ö¾î Áá´Âµ¥ str_me °ªµµ º¯°æ µÇ¾ú½À´Ï´Ù.
ÀÌ°Ô ¿ÖÀÌ·¸°Ô µÇ³Ä¸é vb³ª asp ´Â ±âº»ÀûÀ¸·Î call by
reference ¸¦ »ç¿ëÇØ¼ ÇÔ¼ö¿¡ °ªÀ» Àü´Þ ÇÕ´Ï´Ù. Áï call test(str_me) ¶ó´Â ÇÔ¼ö¸¦ È£ÃâÇϸé
str_me ¿¡ µé¾îÀÖ´Â "¾ö¸¶µ·Áà" ¶ó´Â °ªÀÌ ³Ñ¾î °¡´Â °ÍÀÌ Àý´ë ¾Æ´Õ´Ï´Ù . ³»ºÎÀûÀ¸·Î ·Î´Â str_me
ÀÇ ¸Þ¸ð¸® ÁÖ¼Ò°¡ ³Ñ¾î °©´Ï´Ù..
±×·¸°Ô str_mother ´Â str_me ÀÇ ¸Þ¸ð¸®ÁÖ¼Ò¸¦ Àоî¿Í¼ str_me ¿Í
µ¿ÀÏÇÑ ÁÖ¼Ò¸¦ °°°Ô µÇ°í str_mother ´Â str_me °¡ °¡¸£Å°°í ÀÖ´Â ÁÖ¼Ò¿Í µ¿ÀÏÇÑ ÁÖ¼Ò¸¦ °®Àº
»óÅ¿¡¼ str_mother ÀÇ °ªÀ» = "¾ö¸¶µ·¾ø´Ù" ·Î ¹Ù²Ù°Ô µÇ¸é µ¿ÀÏÇÑ ¸Þ¸ð¸®ÁÖ¼Ò¸¦
°¡¸®Å°°í ÀÖ´Â °÷ÀÇ °ªÀÌ º¯°æµÇ°Ô ¶§¹®¿¡ str_me ÀÇ °ªµµ º¯°æÀÌ µË´Ï´Ù.
Áï º¯¼öÀÇ À̸§Àº ´Ù¸£Áö¸¸ °°Àº ¸Þ¸ð¸® ÁÖ¼Ò°ªÀ» °®°Ô ÇØ¼ ÇϳªÀÇ º¯¼ö°ªÀ» º¯°æÇϸé
±× ¸Þ¸ð¸®ÁÖ¼Ò°¡ °¡¸£Å°°í ÀÖ´Â °ªµµ º¯°æÀÌ µË´Ï´Ù. À̰ÍÀº »ó´çÈ÷ Æí¸®ÇÑ ¹æ¹ýÀÌ°í ¾Ë°Ô ¸ð¸£°Ô ¿ì¸®´Â ÀüºÎ
call by reference ¸¦ »ç¿ëÇϰí ÀÖ¾ú´ø °ÍÀÔ´Ï´Ù. ÇÏÁö¸¸ º¯°æµÇÁö ¾Ê°í °ª¸¸ ³Ñ°ÜÁà¾ß ÇÒ¶§µµ
ÀÖ½À´Ï´Ù.. À̰ÍÀ» call by value ¶ó°í ÇÏ°í ¼Óµµµµ ¾à°£ ºü¸£´Ù°í ÇÕ´Ï´Ù.
|
str_me = "¾ö¸¶µ·Áà"
sub
test(byval
str_temp) str_temp
=
"¾ö¸¶µ·¾ø´Ù." end
sub
call test(str_me)
Response.write str_me '-> À̰ÍÀÇ °ªÀº
"¾ö¸¶µ·Áà"
|
ÆÄ¶ó¹ÌÅÍ ¾Õ¿¡´Ù°¡ byval À̶ó°í
ÇØÁÖ¸é ¸Þ¸ð¸® ÁÖ¼Ò´Â ÇÊ¿ä ¾øÀÌ °ª¸¸ Àü´Þ ¹Þ°Ú´Ù´Â ¶æÀÔ´Ï´Ù. »ç½Ç À̰ÍÀº asp º¸´Ù´Â ¿©·¯ºÐÀÌ vb °øºÎ ÇϽǶ§ ¸¹ÀÌ µµ¿òÀÌ µÉµíÇÏ°í ¶Ç À̹ø¿¡ ¹è¿ï
ÇÔ¼ö¿¡ ¼ call by referance ¸¦ »ç¿ëÇØ¾ß Çϴµ¥ ¿©·¯ºÐµéÀÌ Çä°¥¸®½Ç±îºÁ ¹Ì¸® ¸»¾¸ µå·È½À´Ï´Ù.
1. replace ÇÔ¼ö
¸¸µé±â
ÀÏ´Ü str_mother = "¾ö¸¶'õ¿ø'¸¸Áà" ¿¡ ÀÛÀº µû¿òÇ¥°¡ µÎ°³ µé¾î ÀÖ½À´Ï´Ù. ¿ì¸®´Â À̰ÍÀ»
"¾ö¸¶''õ¿ø''¸¸Áà" ·Î ¸¸µé¾î¾ß ÇÕ´Ï´Ù. ¿ø¸®´Â ¾ÆÁÖ °£´ÜÇÕ´Ï´Ù µé¾î¿Â
¹®ÀÚ¿À» ÇѰ³¾¿ Àß¶ó¼ ºñ±³ ÇÑ´ÙÀ½ ÀÛÀºµû¿òÇ¥¶ó¸é Å«µû¿òÇ¥·Î ¹Ù²ãÁÖ¸é µÇ´Â°ÍÀÔ´Ï´Ù. Ãʺ¸ÀںеéÀÌ ¿©±â¼
À߸øÇϴ°ÍÀÌ ¹®ÀÚ¿À» ÇѰ³¾¿ ÀÚ¸£´Â °Í°ú ¸¶Áö¸·¿¡ ¹®ÀÚ¿À» Çϳª¾¿ ´õÇØ¼ ´Ù½Ã »õ·Î¿î ¹®ÀÚ¿À» ¸¸µé¾î
µÇµ¹·Á Áִ°ÍÀ» ´ëºÎºÐ Àß ¸øÇÕ´Ï´Ù. ¹Ø¿¡ ¼Ò½º¸¦ Àá±ñ º¸°Ú½À´Ï´Ù.
|
<% str_mother = "¾ö¸¶Ãµ'¿ø'¸¸Áà"
'ÃʱâÀÇ ¹®ÀÚ¿ call replace_str(str_mother, "'", "''")
' ÇÔ¼ö È£Ãâ Response.Write str_mother
'
str_mother
sub replace_str (byref str , byval equal , byval change)
' (¹®ÀÚ¿, ºñ±³ÇÒ¹®ÀÚ,
¹Ù²Ü¹®ÀÚ) for
i = 1 to len(str)
'
¹Ýº¹¹®Àº strÀÇ ±æÀÌ ¸¸Åµ·´Ù.
str_temp
= mid(str, i , 1)
' ÀÌ·±½ÄÀ¸·Î Çϸé str_temp ¿¡´Â
ÇѰ³ÀÇ ¹®ÀÚ¾¿ÀÌ ´ã±ä´Ù Áï óÀ½¿¡´Â
"¾ö"
' µÎ ¹øÂ° ¹Ýº¹¹®Â°¿¡´Â "¸¶" ÀÌ·±½Ä....
if str_temp = equal then
' ¸¸¾à¿¡ "¾ö"
À̶ó´Â±ÛÀÚ°¡ ÀÛÀºµû¿òÇ¥ ¿Í
°°´Ù¸é str_temp
= change
'
Å«µû¿òÇ¥·Î
¹Ù²Û´Ù. end
if str_return
= str_return +
str_temp
'
¹®ÀÚ¿À» Çϳª¾¿ ´õÇØ¼ ´Ù½Ã ÇϳªÀÇ ¹®ÀÚ¿À» ¸¸µç´Ù. <
BR >
next
str
= str_return
' µÇµ¹·Á ÁØ´Ù. (¿©±â¼ ÀÌ°Ô °¡´ÉÇÑ ÀÌÀ¯´Â byref Áï call by reference À̱â
¶§¹®) end sub
%>
|
1. ÀÏ´Ü str_mother ¿¡´Â "¾ö¸¶Ãµ'¿ø'¸¸Áà"
¶ó´Â °ªÀÌ µé¾îÀÖ°í À̰ÍÀ» call replace_str(str_mother, "'", "''")
¿¡¼ ÇÔ¼öÈ£ÃâÀ» ÇÏ¿´½À´Ï´Ù. ±×·¸´Ù¸é ÇÔ¼ö ³»ºÎ¿¡¼´Â ¾î¶² µ¿ÀÛÀ»ÇÒ±î¿ä?. ÀÏ´Ü ¹®ÀÚ¿À» ÇϳªÇϳª¾¿ ºñ±³ ÇÏ·Á¸é
¹Ýº¹¹®ÀÌ ÇÊ¿äÇÒ°ÍÀ̰í ÀÌ ¹Ýº¹¹®Àº ¹®ÀÚ¿ÀÇ ³¡±îÁö µ¹¸é µË´Ï´Ù..
for i = 1 to len(str)
2. ±×´ÙÀ½¿¡´Â ¹®ÀÚ¿À» Çϳª¾¿ Àß¶ó¼ ¾îµò°¡¿¡ ÀúÀå½ÃÄѾß
ÇÑ´Ù. mid ÇÔ¼ö´Â ("abcdefg" , 2, 3 ) À̶ó°í Çϸé abcdefg
ÀÇ µÎ¹øÂ° ±ÛÀÚºÎÅÍ 3°³¸¦ °¡Á®¿Â´Ù Áï bcd ¸¦ °¡Á®¿À´Â ÇÔ¼öÀÌ´Ù. ¿©±â¼ ¿ì¸®´Â ÇѱÛÀÚ¾¿ ¸¸
°¡Á®¿À¸é µÈ´Ù. Áï 1ºÎÅÍ ¸¶Áö¸· ¹øÈ£±îÁö °¡Á®¿Ã·Á¸é
str_temp = mid(str, i , 1)
3. ÀÌÁ¦ str_temp ¿¡´Â ù¹øÂ°±ÛÀÚ°¡ ´ã°Ü ÀÖÀ» °ÍÀ̰í À̰ÍÀÌ
' ¿Í °°´Ù¸é '' ·Î ¹Ù²ãÁØ´Ù.
if str_temp = equal
then -> if
str_temp = "'"
then str_temp = change
-> str_temp =
"''" end if
-> end if
4. ÀÌÁ¦ ±× ¹®ÀÚ¿À» Çϳª¾¿ Á¶ÇÕÇØ¼ »õ·Î¿î ¹®ÀÚ¸¦ ¸¸µç´Ù.
str_return = str_return + str_temp
'
5. °á°ú °ªÀ» µÇµ¹·ÁÁØ´Ù ( »ç½Ç µÇµ¹·ÁÁشٴ ¸»Àº Ʋ¸° °ÍÀÌ´Ù °°Àº ¸Þ¸ð¸® ÁÖ¼Ò¿¡
ÀúÀå ½Ãų »ÓÀÌ´Ù. )
str = str_return
' for ¹®ÀÌ ³¡³µÚ¿¡ ±× °ªÀ» ÀúÀåÇÑ´Ù (À̰ÍÀº call by referance À̱⶧¹®¿¡
°¡´ÉÇÏ´Ù.)
¾Æ¸¶µµ ÀÌ ÇÔ¼ö´Â ÇÁ·Î±×·¥ °æ·ÂÀÌ ÀÖÀ¸½ÅºÐµéÀº ±×¸® ¾î·ÆÁö
¾Ê°Ô ½º½º·Î ¸¸µå½Ç¼ö ÀÖÀ»²¨¶ó´Â »ý°¢À̵ì´Ï´Ù. ÀÌ ¿ø¸®¸¦ ÀÌ¿ëÇϸé Trim (°ø¹é¹®ÀÚ Á¦°Å ) ÇÔ¼ö´Â ½±°Ô
¸¸µé¼ö ÀÖ½À´Ï´Ù. . (À̰ÍÀº ¿©·¯ºÐ ½º½º·Î Çѹø ÇØºÃÀ¸¸é ÁÁ°Ú ½À´Ï´Ù. )
À̹ø¿¡´Â ¹®ÀÚ¿ Á¤·Ä¿¡ °üÇØ¼ ¾Ë¾Æ º¸°Ú½À´Ï´Ù.
2. bubble sort
Á¤·Ä¾Ë°í¸®ÁòÀº Á¤¸» ¹«¼öÈ÷ ¸¹½À´Ï´Ù. ÇÊÀÚ°¡ ¾Ë°í ÀÖ´Â Á¤·Ä¾Ë°í¸®Áò¸¸Çصµ
8°³ °¡±îÀÌ µÇ°í ÇöÀçµµ Á¤·Ä ¾Ë°í¸®ÁòÀº ¿¬±¸ µÇ°í ÀÖ°í »õ·Ó°í ¼º´ÉÁÁÀº Á¤·Ä ¾Ë°í¸®ÁòÀ» °³¹ßÇÑ´Ù¸éÀ̰ÍÀº
³í¹®°¨ÀÔ´Ï´Ù :-) ±×¸¸Å ¸¹Àº »ç¶÷µéÀÌ ¿¬±¸Çؿ԰í ÃÖÀûÈ µÇ¾î ¿Ô½À´Ï´Ù. ÀÌÁß¿¡¼ ¿ì¸®´Â °ÅǰÁ¤·Ä(bubble
sort) À» »ç¿ëÇØ¼ ¹®ÀÚ¿À» Á¤·ÄÇØº¼ °ÍÀÔ´Ï´Ù.
ÀÏ´Ü ¹®ÀÚ¿À» Á¤·ÄÇÑ´Ù ÇÔÀº "bacdfe" ¸¦ ¿À¸§Â÷¼øÀ¸·Î Á¤·ÄÇϸé
"abcdef" °¡ µË´Ï´Ù. °Åǰ Á¤·Ä ¾Ë°í¸®ÁòÀÇ ¿ø¸®´Â ÀÎÁ¢ÇÑ ¹è¿ÀÇ ¿ä¼Ò¸¦ ºñ±³ , ±³È¯ÇÑ´ÙÀ½¿¡
ÀüüÀûÀ¸·Î ´ëÃæ Á¤·ÄÀ» Çϸé¼
ÃÖ´ë°ªÀ» ¹è¿ÀÇ Á¦ÀÏ ¸¶Áö¸·À¸·Î º¸³»´Â °ÍÀ» ¹Ýº¹ÇÏ´Ùº¸¸é ¿À¸¥Â÷¼øÀ¸·Î Á¤·ÄÀÌ µË´Ï´Ù.
"fbadce" °¡ ÀÖ´Ù°í Ä¡¸é ¿ì¼±
1. f ¿Í b ¸¦
ºñ±³ÇÑ´Ù b °¡ ¾Õ¿¡ ¿Í¾ß
ÇϹǷΠÀÚ¸®¸¦
¹Ù²Û´Ù. ±×·¸°Ô µÇ¸é
"bfadce" °¡
µÉ°ÍÀÌ´Ù ´Ù½Ã f ¿Í
a¸¦ ºñ±³ÇÑ´Ù a °¡
¾Õ¿¡ ÀÖ¾î¾ß ÇϹǷΠÀÚ¸®¸¦
¹Ù²Û´Ù. ±×·¸°Ô µÇ¸é
"bafdce" °¡
µÈ´Ù. ´Ù½Ã f ¿Í
d¸¦ ºñ±³ÇÑ´Ù d °¡
¾Õ¿¡ ÀÖ¾î¾ß ÇϹǷΠÀÚ¸®¸¦
¹Ù²Û´Ù. "badfce" °¡
µÇ°í ÀÌ·¸°Ô µÇ¸é¼ °á±¹ f´Â Á¦ÀÏ µÚ·Î
°¡°ÔµÇ¸é¼ "badcef" ÀÇ
ÇüŰ¡
µÉ°ÍÀÌ´Ù. f°¡ Á¦ÀÏ µÚ·Î º¸³»Áö°Ô
µÇ¸é 2. óÀ½À¸·Î µ¹¾Æ°¡¼ b ¿Í a¸¦
¹Ù²Û´Ù. ±×·³
"abdcef " °¡
µÈ´Ù. ´ÙÀ½¿¡ b d
¸¦ ºñ±³ÇÑ´Ù. d °¡
´õ Å©¹Ç·Î ±³È¯ÇÒÇʿ䰡
¾ø´Ù ±³È¯ÇÒÇʿ䰡
¾ø¾îÁö¸é¼ d È c¸¦ ºñ±³ÇÑ´Ù
(óÀ½¿¡ ¸»ÇßµíÀÌ
ÀÚ¸®¸¦ ¿Å±â¸é¼ ¿·ÀÚ¸®ÇÏ°í¸¸ ºñ±³¸¦ ÇÕ´Ï´Ù.
) c°¡ ´õ ÀÛÀ¸¹Ç·Î
±³È¯ÇؾßÇÑ´Ù.
"abcdef" ±×´ÙÀ½¿¡´Â
d ¿Í e¸¦ ºñ±³
ÇÑ´Ù. (óÀ½¿¡ ¸ÇµÚ·Î°£
f¿Í´Â ºñ±³ ÇÏÁö ¾Ê´Â´Ù.!) À̰ÍÀÌ
bubble sort ÀÇ ±âº» Á¤·Ä
¹æ¹ýÀÌ´Ù.
°á±¹ "abcdef" °¡ µÇ°í Á¦ÀÏ Å«¹®ÀÚ¸¦ µÚ·Î º¸³»°¡¸é¼ Áß°£Áß°£ Á¤·ÄÀ»
ÇØ³ª°¡°í ÀÖ´Ù.
3. ÀÌ¹Ì "abcdef" ·Î Á¤·ÄÀº ´Ù
µÇ¾úÁö¸¸ °è¼Ó ÇØ³ª°£´Ù¸é
´Ù½Ã a ¿Í b¸¦ ºñ±³Çϰí d±îÁö¸¸ ºñ±³ ÇÑ´Ù (¸ÇµÚ·Îº¸³½ e, f ´Â ºñ±³ ÇÏÁö
¾Ê´Â´Ù. )
ÀÌ ¹öºí ¼ÒÆ®´Â ºñ±³Àû ¾î´ÀÁ¤µµ Á¤·ÄÀÌ µÇÀÖ´Â ¹®ÀÚ¸¦ Á¤·ÄÇÒ¶§ ±²ÀåÈ÷
ºü¸¥ ¼Óµµ¸¦ ÀÚ¶ûÇÏÁö¸¸ ¿ª¼øÀ¸·Î Á¤·ÄµÇÀÖ´Â ¹®ÀÚ¸¦ Á¤·ÄÇÒ¶§´Â ºñ±³Àû ´À¸³´Ï´Ù. ÀÌÀ¯´Â °£´ÜÇÕ´Ï´Ù
¾ÕµÚ ÀÚ¸®¸¦ °è¼Ó ¹Ù²ãÁà¾ß Çϱ⠶§¹®ÀÌÁö¿ä.
À̰ÍÀ» asp ·Î ³ªÅ¸³» º¸¸é..
<%
strstring =
"aslkjasdghglasdjfjfqhwejfasjdflkasfkhasdkjfals" ' Á¤·ÄÇÒ
¹®ÀÚ¿ Call bubble_sort(strstring) '
ÇÔ¼ö È£Ãâ Response.write strstring
Sub bubble_sort(str_string) 'ÇÔ¼ö ¼±¾ðºÎ ¹®ÀÚ¿ÀÌ
µé¾î¿Â´Ù. Dim i, j
'
º¯¼ö ¼±¾ð Dim
str_temp()
' ¹Ýµå½Ã ¹è¿·Î ÇÒÇÊ¿ä´Â ¾øÁö¸¸ ¹è¿¿¡ ¹®ÀÚ¿À» Çϳª¾¿ ÀúÀåÇØ µÎ´Â °ÍÀÌ ÆíÇÏ´Ù.
str_length =
Len(str_string) '¹®ÀÚ¿ÀÇ ±æÀ̸¦ ¹Ì¸® ÀúÀå ÇØµÐ´Ù (¼Óµµ Çâ»óÀ»
À§ÇؼÀÓ.) ReDim
str_temp(str_length) ' ¹®ÀÚ¿ÀÇ ±æÀ̸¸Å ¹è¿À»
Àç¼±¾ð
For i = 1 To
str_length
' ¹®ÀÚ¿ÀÇ
±æÀÌ ¸¸Å ¹Ýº¹¹®À»
µ·´Ù. str_temp(i)
= Mid(str_string, i, 1) ' ¹®ÀÚ¿À» ¹è¿¿¡ ÇѱÛÀÚ¾¿ ³Ö¾îÁÖ°í
ÀÖ´Ù. Next
For i = 0 To
str_length
' ¿©±â¼ ºÎÅͰ¡ ¹öºí ¼ÒÆ® ÀÌ´Ù. ¹®ÀÚ¿ÀÇ ±æÀ̸¸Å ´Ù½Ã ¹Ýº¹¹®À»
µ·´Ù.
For j = 1 To str_length -
i ' 2Áß
¹Ýº¹¹®ÀÌ´Ù.
'str_length - i ÀÇ À̴̹ Á¦ÀÏ ¸¶Áö¸·¿¡ ÀÖ´Â Á¦ÀÏ Å«¹®ÀÚ´Â ´Ù½Ã ºñ±³ÇÒ Çʿ䰡
¾ø¾î¼ÀÌ´Ù.
If str_temp(j - 1) >
str_temp(j) Then ' "a" ¿Í "s" ¸¦ ºñ±³
ÇØ¼
t = str_temp(j -
1)
' "s"°¡ Å©¸é Àӽà º¯¼ö¿¡
ÀúÀåÇØ³õ°í
str_temp(j - 1) = str_temp(j)
'ÀÚ¸®¸¦ ¼·Î
¹Ù²Û´Ù.
str_temp(j)
= t
End If
Next
Next
str_string =
""
'
¹Ýº¹¹®Àº ¸ðµÎ ³¡³µ´Ù °ªÀ» µÇµ¹·ÁÁÖ±â À§ÇØ ±×Àü¿¡ Á¤·Ä ¾ÈµÈ ¹®ÀÚ¿À» ¸ðµÎ Áö¿î´Ù.
For
i = 1 To
str_length 'À̺κÐÀº
str_string ¿¡ Á¤·ÄµÈ
¹®ÀÚ¿À» str_string
= str_string +
str_temp(i) '³Ö¾îÁÖ´Â
°úÁ¤ÀÌ´Ù. str_string ¿¡´Â Á¤·ÄµÈ ¹®ÀÚ°¡ µé¾î°¡°Ô
µÈ´Ù. Next
End Sub %>
|
Áö±Ý ÀÌ ÇÔ¼ö´Â À̱ÛÀ» ¾²¸é¼ ¹Ù·Î¹Ù·Î ¸¸µé°í Àִ°ÍÀε¥ ¹º°¡ ÃÖÀûÈ µÇÁö´Â
¾ÊÀº´À³¦ÀÔ´Ï´Ù. ¹öºí¼ÒÆ®ÀÇ ÀåÁ¡Àº Áß°£¿¡ Á¤·ÄÀÌ ´ÙµÇ¾úÀ¸¸é ³¡±îÁö ºñ±³ ÇÏÁö ¾Ê°í Áß°£¿¡ ¸ØÃâ ¼ö ÀÖ½À´Ï´Ù.
À̰ÍÀ» ¼Ò½º¿¡ ³ÖÀ¸¸é ³Ê¹« º¹ÀâÇØ º¸À̱⠶§¹®¿¡ ¼Ò½º¿¡¼ »°À¸¸ç Áß°£¿¡ ¸ØÃâ ¼ö ÀÖ´Â °ÍÀº ¹öºí¼ÒÆ®ÀÇ
ÀåÁ¡ÀÔ´Ï´Ù. ¿©·¯ºÐÀÌ Á÷Á¢ Çѹø ÇØº¸½Ã±â ¹Ù¶ø´Ï´Ù (ÈùÆ® : ¹®ÀÚ¿À» ºñ±³ÇÏ´Ù ±³È¯ÀÌ
ÀϾÁö ¾ÊÀ¸¸é ¹®ÀÚ¿Àº Á¤·ÄµÈ»óÅ ÀÌ´Ù. ±³È¯ÀÌ ÀÏ¾î ³ªÁö ¾ÊÀ» ¶§ for ¹®À» ºüÁ®³ª¿À¸é µÈ´Ù. )
¹º°¡ º¹ÀâÇØ º¸À̱äÇÏÁö¸¸ ½ÇÁ¦·Î ¿©·¯ºÐÀÌ ¸¸µé¾î °¡¸é¼ ¼Ò½º¸¦ º¸¸é ±×¸® ¾î·ÆÁöµµ ¾Ê½À´Ï´Ù.. Á¦ÀÏ ÀºÎºÐÀÇ
¹Ýº¹¹®°ú ¾Æ·¡ºÎºÐÀÇ ¹Ýº¹¹®Àº »ç½Ç Áß¿äÇÏÁö ¾Ê°í Áß¿äÇÑ ºÎºÐÀº
For i = 0 To
str_length ' ¿©±â¼
ºÎÅͰ¡ ¹öºí ¼ÒÆ® ÀÌ´Ù. ¹®ÀÚ¿ÀÇ ±æÀ̸¸Å ´Ù½Ã ¹Ýº¹¹®À»
µ·´Ù. For j = 1 To
str_length - i ' 2Áß
¹Ýº¹¹®ÀÌ´Ù. 'str_length - i ÀÇ À̴̹ Á¦ÀÏ
¸¶Áö¸·¿¡ ÀÖ´Â Á¦ÀÏ Å«¹®ÀÚ´Â ´Ù½Ã ºñ±³ÇÒ Çʿ䰡 ¾ø¾î¼ÀÌ´Ù.
If
str_temp(j - 1) > str_temp(j) Then ' "a" ¿Í "s"
¸¦ ºñ±³
ÇØ¼ t
= str_temp(j - 1)
' "s"°¡ Å©¸é Àӽà º¯¼ö¿¡
ÀúÀåÇØ³õ°í str_temp(j
- 1) = str_temp(j)
'ÀÚ¸®¸¦ ¼·Î
¹Ù²Û´Ù. str_temp(j)
= t End
If
Next Next
À̺κÐÀÔ´Ï´Ù. ¿©±â¼ ¾î¶² ºÐµéÀº ¿Ö 2Áß for ¹®À¸·Î ÇÏ³Ä°í ¹°¾î
º¸½Ã´Â ºÐµéµµ ÀÖÀ»ÅÙµ¥.. "54321 " À̶ó´Â ¹®ÀÚ°¡ ÀÖÀ» ¶§ ¹Ýº¹¹®À» Çѹø¸¸ µ¹¸®°Ô µÇ¸é "43215"¿¡¼
³¡³ª ¹ö¸³´Ï´Ù. ´Ù½Ã óÀ½À¸·Î µ¹¾Æ°¡¾ß Çϱ⠶§¹®¿¡ 2Áß for ¹®À» ½á¾ßÇÕ´Ï´Ù.
»ç½Ç ¸Ó¸®°¡ ÁÁÀº »ç¶÷µéÀº À̺κРÁ¤µµ´Â ¸Ó¸®·Î µû¶ó°¡¸é¼ °á°ú °ªÀ» ¿¹ÃøÇϰï
ÇÏÁö¸¸ Çѹø¾¿ ÇØº¸¸é¼ ÀÌÇØÇÏ½Ã±æ ºÎŹ µå¸³´Ï´Ù. °¡Àå Áß¿äÇÑ °ÍÀº ¹öºí¼ÒÆ®´Â µÞºÎºÐ ºÎÅÍ Á¤·ÄÀÌ
µÇ¸ç ¾ÕµÚ°ªÀ» ºñ±³ ÇØ¼ ÀÚ¸®¹Ù²ÞÀ» ÇѴٴ°ÍÀÔ´Ï´Ù. ÀÌÇØ°¡ µÅ¼Ì´ÂÁö Àß ¸ð¸£°Ú½À´Ï´Ù . T.T
Ȥ½Ã¶óµµ Áú¹®ÀÖÀ¸½Å ºÐÀº ¸ÞÀÏ ÁÖ¼¼¿±...~~ caelin@dreamwiz.com
Back |