|
|
|
|
|
[Ã¥¼Ò°³]
ÀÌÃ¥Àº ÀúÀÚ°¡ ÃÖ±Ù ´ëÇб³¿¡¼ Àü»êÀü°ø ÇлýÀ» ´ë»óÀ¸·Î "ÀڷᱸÁ¶"¶ó´Â °Á·Π°ÀÇÇÑ ³»¿ëÀ» Áß½ÉÀ¸·Î ÁýÇÊÇÏ¿´´Ù. Ã¥ ³»¿ëÀº "Program=tctures+Algorithm"À̶ó´Â ¸íÁ¦ ¾Æ·¡ ÀڷᱸÁ¶¿¡ ¾Ë°í¸®Áò°ú ¹ÐÁ¢ÇÑ °ü°è¿¡¼ Á¢±ÙÇÏ¿´°í ¾Ë°í¸®ÁòÀÇ È¿À²¼º ¶ÇÇÑ ÀڷᱸÁ¶¿¡ µû¶ó Æò°¡ÇÏ°í À̸¦ °³¼±ÇÏ´Â °¡ÀÌµå ¶óÀÎÀ¸·Î Á¤ÇÏ¿´´Ù.
µû¶ó¼ ÀÌ Ã¥Àº ÇÁ·Î±×·¥ ÀÛ¼º°ú ºÐ¼®À̶ó´Â Ãø¸é°ú ÇÁ·Î±×·¥ ÅؽºÆ®·Î Ç¥ÇöµÇ´Â ¾Ë°í¸®Áò ±¸Á¶¿¡ ÁßÁ¡À» µÎ°í ÀÖ´Ù. º¹ÀâÇÏ°í ¹æ´ëÇÑ ÀڷḦ Ãë±ÞÇÏ´Â °æ¿ì ÇÁ·Î±×·¡¹ÖÀ» ü°èÀûÀÌ°í Çй®ÀûÀ¸·Î °üÂûÇÏ´Â °ÍÀÌ ´ë´ÜÈ÷ Áß¿äÇÏ´Ù. ¿Ö³ÄÇϸé ÇÁ·Î±×·¥Àº ¹®Á¦ÀÇ È®½ÇÇÑ Ç¥Çö°ú ÀڷᱸÁ¶¸¦ Áö¿øÇÏ´Â Ãß»óÀû ¾Ë°í¸®ÁòÀÇ ¸¶Áö¸· ±¸Ã¼È¿¡ ¼ÓÇϱ⠶§¹®ÀÌ´Ù. Áï, ÀÚ·áÀÇ ±¸Á¶´Â ÀÚ·á¿¡ ÀÀ¿ëµÇ´Â ¾Ë°í¸®Áò¿¡ ´ëÇÑ Áö½Ä ¾øÀÌ´Â Á¢ÇÒ ¼ö ¾ø°í, ¾Ë°í¸®ÁòÀÇ ±¸Á¶¿Í ¼±ÅÃÀº ÀڷᱸÁ¶¿¡ ±ä¹ÐÇÏ°Ô ¹¿© ÀÖ´Ù´Â »ç½Ç·ÎºÎÅÍ Ãâ¹ßÇÏ°í ÀÖ´Ù.
ÀÌ Ã¥Àº ¾Ë°í¸®ÁòÀ¸·ÎºÎÅÍ ÀڷᱸÁ¶¸¦ °üÂûÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó ÀڷᱸÁ¶·ÎºÎÅÍ ¾Ë°í¸®ÁòÀ» °üÂûÇÏ´Â µ¥ ±× Ư¡ÀÌ ÀÖ´Ù. ¿Ö³ÄÇÏ¸é µ¥ÀÌÅÍ´Â ÇÁ·Î±×·¥À» °³¹ßÇÏ´Â °úÁ¤¿¡¼ ¾Ë°í¸®Áòº¸´Ù ÀÌÀü¿¡ °üÂûµÇ¾î¾ß Çϱ⠶§¹®ÀÌ´Ù. Áï, ÀÚ·á¿¡ ´ëÇÑ ¿¬»ê ÀÌÀü¿¡ °´Ã¼°¡ ÀÖ¾î¾ß ÇÑ´Ù´Â »ý°¢ ¶§¹®ÀÌ´Ù. ¶ÇÇÑ ÇÁ·Î±×·¥Àº ´Ü¼øÇÑ ÀÚ·á¿ø¼Ò¸¦ Á¶ÀÛÇÏ´Â À̼ºÀûÀÎ ¾Ë°í¸®Áò¿¡ ÁýÁßÇÏ°í Àֱ⠶§¹®¿¡ ÀڷᱸÁ¶·ÎºÎÅÍ ¾Ë°í¸®ÁòÀ» ¿¬°á½ÃÄÑ¾ß ÇÑ´Ù.
ÀÌ Ã¥¿¡¼ ¾Ë°í¸®ÁòÀº ¸ÕÀú °æÇèÀû ¹æ¹ýÀ¸·Î Á¤È®¼ºÀ» ÀüÁ¦·Î ÇÑ ÈÄ, Á¡Â÷·Î È¿À²¼º¿¡ ´ëÇÑ ºÐ¼®À» ÅëÇØ º¹Àâµµ¸¦ Çâ»ó½ÃÅ°´Â ¹æ¹ýÀ¸·Î ¾Ë°í¸®ÁòÀ» °³¼±Çϵµ·Ï ÇÏ¿´´Ù.
±Ù·¡¿¡ ¿Í¼ ÇÁ·Î±×·¡¹Ö ±â¹ý¿¡ °´Ã¼ Áß½ÉÀûÀÎ °æÇâÀÌ Àֱ⠶§¹®¿¡ ÀÌ Ã¥Àº ¾Ë°í¸®ÁòÀ» ÀýÂ÷ÁöÇâÇü ¾ð¾î(C, Pascal µî)º¸´Ù °´Ã¼ÁöÇâÇü ¾ð¾îÀÎ Java·Î ¼¼úÇÏ°í ±¸ÇöÇÏ¿´´Ù. µû¶ó¼ ¿¹Á¦ ÇÁ·Î±×·¥Àº °´Ã¼ÁöÇâ Ư¼ºÀΠĸ½¶È, Á¤º¸ÀºÆó, Ãß»óÈ, »ó¼Ó¼º, Àç»ç¿ë¼º µîÀ» °í·ÁÇÏ¿© ÀÛ¼ºÇÏ¿´´Ù.
Ã¥ Àüü´Â 8´Ü¿øÀ¸·Î ±¸ºÐÇÏ¿´°í, °¢ ´Ü¿øµéÀº ÀüÈÄ´Ü¿ø¿¡ Á÷Á¢ÀûÀÎ °ü°è¸¦ °¡Áö°í °üÂûÇÒ ¼ö ÀÖµµ·Ï ³ª¿ÇÏ¿´´Ù.
ÀÌ ¹æ¹ý¿¡ µû¶ó ÀÌ Ã¥Àº ¹è¿°ú ·¹ÄÚµå¿Í °°Àº ±¸Á¶Àû ÀÚ·áÇüÀ¸·ÎºÎÅÍ ¼±Çü ¸®½ºÆ®¿Í Æ®¸®(tree)¿¡ ´ëÇØ ´Ù·ç¾ú°í, ´ÙÀ½¿¡ ÀÚ·áÀÇ ÀÌ»êÀûÀÎ ±¸Á¶ Áï, ±×·¡ÇÁ(graph)¿Í ¸Þ¸ð¸®°ü¸® ¾Ë°í¸®Áò¿¡ ´ëÇØ »ìÆ캸¾ÒÀ¸¸ç, ¾Ë°í¸®ÁòÀÇ È¿À²¼º¿¡ µû¶ó ÀÚ·áÀÇ Á¤·Ä°ú Ž»öÀ», ±×¸®°í ÆÄÀϱ¸Á¶¸¦ ÁßÁ¡ÀûÀ¸·Î ´Ù·ç¾ú´Ù.
ÀÌ Ã¥Àº À̷аú ½Ç½ÀÀ» ¸ñÇ¥·Î Àú¼úµÇ¾úÀ¸¸ç java ¾ð¾î¸¦ Àß ¸ð¸£´Â µ¶ÀÚµéÀ» À§ÇÏ¿© java¿¡ ´ëÇÑ ºÎ·ÏÀ» Ã¥ µÚ¿¡ µ¡ºÙ¿´´Ù. ºÎ·Ï¿¡ ¾²¿©Áø java ¾ð¾î´Â ÀڷᱸÁ¶¿¡ µû¸¥ ¾Ë°í¸®ÁòÀ» ¼¼úÇϴµ¥ ÇÊ¿äÇÑ ¿ä¼Ò¸¸À» ´Ù·ç¾úÀ¸¸ç, Thread, GUI, Applet, Network µî¿¡ ´ëÇؼ´Â Ãë±ÞÇÏÁö ¾Ê¾Ò´Ù.
java ¹öÀüÀº sdk1.3À» ±âÁØÀ¸·Î ÇßÀ¸¸ç »ó¼¼ÇÑ °ÍÀº sdk1.3ÀÇ API ¹®¼¸¦ ÂüÁ¶Çϱ⠹ٶõ´Ù (http://java.sun.com/j2se/1.3/docs/api/index.html).
ÀÌ Ã¥ÀÇ ³»¿ëÀº °¢ À庰·Î ´ÙÀ½°ú °°Àº ³»¿ëÀ¸·Î ¼¼úµÇ¾ú´Ù.
1Àå¿¡¼´Â ÇÁ·Î±×·¥Àº ÀڷᱸÁ¶¿Í ¾Ë°í¸®ÁòÀÇ °ü°è¿¡¼ ´Ü¼øÇÑ ¹®Á¦ÇØ°áÀ̶ó´Â Á¡À» ¶°³ª¼ ÀڷᱸÁ¶¿¡ µû¶ó ¾Ë°í¸®ÁòÀÌ ´Ù¾çÇÏ°Ô Á¸ÀçÇÒ ¼ö ÀÖ´Ù´Â °Í°ú ÀÌ¿¡ ´ëÇÑ ¾Ë°í¸®ÁòÀÇ È¿À²¼ºÀ» ³íÀÇÇÏ¿´´Ù. ¿¹¸¦ µé¾î °¡°èºÎ°ü¸® ¹®Á¦¶óµç°¡ 30 & 4 ¹®Á¦ µîÀ» ³õ°í ÀڷᱸÁ¶¿Í ¾Ë°í¸®ÁòÀÌ ¾ó¸¶³ª ±ä¹ÐÇÏ°Ô ¿¬°áµÇ´ÂÁö º¸¿©ÁÖ°í ¾Ë°í¸®ÁòÀÇ ºÐ¼®À» ÅëÇؼ ½ÇÇà½Ã°£°ú ¼Ò¿äµÇ´Â ¸Þ¸ð¸® °ø°£¿¡ ´ëÇÑ È¿À²¼ºÀ» ÃøÁ¤ÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ »ìÆ캸¾Ò´Ù.
2Àå¿¡¼´Â ¸ðµç ÇÁ·Î±×·¡¹Ö ¾ð¾î¿¡¼ °¡Áö°í ÀÖ´Â ±âº» ÀÚ·áÇü°ú ±¸Á¶Àû ÀÚ·áÇüÀÎ ¹è¿, ·¹ÄÚµå¿Í ÀÚ¹Ù¿¡¼ Á¦°øµÇ´Â º¤ÅÍÇü(Vector), ÂüÁ¶Çü, Ãß»óÀû ÀÚ·áÇüÀΠŬ·¡½ºÇü(class)°ú Àç±ÍÀû ÀÚ·áÇü¿¡ ´ëÇØ »ìÆ캸¾Ò´Ù. ¹è¿°ú °°Àº ¼øÂ÷Àû ±¸Á¶¸¦ °¡Áö°í ÀÖ´Â ¸®½ºÆ®ÀÇ ¿¬»ê½Ã°£°ú ¸Þ¸ð¸®ÀÇ »ç¿ëÀ» Çâ»ó½ÃÅ°±â À§ÇÑ ÀڷᱸÁ¶¿¡ ´ëÇØ »ìÆ캸¾Ò°í, Àç±ÍÀû ÀÚ·áÇüÀ» ÅëÇØ ¿¬°á¸®½ºÆ®(linked list)ÀÇ ±¸Ãà°ú ÀÌ¿¡ µû¸¥ È¿À²¼ºÀ» ºÐ¼®ÇÏ¿´´Ù.
3Àå¿¡¼´Â Àç±ÍÀû ÀÚ·áÇüÀ» ÅëÇØ ¿¬°á¸®½ºÆ®¸¦ ±¸ÃàÇÏ°í À̸¦ ÀÌ¿ëÇÏ¿© ½ºÅÃ(stack)°ú Å¥(queue) ¸®½ºÆ®¿Í ¸µ(ring) ¸®½ºÆ® µîÀ» ±¸ÇöÇÏ¿´´Ù. ƯÈ÷ ½ºÅÃÀº java¿¡¼ Áö¿øÇÏ´Â StackÀ̶ó´Â Ŭ·¡½º¸¦ ÅëÇÏ¿© ±¸ÇöÇÏ¿´´Ù.
4Àå¿¡¼´Â ¸®½ºÆ®¿¡¼ÀÇ Å½»öÀ̳ª ±âŸ ¿¬»êÀÌ ±¸Á¶»ó ¼øÂ÷ÀûÀ¸·Î ÁøÇàµÇ±â ¶§¹®¿¡ ¿¬»ê½Ã°£ÀÌ ±æ´Ù. µû¶ó¼ ½Å¼ÓÇÑ °Ë»öÀ» ¸ñÀûÀ¸·Î Æ®¸®(tree)±¸Á¶¸¦ µµÀÔÇÏ°í, Æ®¸®±¸Á¶¿¡ µû¸¥ °ü·Ã ¿¬»êÀÇ È¿À²¼ºÀ» ³ôÀÏ ¼ö ÀÖ´Â ´Ù¾çÇÑ À¯ÇüÀÇ Æ®¸®¸¦ ºÐ¼®ÇÏ°í, ³¡À¸·Î ½Å¼ÓÇÑ Å½»öÀ» À§ÇÑ Æ®¸® °¡¿îµ¥ ±ÕÇüÀâÈù ÀÌÁø Ž»öÆ®¸®(Balanced tree: AVL-tree)¸¦ »ìÆ캸¾Ò´Ù.
5Àå¿¡¼´Â ÀÌ»ê ÀڷᱸÁ¶ÀÇ ´ë¸í»ç·Î½á ÀÏ»ó»ýÈ°ÀÇ ¸ðµç ¸Á(network)À» Ç¥ÇöÇÏ´Â ±×·¡ÇÁ¿Í ±×ÀÇ ¿¬»ê ¾Ë°í¸®ÁòÀ» »ìÆ캸¾Ò´Ù. ±×·¡ÇÁÀÇ ±¸Çö¿¡¼ ½ÃÀÛÇÏ¿© ±×·¡ÇÁ¿¡ ´ëÇÑ ¼øÇà¹æ¹ý°ú ÁöÁ¡°£À» ¿¬°áÇÏ´Â ÃÖ¼Òºñ¿ë°è»ê ¹®Á¦¶óµçÁö ÇÑ ÁöÁ¡¿¡¼ ´Ù¸¥ ÁöÁ¡¿¡ À̸£±â±îÁö ÃÖ´Ü °æ·Î¸¦ ã´Â ¹®Á¦¿¡ ´ëÇØ »ìÆ캸¾Ò´Ù.
6Àå¿¡¼´Â ÀÚ·áÀÇ ±âº»ÀûÀÎ ³»ºÎÁ¤·Ä ¾Ë°í¸®ÁòÀÇ º¹Àâµµ ºÐ¼®À¸·Î È¿À²¼ºÀ» Æò°¡ÇÑ ÈÄ¿¡ °³¼± ¾Ë°í¸®ÁòÀ» Á¦½ÃÇÏ°í º¹Àâµµ¸¦ ºÐ¼®ÇÏ¿´´Ù. ±×¸®°í ÆÄÀÏ¿¡¼ÀÇ Á¤·Ä¹æ¹ý Áß ¿ÜºÎÁ¤·Ä ¾Ë°í¸®Áò¿¡ ´ëÇØ ´Ù·ç¾ú´Ù.
¶ÇÇÑ ¹è¿À» ÅëÇØ ÀÌÁøÆ®¸®(binary tree)¿Í ÀüÇüÀûÀÎ AVL Æ®¸®ÀÎ ÇǺ¸³ªÄ¡ Æ®¸®(Fibonacci tree)ÀÇ Å½»ö ¾Ë°í¸®Áò¿¡ ´ëÇØ »ìÆ캸¾Ò´Ù.
7Àå¿¡¼´Â ÀڷᱸÁ¶»ó ÇÁ·Î±×·¥ ½ÇÇà½Ã°£¿¡ ¸Þ¸ð¸®¸¦ µ¿ÀûÀ¸·Î ÇÒ´çÇÏ°í ȸ¼öÇÏ´Â ¹æ¹ý°ú ¾Ë°í¸®Áò(garbage collection / memory compaction)À» ¼Ò°³ÇÏ¿´´Ù.
8Àå¿¡¼´Â Á¤º¸Ã³¸®¿¡ ÀÖ¾î¼ È¿À²ÀûÀÎ °Ë»ö°ú °»½Å ¹× »èÁ¦¿Í »ðÀÔ µî¿¡ °ü·ÃµÈ ÆÄÀÏÁ¶Á÷ (file organization)±â¹ý°ú ¿¬»ê¹æ¹ý¿¡ ´ëÇØ »ìÆ캸¾Ò´Ù.
ÀÌ»ó À§¿¡¼ ¼¼úÇÑ ³»¿ëÀ» Áß½ÉÀ¸·Î ±âº»ÀûÀÎ ÀڷᱸÁ¶¿Í ¾Ë°í¸®ÁòÀ» java ¾ð¾î·Î ±¸ÇöÇÏ°í ¼¼úÇÏ¿´´Ù. ºñ·Ï ºÎÁ·ÇÑ Á¡ÀÌ ÀÖÀ»Áö¶óµµ ÀÌ Ã¥À» ÅëÇÏ¿© ¸¹Àº ÇлýµéÀÌ ÀڷᱸÁ¶¿Í ¾Ë°í¸®ÁòÀ» ÀÌÇØÇÏ°í ÇнÀÇϴµ¥ Å« µµ¿òÀÌ µÇ±æ ¹Ù¶ó¸ç, ¾ÕÀ¸·Î ±âȸ°¡ ÁÖ¾îÁø´Ù¸é, ºÎÁ·ÇÑ ºÎºÐÀ» º¸ÃæÇÏ°í À߸øµÈ ºÎºÐÀ» ¼öÁ¤ÇÏ¿© Á»´õ ¾ËÂù ³»¿ëÀ¸·Î °Åµì³¯ °ÍÀ» ¾à¼Óµå¸°´Ù.
³¡À¸·Î ÀÌ Ã¥ÀÌ ÃâÆǵDZâ±îÁö Àû±ØÀûÀ¸·Î ÇùÁ¶ÇØ ÁֽŠ21¼¼±â»ç À̹ü¸¸ »çÀå´Ô²² ¸ÕÀú ½É½ÉÇÑ °¨»ç¸¦ µå¸®¸ç, Å»°íµÉ ¶§±îÁö ±³Á¤¿¡ Å« ¸òÀ» ÇØÁØ °¿ø´ëÇб³ ´ëÇпø ¹Ú»ç°úÁ¤¿¡ ÀçÇÐÁßÀÎ ¼ÈñÁ¤ ¾ç°ú ¼®»ç°úÁ¤ ÀÌÁø¼ö ±º, 俵Áø ±º¿¡°Ô °¨»ç¸¦ Ç¥ÇÏ°í, ¶ÇÇÑ º¸ÀÌÁö ¾Ê´Â °÷¿¡¼ Ã¥À» ÃâÆÇÇÏ´Â µ¥¿¡ ÃÖ¼±À» ´ÙÇØ ÁֽŠÆíÁýºÎ ¹× ÃâÆǺÎÀÇ ¿©·¯ºÐ²² ±íÀÌ °¨»ç¸¦ µå¸°´Ù.
2000³â 11¿ù
Àú ÀÚ ¾¸
[¸ñÂ÷]
Á¦1Àå ÀÔ ¹®
1.1 ÀڷᱸÁ¶¿Í ¾Ë°í¸®Áò
1.2 ½ÇÇà½Ã°£ ÃøÁ¤
1.3 °´Ã¼ÁöÇâ ÇÁ·Î±×·¡¹Ö
Á¦2Àå ÀÚ·áÇü
2.1 ±âº» ÀÚ·áÇü
2.2 ÂüÁ¶Çü
2.3 Àç±ÍÀû ¿ë¹ý
Á¦3Àå ¸®½ºÆ®
3.1 ¹è¿¿¡ ÀÇÇÑ ¼øÂ÷ ¸®½ºÆ®
3.2 ¿¬°á ¸®½ºÆ®
3.3 ½ºÅðú Å¥
Á¦4Àå Æ®¸®
4.1 Æ®¸® ±¸Çö
4.2 ÀÌÁøÆ®¸® ¼øÇà
4.3 Ž»öÆ®¸®
4.4 AVLÆ®¸®
Á¦5Àå ±×·¡ÇÁ
5.1 ±×·¡ÇÁÀÇ À¯Çü
5.2 ¿ë¾î ¼³¸í
5.3 ±×·¡ÇÁÀÇ ±¸Çö
5.4 ±×·¡ÇÁÀÇ ¼øÇà
Á¦6Àå Á¤·Ä°ú Ž»ö
6.1 ³»ºÎÁ¤·Ä
6.2 ¿ÜºÎÁ¤·Ä
6.3 Ž»ö
Á¦7Àå ¸Þ¸ð¸® ÇÒ´ç°ú ȸ¼ö
7.1 ¸Þ¸ð¸® ¼öÁý¹æ¹ý
7.2 ¸Þ¸ð¸® ÇÒ´ç
7.3 ¸Þ¸ð¸® À¶ÇÕ
7.4 ÆäÀÌÁö ±³È¯¹æ¹ý
Á¦8Àå ÆÄ ÀÏ
8.1 ÆÄÀÏÀÇ ¼³°è
8.2 ÆÄÀÏ Á¶Á÷
8.3 À妽º ¼øÂ÷ÆÄÀÏ
8.4 À妽º ÆÄÀÏ
8.5 ´ÙÁß ¸µ ÆÄÀÏ
ºÎ·Ï ÀÚ¹Ù ÇÁ·Î±×·¡¹Ö¾ð¾î
1. ¼ö½Ä
2. Á¦¾î¹®
3. Ŭ·¡½º¿Í °´Ã¼
4. ÀÚ·áÇü
5. ½Çüº¯¼ö
6. °´Ã¼»ý¼º
7. ¸Þ¼Òµå
8. »ý¼ºÀÚ
9. ¸Å°³º¯¼ö Àü´Þ
10. package
11. interface
12. ÀÚ·áÇü º¯È¯
13. Exception
14. ÀÔÃâ·Â Ŭ·¡½º |
|
|
|