{"id":1320,"date":"2024-05-17T13:02:02","date_gmt":"2024-05-17T04:02:02","guid":{"rendered":"https:\/\/skanto.co.kr\/?p=1320"},"modified":"2024-05-17T15:01:58","modified_gmt":"2024-05-17T06:01:58","slug":"%ec%95%8c%ec%93%b8%ec%bd%94%ea%b8%b0-%ec%95%8c%ec%95%84%eb%91%90%eb%a9%b4-%ec%93%b8%eb%8d%b0%ec%9e%88%eb%8a%94-%ec%bd%94%eb%94%a9%ea%b8%b0%ec%88%a0linkedlist","status":"publish","type":"post","link":"https:\/\/skanto.co.kr\/?p=1320","title":{"rendered":"\uc54c\uc4f8\ucf54\uae30: \uc54c\uc544\ub450\uba74 \uc4f8\ub370\uc788\ub294 \ucf54\ub529\uae30\uc220 &#8211; Deque"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">\uac1c\ubc1c\uc744 \ud558\ub2e4\ubcf4\uba74 \uc5b4\ub5a4 \uc790\ub8cc\uad6c\uc870\ub97c \uc0ac\uc6a9\ud558\ub290\ub0d0\uc5d0 \ub530\ub77c \uc131\ub2a5\uc774 \ud06c\uac8c \ub2ec\ub9ac\uc9c0\ub294 \uacbd\uc6b0\uac00 \uc788\ub2e4. \uadf8\ub9ac\uace0 \ub290\ub9b0 \uc131\ub2a5\uc73c\ub85c \uc778\ud574 \uc0ac\ud6c4\uc5d0 \uc6d0\uc778\uc744 \ubd84\uc11d\ud558\uace0 \ud574\uacb0\ud558\ub824\uba74 \uc0dd\uac01\ubcf4\ub2e4 \ub9ce\uc740 \uc2dc\uac04\uacfc \ube44\uc6a9\uc774 \uc18c\ubaa8\ub41c\ub2e4\ub294 \uac83\uc740 \ub300\ubd80\ubd84\uc758 \uac1c\ubc1c\uc790\ub4e4\uc740 \uc54c\uace0 \uc788\uc744 \uac83\uc774\ub2e4. \uc774\ub97c \ubbf8\uc5f0\uc5d0 \ubc29\uc9c0\ud560 \uc218 \uc788\ub294 \uac00\uc7a5 \uc26c\uc6b4 \ubc29\ubc95\uc740 \uac1c\ubc1c \uacfc\uc815\uc5d0\uc11c \uc5b4\ud50c\ub9ac\ucf00\uc774\uc158\uc758 \uc131\uaca9\uacfc \uad6c\uc870\ub97c \ucda9\ubd84\ud788 \uc774\ud574\ud558\uace0 \uadf8 \uc0c1\ud669\uacfc \uad81\ud569\uc774 \uac00\uc7a5 \uc798 \ub9de\ub294 \uc790\ub8cc\uad6c\uc870\ub97c \uc120\ud0dd\ud558\ub294 \uac83\uc774\ub77c \ud560 \uc218 \uc788\ub2e4. \uc774\ub7f0 \uc0dd\uac01\uae4c\uc9c0 \ub2ff\uc73c\uba74 \uba85\uc7a5\uc758 \ubaa9\uc218\uac00 \uc5f0\uc7a5\uc744 \uc790\uc720\uc790\uc7ac\ub85c \ub2e4\ub8e8\ub4ef \uc790\ub8cc\uad6c\uc870\ub97c \uc801\uc808\ud558\uac8c \uc120\ud0dd, \uc801\uc6a9\ud558\ub294 \ub2a5\ub825\uc740 \uac1c\ubc1c\uc790\ub4e4\uc5d0\uac8c\ub294 \ud544\uc218 \uc694\uac74\uc774\ub77c \ud560 \uc218 \uc788\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\uc77c\ubc18\uc801\uc73c\ub85c Java\uc5d0\uc11c List\ud615\ud0dc\uc758 \uc790\ub8cc\uad6c\uc870\ub97c \uc120\ud0dd\ud560 \ub54c \uac1c\ubc1c\uc790\ub4e4\uc740 ArrayList\ub97c \ub9ce\uc774 \ud65c\uc6a9\ud55c\ub2e4. ArrayList\ub294 Read Operation\uc744 index\ub85c \uc811\uadfc\ud558\ubbc0\ub85c O(1)\uc758 \ud6cc\ub96d\ud55c \uc131\ub2a5\uc744 \ubcf4\uc5ec\uc900\ub2e4. \ud558\uc9c0\ub9cc Element\ub97c \ucd94\uac00\ud558\uac70\ub098 \uc0ad\uc81c\ud560 \ub54c\ub294 \uba54\ubaa8\ub9ac \ucd94\uac00 \ud655\ubcf4\ub77c\ub4e0\uac00 \ubc30\uc5f4 \uc774\ub3d9\uacfc \uac19\uc740 \ub0b4\ubd80\uc801\uc778 Operation\uc73c\ub85c \uc778\ud574 \ube44\uad50\uc801 \ub192\uc740 \ube44\uc6a9\uc774 \uc694\uad6c\ub41c\ub2e4. \ud558\uc9c0\ub9cc \uac19\uc740 List\uc774\uba74\uc11c \ubc18\ub300\uc758 \uc815\uc810\uc5d0 \uc788\ub294 \uc790\ub8cc\uad6c\uc870\uac00 LinkedList\uc774\ub2e4. LinkedList\ub294 \ub2e4\ub4e4 \uc544\ub294 \uac83\ucc98\ub7fc Element\uac04\uc758 \uc120\/\ud6c4\uad00\uacc4\ub97c Pointer\ub97c \uc774\uc6a9\ud558\uc5ec \uc5f0\uacb0\ud558\ubbc0\ub85c Element\uc758 \ucd94\uac00\ub098 \uc0ad\uc81c\uac00 Read Operation\ubcf4\ub2e4 \uc800\ub834\ud558\uace0 \ud6a8\uc728\uc801\uc778 \uc790\ub8cc\uad6c\uc870\uc774\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\uc774\uc640 \uac19\uc740 List \uc790\ub8cc\uad6c\uc870\uc758 \ud2b9\uc131\uc744 \uc774\ud574\ud558\uba74 \uc544\ub798\uc640 \uac19\uc740 \uc2dc\ub098\ub9ac\uc624\uc5d0\uc11c\ub294 ArrayList\ubcf4\ub2e4 LinkedList\ub97c \uc120\ud0dd\ud558\ub294 \uac83\uc774 \ub354 \ub192\uc740 \uc131\ub2a5\uc744 \ubcf4\uc7a5\ud558\ub294 \uac1c\ubc1c\uc774 \ub420 \uc218 \uc788\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\uae38\ucc3e\uae30 \uc54c\uace0\ub9ac\uc998\uc73c\ub85c Dijkstra Algorithm\uc774 \ub9ce\uc774 \ud65c\uc6a9\ub41c\ub2e4. \uc774 \uc54c\uace0\ub9ac\uc998\uc740 \ucd9c\ubc1c\uc9c0\ub85c\ubd80\ud130 \ubc29\ubb38\ud558\ub294 \uac01 \ub178\ub4dc\uae4c\uc9c0\uc758 \ucd5c\ub2e8\uac70\ub9ac \uacbd\ub85c\ub97c \uc0dd\uc131\ud558\ubbc0\ub85c \uc544\ub798 \uadf8\ub9bc\uacfc \uac19\uc774 \uac01 \ub178\ub4dc\ub97c \ubc29\ubb38\ud560 \ub54c \ucd5c\ub2e8\uac70\ub9ac\uc5d0 \ud574\ub2f9\ud558\ub294 \ubc14\ub85c \uc55e \ub178\ub4dc\uc758 Pointer\ub97c Linked List \ucc98\ub7fc \uc800\uc7a5\ud558\ub294 \ud615\ud0dc\ub85c \uad6c\ud604\ud560 \uc218 \uc788\ub2e4(a, b, d). \uc54c\uace0\ub9ac\uc998\uc774 \ucd9c\ubc1c\uc9c0(A)\uc640 \ubaa9\uc801\uc9c0(E) \uc0ac\uc774\uc5d0 \ucd5c\ub2e8\uacbd\ub85c\ub97c \ucc3e\uc558\ub2e4\uba74 \ubaa9\uc801\uc9c0\uc5d0\uc11c\ubd80\ud130 \uc5ed\uc73c\ub85c \ucd9c\ubc1c\uc9c0\uae4c\uc9c0 \ub418\uc9da\uc5b4 \uac00\uba74\uc11c \ucd5c\uc885 \uacbd\ub85c(A-B-D-E)\ub97c \uad6c\uc131\ud574\uc57c \ud55c\ub2e4.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"564\" height=\"284\" src=\"https:\/\/skanto.co.kr\/wp-content\/uploads\/2024\/05\/graph.png\" alt=\"\" class=\"wp-image-1322\" style=\"width:792px;height:auto\" srcset=\"https:\/\/skanto.co.kr\/wp-content\/uploads\/2024\/05\/graph.png 564w, https:\/\/skanto.co.kr\/wp-content\/uploads\/2024\/05\/graph-300x151.png 300w, https:\/\/skanto.co.kr\/wp-content\/uploads\/2024\/05\/graph-536x270.png 536w\" sizes=\"auto, (max-width: 564px) 100vw, 564px\" \/><\/figure>\n<\/div>\n\n\n<p class=\"wp-block-paragraph\">\uc774\ub54c ArrayList\ub97c \ud65c\uc6a9\ud560 \uacbd\uc6b0 \ucd5c\uc885 \uacbd\ub85c\ub97c \uad6c\uc131\ud558\ub294 \ubc29\ubc95\uc740 \uc544\ub9c8\ub3c4 \uc544\ub798\uc758 \ucf54\ub4dc\uc640 \uac19\uc774 \ub420 \uac83\uc774\ub2e4. \ucc38\uace0\ub85c, Visit \ud074\ub798\uc2a4\ub294 \uc54c\uace0\ub9ac\uc998\uc774 \ub178\ub4dc\ub97c \ubc29\ubb38\ud560 \ub54c \uac01 \ub178\ub4dc\uae4c\uc9c0\uc758 \ucd5c\ub2e8\uac70\ub9ac \uac12\uc744 \uc720\uc9c0\ud558\uae30 \uc704\ud55c Context \uac1d\uccb4\ub85c \ubcf4\uba74 \ub41c\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>class Visit {\n    private final Node node;\n    private Visit previous;\n\n    ....\n\n    public List&lt;Node&gt; hops() {\n        List&lt;Node&gt; nodes = new ArrayList&lt;&gt;() {{ add(node); }};\n        for (Visit prev = previous; prev != null; prev = prev.previous) {\n            nodes.add(prev.node);\n        }\n        Collections.reverse(nodes);\n        return nodes;\n    }\n\n    ....\n\n}<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uc774 \uacbd\uc6b0 hops()\uba54\uc18c\ub4dc\ub294 \ubaa9\uc801\uc9c0\uc5d0\uc11c\ubd80\ud130 \uc5ed\uc73c\ub85c \ucd9c\ubc1c\uc9c0\uae4c\uc9c0(E-D-B-A) \ub418\uc9da\uc5b4 \uac00\uba74\uc11c \uac01 \ubc29\ubb38\uc9c0(Visit)\uc758 \ub178\ub4dc\uc815\ubcf4\ub97c List \ud615\ud0dc(A-B-D-E)\ub85c \ubc18\ud658\ud558\ub294 \uae30\ub2a5\uc744 \uc218\ud589\ud55c\ub2e4. \ubc18\ud658\ub418\ub294 \uacb0\uacfc\uac00 \uae30\ub300\ud588\ub358 \uac12\uc73c\ub85c \ud655\uc778\uc774 \ub418\ub354\ub77c\ub3c4 \ucd9c\ubc1c\uc9c0\uc640 \ubaa9\uc801\uc9c0 \uc0ac\uc774\uc5d0 Node\uc758 \uac1c\uc218\uac00 \uc0c1\ub2f9\ud788 \ub9ce\ub2e4\uba74 \uc131\ub2a5\uc744 \uace0\ub824\ud558\uc9c0 \uc54a\uc744 \uc218 \uc5c6\ub2e4. \uc5ec\uae30\uc11c \ud65c\uc6a9\ud55c ArrayList\ub294 \uc55e\uc11c \uc124\uba85\ud55c \uac83\ucc98\ub7fc Element\ub97c \ucd94\uac00(add)\ud560 \ub54c \ube44\uc6a9\uc774 \uc218\ubc18\ub418\ub294 \uc790\ub8cc\uad6c\uc870\uc774\ub2e4. \ub610\ud55c \uc774\ud6c4 \ucf54\ub4dc\uc5d0\uc11c \uc21c\uc11c\ub97c \ub4a4\uc9da(reverse)\ub294 \uc5f0\uc0b0\uc774 \ucd94\uac00\ub85c \ub4e4\uc5b4\uac00\ubbc0\ub85c \ud6a8\uc728\uc801\uc774\uc9c0 \ubabb\ud558\ub2e4. \ub530\ub77c\uc11c, \uc774\ub7f0 \uc774\uc288\ub97c \ud574\uacb0\ud560 \uc218 \uc788\ub294 \uc790\ub8cc\uad6c\uc870\ub97c \uc120\ud0dd\ud55c\ub2e4\uba74 \uc131\ub2a5\uce21\uba74\uc5d0\uc11c \uc774\ub4dd\uc744 \ubcf4\uac8c \ub420 \uac83\uc774\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">ArrayList\ub300\uc2e0 LinkedList \ub610\ub294 ArrayDeque\ub97c \uc0ac\uc6a9\ud558\uba74 \uc774\ub7f0 \uc774\uc288\ub97c \ud574\uacb0\ud560 \uc218 \uc788\ub2e4. \ud558\uc9c0\ub9cc \uc5ec\uae30\uc11c\ub294 List\ud615\ud0dc\ub85c \uacb0\uacfc\ub97c \ubc18\ud658\ud558\ubbc0\ub85c LinkedList\ub97c \ud65c\uc6a9\ud558\uc5ec hops() \uba54\uc18c\ub4dc\ub97c \uc544\ub798\uc640 \uac19\uc774 \ubcc0\uacbd\ud558\uba74 \uc131\ub2a5 \ud5a5\uc0c1\uc744 \uaf80\ud560 \uc218 \uc788\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>....\n\npublic List&lt;Node&gt; hops() {\n    LinkedList&lt;Node&gt; nodes = new LinkedList&lt;&gt;() {{ add(node); }};\n    for (Visit prev = previous; prev != null; prev = prev.previous) {\n        nodes.addFirst(prev.node);\n    }\n    return nodes;\n}\n\n....<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uc704 \ucf54\ub4dc\ub3c4 \uc774\uc804 \ucf54\ub4dc\uc640 \uac19\uc774 \ucd9c\ubc1c\uc9c0\ub97c \ub9cc\ub0a0 \ub54c\uae4c\uc9c0 Visit\uc744 \uc5ed\uc21c\uc73c\ub85c \ub418\uc9da\uc5b4 \uac00\uba70 Visit\uc758 \ub178\ub4dc\ub97c List\uc5d0 \ucd94\uac00\ud558\ub294 \ub85c\uc9c1\uc744 \ubcf4\uc5ec\uc900\ub2e4. \ud558\uc9c0\ub9cc \uc5ec\uae30\uc11c\ub294 List\uc758 \ub9c8\uc9c0\ub9c9 \ubd80\ubd84\uc5d0 add()\ud558\ub294 \uac83\uc774 \uc544\ub2c8\ub77c addFirst()\uba54\uc18c\ub4dc\ub85c List\uc758 \ub9e8 \uc55e\ubd80\ubd84\uc5d0 \ucd94\uac00\ud574 \ub098\uac00\ub294 \ubc29\uc2dd\uc774\ub2e4. \uc774\ub807\uac8c \ud558\uba74 \uc790\uc5f0\uc2a4\ub7fd\uac8c \uc5ed\uc21c\uc758 \ucd5c\uc885 \ub9ac\uc2a4\ud2b8\ub97c \uc5bb\uc744 \uc218 \uc788\ub294 \uad6c\uc870\uac00 \ub41c\ub2e4. \ub610\ud55c LinkedList\uc758 \ud2b9\uc131\uc0c1 \ub9e8 \uc55e\uc5d0 \ucd94\uac00\ud574 \ub098\uac00\ub354\ub77c\ub3c4 \uc131\ub2a5\uc758 \uc800\ud558\ub294 \ubc1c\uc0dd\ud558\uc9c0 \uc54a\ub294\ub2e4. \ub530\ub77c\uc11c ArrayList\ub85c \uc811\uadfc\ud560 \uacbd\uc6b0 \ube44\ud6a8\uc728\uc801\uc774\uc5c8\ub358 \ubd80\ubd84\ub4e4\uc744 \ud55c\ubc88\uc5d0 \ubaa8\ub450 \ud574\uacb0\ud558\ub294 \uc148\uc774 \ub41c\ub2e4.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\ucc38\uace0\ub85c, LinkedList\ub294 \ub0b4\ubd80\uc801\uc73c\ub85c Pointer\ub97c \uc774\uc6a9\ud558\uc5ec \uc55e\/\ub4a4 \uc5f0\uacb0\uc744 \uc720\uc9c0\ud574\uc57c \ud558\ubbc0\ub85c ArrayList\ubcf4\ub2e4 \uba54\ubaa8\ub9ac \uc0ac\uc6a9\ub7c9\uc774 \uc57d\uac04 \ub298\uae34 \ud558\uc9c0\ub9cc Element \ucd94\uac00\uc640 \uc21c\ucc28\uc811\uadfc(sequential access)\uc5d0\uc11c \ube60\ub978 \uc131\ub2a5\uc774 \ud544\uc694\ud55c \uacbd\uc6b0\ub77c\uba74 Deque\ud615\ud0dc\uc758 \uc790\ub8cc\uad6c\uc870\uac00 \ub354 \ud6a8\uc728\uc801\uc774\ub77c \ud560 \uc218 \uc788\ub2e4.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\uac1c\ubc1c\uc744 \ud558\ub2e4\ubcf4\uba74 \uc5b4\ub5a4 \uc790\ub8cc\uad6c\uc870\ub97c \uc0ac\uc6a9\ud558\ub290\ub0d0\uc5d0 \ub530\ub77c \uc131\ub2a5\uc774 \ud06c\uac8c \ub2ec\ub9ac\uc9c0\ub294 \uacbd\uc6b0\uac00 \uc788\ub2e4. \uadf8\ub9ac\uace0 \ub290\ub9b0 \uc131\ub2a5\uc73c\ub85c \uc778\ud574 \uc0ac\ud6c4\uc5d0 \uc6d0\uc778\uc744 \ubd84\uc11d\ud558\uace0 \ud574\uacb0\ud558\ub824\uba74 \uc0dd\uac01\ubcf4\ub2e4 \ub9ce\uc740 \uc2dc\uac04\uacfc \ube44\uc6a9\uc774 \uc18c\ubaa8\ub41c\ub2e4\ub294 \uac83\uc740 \ub300\ubd80\ubd84\uc758 \uac1c\ubc1c\uc790\ub4e4\uc740 \uc54c\uace0 \uc788\uc744 \uac83\uc774\ub2e4. \uc774\ub97c \ubbf8\uc5f0\uc5d0 \ubc29\uc9c0\ud560 \uc218 \uc788\ub294 \uac00\uc7a5 \uc26c\uc6b4 \ubc29\ubc95\uc740 \uac1c\ubc1c \uacfc\uc815\uc5d0\uc11c \uc5b4\ud50c\ub9ac\ucf00\uc774\uc158\uc758 \uc131\uaca9\uacfc \uad6c\uc870\ub97c \ucda9\ubd84\ud788 \uc774\ud574\ud558\uace0 \uadf8 \uc0c1\ud669\uacfc \uad81\ud569\uc774 \uac00\uc7a5 \uc798 \ub9de\ub294 \uc790\ub8cc\uad6c\uc870\ub97c \uc120\ud0dd\ud558\ub294 \uac83\uc774\ub77c \ud560 \uc218 \uc788\ub2e4. \uc774\ub7f0 \uc0dd\uac01\uae4c\uc9c0 \ub2ff\uc73c\uba74 \uba85\uc7a5\uc758 \ubaa9\uc218\uac00 \uc5f0\uc7a5\uc744 \uc790\uc720\uc790\uc7ac\ub85c \ub2e4\ub8e8\ub4ef \uc790\ub8cc\uad6c\uc870\ub97c \uc801\uc808\ud558\uac8c \uc120\ud0dd, \uc801\uc6a9\ud558\ub294 \ub2a5\ub825\uc740 \uac1c\ubc1c\uc790\ub4e4\uc5d0\uac8c\ub294 \ud544\uc218 \uc694\uac74\uc774\ub77c \ud560 \uc218 \uc788\ub2e4. \uc77c\ubc18\uc801\uc73c\ub85c Java\uc5d0\uc11c List\ud615\ud0dc\uc758 \uc790\ub8cc\uad6c\uc870\ub97c&#8230;<\/p>\n<p class=\"read-more\"><a class=\"btn btn-default\" href=\"https:\/\/skanto.co.kr\/?p=1320\"> Read More<span class=\"screen-reader-text\">  Read More<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[14],"tags":[145],"class_list":["post-1320","post","type-post","status-publish","format-standard","hentry","category-sw-development","tag-linkedlist"],"_links":{"self":[{"href":"https:\/\/skanto.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/1320","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/skanto.co.kr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/skanto.co.kr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/skanto.co.kr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/skanto.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1320"}],"version-history":[{"count":17,"href":"https:\/\/skanto.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/1320\/revisions"}],"predecessor-version":[{"id":1341,"href":"https:\/\/skanto.co.kr\/index.php?rest_route=\/wp\/v2\/posts\/1320\/revisions\/1341"}],"wp:attachment":[{"href":"https:\/\/skanto.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1320"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/skanto.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1320"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/skanto.co.kr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1320"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}