{"id":28086,"date":"2022-03-16T17:24:26","date_gmt":"2022-03-16T16:24:26","guid":{"rendered":"https:\/\/www.happycoders.eu\/?p=28086"},"modified":"2024-11-27T15:12:47","modified_gmt":"2024-11-27T14:12:47","slug":"stack-implementieren-linked-list","status":"publish","type":"post","link":"https:\/\/www.happycoders.eu\/de\/algorithmen\/stack-implementieren-linked-list\/","title":{"rendered":"Stack mit einer Linked List implementieren"},"content":{"rendered":"\n<p>Im vorangeganenen Teil haben wir einen <a href=\"\/de\/algorithmen\/stack-implementieren-array\/\">Stack mit einem Array implementiert<\/a>. In diesem Teil zeige ich dir, wie du einen Stack mit einer einfach verketteten Liste programmierst.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"der-algorithmus-schritt-fuer-schritt\">Der Algorithmus \u2013 Schritt f\u00fcr Schritt<\/h2>\n\n\n\n<p>Dies ist im Grunde ganz einfach: Eine <code>top<\/code>-Referenz zeigt auf einen Knoten, der das oberste Element des Stacks enth\u00e4lt sowie einen <code>next<\/code>-Zeiger auf den zweiten Knoten. Dieser wiederum enth\u00e4lt das zweite Element und einen Zeiger auf den dritten Knoten, usw. Der letzte Knoten enth\u00e4lt das unterste Element des Stacks; die <code>next<\/code>-Referenz des letzten Knotens ist <code>null<\/code>. <\/p>\n\n\n\n<p>Die folgende Grafik zeigt einen Beispiel-Stack, auf den die Elemente \"apple\", \"orange\" und \"pear\" (in dieser Reihenfolge) gepusht wurden:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full_800\"><img decoding=\"async\" width=\"800\" height=\"86\" src=\"https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-800x86.png\" alt=\"Stack mit einer verketteten Liste implementieren\n\" class=\"wp-image-28296\" srcset=\"https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-800x86.png 800w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-224x24.png 224w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-336x36.png 336w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-504x54.png 504w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-672x72.png 672w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-400x43.png 400w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-600x65.png 600w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-944x101.png 944w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-1200x129.png 1200w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list.png 1600w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption>Stack mit einer verketteten Liste implementieren<br><\/figcaption><\/figure><\/div>\n\n\n\n<p>Doch wie kommen wir dorthin?<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"enqueue-algorithmus\">Enqueue-Algorithmus<\/h3>\n\n\n\n<p>Beginnen wir mit einem leeren Stack. Die <code>top<\/code>-Referenz ist zun\u00e4chst <code>null<\/code>:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full_800\"><img decoding=\"async\" width=\"800\" height=\"86\" src=\"https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-step-0-800x86.png\" alt=\"Stack mit verketteter Liste: leerer Stack\" class=\"wp-image-28292\" srcset=\"https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-step-0-800x86.png 800w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-step-0-224x24.png 224w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-step-0-336x36.png 336w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-step-0-504x54.png 504w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-step-0-672x72.png 672w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-step-0-400x43.png 400w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-step-0-600x65.png 600w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-step-0-944x101.png 944w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-step-0-1200x129.png 1200w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-step-0.png 1600w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption>Stack mit verketteter Liste: leerer Stack<\/figcaption><\/figure><\/div>\n\n\n\n<p>Um das erste Element auf den Stack zu pushen, wrappen wir dieses in einen neuen Knoten und lassen <code>top<\/code> auf diesen Knoten zeigen:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full_800\"><img decoding=\"async\" width=\"800\" height=\"86\" src=\"https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-step-1-800x86.png\" alt=\"Stack mit verketteter Liste: ein Element\" class=\"wp-image-28298\" srcset=\"https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-step-1-800x86.png 800w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-step-1-224x24.png 224w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-step-1-336x36.png 336w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-step-1-504x54.png 504w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-step-1-672x72.png 672w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-step-1-400x43.png 400w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-step-1-600x65.png 600w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-step-1-944x101.png 944w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-step-1-1200x129.png 1200w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-step-1.png 1600w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption>Stack mit verketteter Liste: ein Element<\/figcaption><\/figure><\/div>\n\n\n\n<p>Jedes weitere Element f\u00fcgen wir zwischen <code>top<\/code> und den ersten Knoten ein. Dazu brauchen wir drei Schritte:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Wir legen einen neuen Knoten an und wrappen damit das einzuf\u00fcgende Element.<\/li><li>Wir lassen die <code>next<\/code>-Referenz des neuen Knotens auf denselben Knoten zeigen wie <code>top<\/code>.<\/li><li>Wir lassen <code>top<\/code> auf den neuen Knoten zeigen.<\/li><\/ol>\n\n\n\n<p>Die folgende Grafik zeigt die drei Einf\u00fcge-Schritte:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full_800\"><img decoding=\"async\" width=\"800\" height=\"399\" src=\"https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-insert-800x399.png\" alt=\"Stack mit verketteter Liste: Element einf\u00fcgen\" class=\"wp-image-28303\" srcset=\"https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-insert-800x399.png 800w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-insert-224x112.png 224w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-insert-336x168.png 336w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-insert-504x251.png 504w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-insert-672x335.png 672w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-insert-400x200.png 400w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-insert-600x299.png 600w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-insert-944x471.png 944w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-insert-1200x599.png 1200w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/implement-stack-using-linked-list-insert.png 1600w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption>Stack mit verketteter Liste: Element einf\u00fcgen<\/figcaption><\/figure><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"dequeue-algorithmus\">Dequeue-Algorithmus<\/h3>\n\n\n\n<p>Um ein Element mit <code>pop()<\/code> wieder zu entnehmen, gehen wir wie folgt vor:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Wir merken uns das Element des Knotens, auf das <code>top<\/code> zeigt (im Beispiel \"orange\").<\/li><li>Wir \u00e4ndern die <code>top<\/code>-Referenz auf denjenigen Knoten auf den <code>top.next<\/code> zeigt.<\/li><li>Wir geben das in Schritt 1 gemerkte Element zur\u00fcck.<\/li><li>In einer Sprache mit Garbage Collector (z. B. Java) sorgt dieser dann f\u00fcr das L\u00f6schen des nicht mehr referenzierten Knotens. In Sprachen ohne Garbage Collector (z. B. C++) m\u00fcssen wir das selbst tun.<\/li><\/ol>\n\n\n\n<p>Die folgende Grafik zeigt die vier Schritte:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full_800\"><img decoding=\"async\" width=\"800\" height=\"563\" src=\"https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-stack-using-linked-list-pop.2-800x563.png\" alt=\"Stack mit verketteter Liste: Element entnehmen\" class=\"wp-image-30201\" srcset=\"https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-stack-using-linked-list-pop.2-800x563.png 800w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-stack-using-linked-list-pop.2-224x158.png 224w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-stack-using-linked-list-pop.2-336x236.png 336w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-stack-using-linked-list-pop.2-504x354.png 504w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-stack-using-linked-list-pop.2-672x473.png 672w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-stack-using-linked-list-pop.2-400x281.png 400w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-stack-using-linked-list-pop.2-600x422.png 600w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-stack-using-linked-list-pop.2-944x664.png 944w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-stack-using-linked-list-pop.2-1200x844.png 1200w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-stack-using-linked-list-pop.2.png 1600w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption>Stack mit verketteter Liste: Element entnehmen<\/figcaption><\/figure><\/div>\n\n\n\n<p>Der gestrichelte Rahmen um den \"orange\"-Knoten im zweiten und dritten Schritt soll andeuten, dass dieser Listenknoten nicht mehr referenziert wird.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"quellcode-fuer-den-stack-mit-einer-linked-list\">Quellcode f\u00fcr den Stack mit einer Linked List<\/h2>\n\n\n\n<p>Der folgende Quellcode zeigt die Implementierung des Stacks mit einer verketteten Liste (Klasse <a rel=\"noopener\" href=\"https:\/\/github.com\/SvenWoltmann\/java-collections-guide\/blob\/main\/src\/main\/java\/eu\/happycoders\/collections\/stack\/LinkedListStack.java\" target=\"_blank\">LinkedListStack<\/a> im GitHub-Repo). Die Klasse f\u00fcr die Knoten, <code>Node<\/code>, findest du am Ende des Quellcodes als statische innere Klasse.<\/p>\n\n\n<pre class=\"wp-block-code\" aria-describedby=\"shcb-language-2\" data-shcb-language-name=\"Java\" data-shcb-language-slug=\"java\"><span><code class=\"hljs language-java\"><span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-class\"><span class=\"hljs-keyword\">class<\/span> <span class=\"hljs-title\">LinkedListStack<\/span>&lt;<span class=\"hljs-title\">E<\/span>&gt; <span class=\"hljs-keyword\">implements<\/span> <span class=\"hljs-title\">Stack<\/span>&lt;<span class=\"hljs-title\">E<\/span>&gt; <\/span>{\n\n  <span class=\"hljs-keyword\">private<\/span> Node&lt;E&gt; top = <span class=\"hljs-keyword\">null<\/span>;\n\n  <span class=\"hljs-meta\">@Override<\/span>\n  <span class=\"hljs-function\"><span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-keyword\">void<\/span> <span class=\"hljs-title\">push<\/span><span class=\"hljs-params\">(E element)<\/span> <\/span>{\n    top = <span class=\"hljs-keyword\">new<\/span> Node&lt;&gt;(element, top);\n  }\n\n  <span class=\"hljs-meta\">@Override<\/span>\n  <span class=\"hljs-function\"><span class=\"hljs-keyword\">public<\/span> E <span class=\"hljs-title\">pop<\/span><span class=\"hljs-params\">()<\/span> <\/span>{\n    <span class=\"hljs-keyword\">if<\/span> (isEmpty()) {\n      <span class=\"hljs-keyword\">throw<\/span> <span class=\"hljs-keyword\">new<\/span> NoSuchElementException();\n    }\n    E element = top.element;\n    top = top.next;\n    <span class=\"hljs-keyword\">return<\/span> element;\n  }\n\n  <span class=\"hljs-meta\">@Override<\/span>\n  <span class=\"hljs-function\"><span class=\"hljs-keyword\">public<\/span> E <span class=\"hljs-title\">peek<\/span><span class=\"hljs-params\">()<\/span> <\/span>{\n    <span class=\"hljs-keyword\">if<\/span> (isEmpty()) {\n      <span class=\"hljs-keyword\">throw<\/span> <span class=\"hljs-keyword\">new<\/span> NoSuchElementException();\n    }\n    <span class=\"hljs-keyword\">return<\/span> top.element;\n  }\n\n\n  <span class=\"hljs-meta\">@Override<\/span>\n  <span class=\"hljs-function\"><span class=\"hljs-keyword\">public<\/span> <span class=\"hljs-keyword\">boolean<\/span> <span class=\"hljs-title\">isEmpty<\/span><span class=\"hljs-params\">()<\/span> <\/span>{\n    <span class=\"hljs-keyword\">return<\/span> top == <span class=\"hljs-keyword\">null<\/span>;\n  }\n\n  <span class=\"hljs-keyword\">private<\/span> <span class=\"hljs-keyword\">static<\/span> <span class=\"hljs-class\"><span class=\"hljs-keyword\">class<\/span> <span class=\"hljs-title\">Node<\/span>&lt;<span class=\"hljs-title\">E<\/span>&gt; <\/span>{\n    <span class=\"hljs-keyword\">final<\/span> E element;\n    <span class=\"hljs-keyword\">final<\/span> Node&lt;E&gt; next;\n\n    Node(E element, Node&lt;E&gt; next) {\n      <span class=\"hljs-keyword\">this<\/span>.element = element;\n      <span class=\"hljs-keyword\">this<\/span>.next = next;\n    }\n  }\n}<\/code><\/span><small class=\"shcb-language\" id=\"shcb-language-2\"><span class=\"shcb-language__label\">Code-Sprache:<\/span> <span class=\"shcb-language__name\">Java<\/span> <span class=\"shcb-language__paren\">(<\/span><span class=\"shcb-language__slug\">java<\/span><span class=\"shcb-language__paren\">)<\/span><\/small><\/pre>\n\n\n<p>Wie die <code>LinkedListStack<\/code>-Klasse eingesetzt wird, kannst du dir beispielhaft im Demo-Programm <a href=\"https:\/\/github.com\/SvenWoltmann\/java-collections-guide\/blob\/main\/src\/main\/java\/eu\/happycoders\/demos\/stack\/StackDemo.java\" target=\"_blank\" rel=\"noopener\">StackDemo<\/a> ansehen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"vor-und-nachteile-der-implementierung-des-stacks-mit-einer-linked-list\">Vor- und Nachteile der Implementierung des Stacks mit einer Linked List<\/h2>\n\n\n\n<p>Die Implementierung mit einer verketteten Liste hat gegen\u00fcber der Array-Variante den Vorteil, dass sie keinen Speicherplatz durch unbelegte Array-Felder verschwendet und dass sie keine Gr\u00f6\u00dfen\u00e4nderung des Arrays durch Kopieren des gesamten Arrays erfordert.<\/p>\n\n\n\n<p>Die Knoten-Objekte wiederum belegen mehr Speicherplatz als ein einzelnes Feld in einem Array. Das Anlegen von Knoten-Objekten kostet mehr Zeit als das Setzen eines Array-Feldes. Eine verkettete Liste verursacht au\u00dferdem mehr Arbeit f\u00fcr den Garbage Collector, da dieser bei jedem Durchgang der kompletten Kette folgen muss.<\/p>\n\n\n\n<p>In der Regel \u00fcberwiegen die Vorteile der Array-Implementierung, so dass diese h\u00e4ufiger anzutreffen ist.  <\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"ausblick\">Ausblick<\/h2>\n\n\n\n<p>Im n\u00e4chsten Teil des Tutorials zeige ich dir, wie man einen <a href=\"\/de\/algorithmen\/stack-implementieren-queue\/\">Stack mit einer Queue implementieren<\/a> kann.<\/p>\n\n\n\n<p>Wenn du noch Fragen hast, stelle sie gerne \u00fcber die Kommentar-Funktion. M\u00f6chtest du \u00fcber neue Tutorials und Artikel informiert werden? Dann <a href=\"#\" data-formkit-toggle=\"d8ee997126\">klicke hier<\/a>, um dich f\u00fcr den HappyCoders.eu-Newsletter anzumelden.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Wie implementiert man einen Stack mit einer verketteten Liste (\"linked list\")? Was sind die Vor- und Nachteile? Tutorial mit Grafiken und Java-Code-Beispielen.<\/p>\n","protected":false},"author":1,"featured_media":28553,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_seopress_robots_primary_cat":"none","_seopress_titles_title":"","_seopress_titles_desc":"Wie implementiert man einen Stack mit einer verketteten Liste (linked list)? Was sind die Vor + Nachteile? Tutorial mit Grafiken + Java-Code-Beispielen","_seopress_robots_index":"","_uag_custom_page_level_css":"","_metis_text_type":"standard","_metis_text_length":4414,"_post_count":0,"footnotes":""},"categories":[127],"tags":[191],"class_list":["post-28086","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-algorithmen","tag-datenstrukturen-stack"],"uagb_featured_image_src":{"full":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/bullion-932218.jpg",1770,996,false],"thumbnail":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/bullion-932218.jpg",150,84,false],"medium":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/bullion-932218.jpg",300,169,false],"medium_large":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/bullion-932218.jpg",768,432,false],"large":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/bullion-932218.jpg",1024,576,false],"feature_thumb_224":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/bullion-932218-224x126.jpg",224,126,true],"feature_thumb_336":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/bullion-932218-336x189.jpg",336,189,true],"feature_thumb_504":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/bullion-932218-504x284.jpg",504,284,true],"feature_thumb_672":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/bullion-932218-672x378.jpg",672,378,true],"half_400":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/bullion-932218-400x225.jpg",400,225,true],"half_600":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/bullion-932218-600x338.jpg",600,338,true],"full_800":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/bullion-932218-800x450.jpg",800,450,true],"full_944":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/bullion-932218-944x531.jpg",944,531,true],"full_1200":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/bullion-932218-1200x675.jpg",1200,675,true],"wide_1180":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/bullion-932218-1180x490.jpg",1180,490,true],"wide_1770":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/bullion-932218-1770x735.jpg",1770,735,true],"1536x1536":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/bullion-932218.jpg",1536,864,false],"2048x2048":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/02\/bullion-932218.jpg",1770,996,false]},"uagb_author_info":{"display_name":"Sven Woltmann","author_link":"https:\/\/www.happycoders.eu\/de\/author\/sven\/"},"uagb_comment_info":0,"uagb_excerpt":"Wie implementiert man einen Stack mit einer verketteten Liste (\"linked list\")? Was sind die Vor- und Nachteile? Tutorial mit Grafiken und Java-Code-Beispielen.","public_identification_id":"5bbfe22f1f564fe3a974ba16f6e7cc71","private_identification_id":"45d0297c50234e1cb931f9071264d58f","_links":{"self":[{"href":"https:\/\/www.happycoders.eu\/de\/wp-json\/wp\/v2\/posts\/28086","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.happycoders.eu\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.happycoders.eu\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.happycoders.eu\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.happycoders.eu\/de\/wp-json\/wp\/v2\/comments?post=28086"}],"version-history":[{"count":10,"href":"https:\/\/www.happycoders.eu\/de\/wp-json\/wp\/v2\/posts\/28086\/revisions"}],"predecessor-version":[{"id":30202,"href":"https:\/\/www.happycoders.eu\/de\/wp-json\/wp\/v2\/posts\/28086\/revisions\/30202"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.happycoders.eu\/de\/wp-json\/wp\/v2\/media\/28553"}],"wp:attachment":[{"href":"https:\/\/www.happycoders.eu\/de\/wp-json\/wp\/v2\/media?parent=28086"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.happycoders.eu\/de\/wp-json\/wp\/v2\/categories?post=28086"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.happycoders.eu\/de\/wp-json\/wp\/v2\/tags?post=28086"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}