{"id":29792,"date":"2022-05-16T17:21:00","date_gmt":"2022-05-16T15:21:00","guid":{"rendered":"https:\/\/www.happycoders.eu\/?p=29792"},"modified":"2024-11-27T15:12:06","modified_gmt":"2024-11-27T14:12:06","slug":"queue-implementieren-linked-list","status":"publish","type":"post","link":"https:\/\/www.happycoders.eu\/de\/algorithmen\/queue-implementieren-linked-list\/","title":{"rendered":"Queue mit einer Linked List implementieren"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Im letzten Teil dieser Tutorialserie habe ich dir gezeigt, <a href=\"\/de\/algorithmen\/queue-implementieren-stack\/\">wie man eine Queue mit Stacks implementiert<\/a>. In diesem Teil werden wir eine Queue mit einer verketteten Liste implementieren.<\/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 class=\"wp-block-paragraph\">Unsere Queue besteht aus zwei Referenzen auf Listenknoten: einer <code>head<\/code>- und einer <code>tail<\/code>-Referenz.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Die <code>head<\/code>-Referenz zeigt auf einen Listenknoten, der das vorderste Element der Queue enth\u00e4lt sowie einen <code>next<\/code>-Zeiger auf einen zweiten Listenknoten. Dieser wiederum enth\u00e4lt das zweite Element und einen Zeiger auf den dritten Listenknoten, usw. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Der letzte Knoten wird sowohl vom <code>next<\/code>-Zeiger des vorletzten Elements als auch vom <code>tail<\/code>-Zeiger referenziert. Er enth\u00e4lt das letzte Queue-Element, und dessen <code>next<\/code>-Referenz zeigt auf <code>null<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Die folgende Grafik zeigt eine Beispiel-Queue, in die die Elemente \"banana\", \"cherry\" und \"grape\" (in dieser Reihenfolge) eingef\u00fcgt wurden:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full_800\"><img decoding=\"async\" width=\"800\" height=\"130\" src=\"https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-800x130.png\" alt=\"Queue mit einer verketteten Liste implementieren\" class=\"wp-image-29803\" srcset=\"https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-800x130.png 800w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-224x36.png 224w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-336x55.png 336w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-504x82.png 504w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-672x109.png 672w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-400x65.png 400w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-600x98.png 600w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-944x153.png 944w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-1200x195.png 1200w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list.png 1600w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption>Queue mit einer verketteten Liste implementieren<\/figcaption><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Wie gelangen wir diesen Zustand?<\/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 class=\"wp-block-paragraph\">Wir beginnen mit einer leeren Queue. Sowohl <code>head<\/code>- aus auch <code>tail<\/code>-Referenz sind <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=\"131\" src=\"https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-empty-queue-800x131.png\" alt=\"Queue mit verketteter Liste: leere Queue\" class=\"wp-image-29804\" srcset=\"https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-empty-queue-800x131.png 800w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-empty-queue-224x37.png 224w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-empty-queue-336x55.png 336w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-empty-queue-504x82.png 504w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-empty-queue-672x110.png 672w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-empty-queue-400x65.png 400w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-empty-queue-600x98.png 600w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-empty-queue-944x154.png 944w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-empty-queue-1200x196.png 1200w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-empty-queue.png 1590w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption>Queue mit verketteter Liste: leere Queue<\/figcaption><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Das erste Element f\u00fcgen wir in die Queue ein, indem wir es in einen Listenknoten wrappen und sowohl <code>head<\/code> als auch <code>tail<\/code> auf diesen Knoten zeigen lassen:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full_800\"><img decoding=\"async\" width=\"800\" height=\"130\" src=\"https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-enqueue-first-800x130.png\" alt=\"Queue mit verketteter Liste: ein Element\" class=\"wp-image-29805\" srcset=\"https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-enqueue-first-800x130.png 800w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-enqueue-first-224x36.png 224w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-enqueue-first-336x55.png 336w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-enqueue-first-504x82.png 504w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-enqueue-first-672x109.png 672w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-enqueue-first-400x65.png 400w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-enqueue-first-600x98.png 600w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-enqueue-first-944x153.png 944w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-enqueue-first-1200x195.png 1200w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-enqueue-first.png 1600w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption>Queue mit verketteter Liste: ein Element<\/figcaption><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Weitere Elemente f\u00fcgen wir wie folgt ein:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Wir wrappen das einzuf\u00fcgende Element in einem neuen Listenknoten.<\/li><li>Wir lassen den <code>next<\/code>-Zeiger des letzten Knotens, also <code>tail.next<\/code>, auf den neuen Knoten zeigen. <\/li><li>Wir lassen ebenso <code>tail<\/code> auf den neuen Knoten zeigen.<\/li><\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">In der folgenden Grafik siehst du, wie ein zweites Element, \"cherry\", in die Beispiel-Queue eingef\u00fcgt wird:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full_800\"><img decoding=\"async\" width=\"800\" height=\"455\" src=\"https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-enqueue-second-800x455.png\" alt=\"Queue mit verketteter Liste: zweites Element einf\u00fcgen\" class=\"wp-image-29806\" srcset=\"https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-enqueue-second-800x455.png 800w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-enqueue-second-224x127.png 224w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-enqueue-second-336x191.png 336w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-enqueue-second-504x287.png 504w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-enqueue-second-672x382.png 672w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-enqueue-second-400x228.png 400w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-enqueue-second-600x341.png 600w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-enqueue-second-944x537.png 944w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-enqueue-second-1200x683.png 1200w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-enqueue-second.png 1600w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption>Queue mit verketteter Liste: zweites 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 class=\"wp-block-paragraph\">Die Entnahme des Kopf-Elements mit <code>dequeue()<\/code> funktioniert dann wie folgt:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Wir merken uns das Element des Knotens, auf den <code>head<\/code> zeigt (im Beispiel w\u00e4re das \"banana\").<\/li><li>Wir lassen <code>head<\/code> auf <code>head.next<\/code> zeigen (im Beispiel auf den Knoten, der \"cherry\" wrappt). Falls <code>head<\/code> danach <code>null<\/code> sein sollte (die Queue also leer ist), setzen wir auch <code>tail<\/code> auf <code>null<\/code>. <\/li><li>Wir geben das in Schritt 1 gemerkte Element zur\u00fcck (im Beispiel \"banana\").<\/li><li>In einer Programmiersprache mit Garbage Collector (z. B. Java) l\u00f6scht dieser den nicht mehr referenzierten Knoten; in anderen Sprachen (wie C++) m\u00fcssten wir ihn manuell l\u00f6schen.<\/li><\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Die folgende Grafik soll die vier Schritte verdeutlichen:<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-full_800\"><img decoding=\"async\" width=\"800\" height=\"629\" src=\"https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-dequeue-800x629.png\" alt=\"Queue mit verketteter Liste: Element entnehmen\" class=\"wp-image-29819\" srcset=\"https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-dequeue-800x629.png 800w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-dequeue-224x176.png 224w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-dequeue-336x264.png 336w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-dequeue-504x396.png 504w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-dequeue-672x528.png 672w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-dequeue-400x315.png 400w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-dequeue-600x472.png 600w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-dequeue-944x742.png 944w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-dequeue-1200x944.png 1200w, https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/implement-queue-using-linked-list-dequeue.png 1600w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><figcaption>Queue mit verketteter Liste: Element entnehmen<\/figcaption><\/figure><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Der gestrichelte Rahmen um den \"banana\"-Knoten in Schritt 2 und 3 soll darstellen, dass dieser Knoten zu diesem Zeitpunkt nicht mehr referenziert wird.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"quellcode-fuer-die-queue-mit-einer-linked-list\">Quellcode f\u00fcr die Queue mit einer Linked List<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Der folgende Code zeigt die Implementierung einer Queue mit einer verketteten Liste (<a rel=\"noopener\" href=\"https:\/\/github.com\/SvenWoltmann\/java-collections-guide\/blob\/main\/src\/main\/java\/eu\/happycoders\/collections\/queue\/LinkedListQueue.java\" target=\"_blank\">LinkedListQueue<\/a> im GitHub-Repo). Die Klasse f\u00fcr die Knoten, <code>Node<\/code>, findest du ganz am Ende 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\">LinkedListQueue<\/span>&lt;<span class=\"hljs-title\">E<\/span>&gt; <span class=\"hljs-keyword\">implements<\/span> <span class=\"hljs-title\">Queue<\/span>&lt;<span class=\"hljs-title\">E<\/span>&gt; <\/span>{\n\n  <span class=\"hljs-keyword\">private<\/span> Node&lt;E&gt; head;\n  <span class=\"hljs-keyword\">private<\/span> Node&lt;E&gt; tail;\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\">enqueue<\/span><span class=\"hljs-params\">(E element)<\/span> <\/span>{\n    Node&lt;E&gt; newNode = <span class=\"hljs-keyword\">new<\/span> Node&lt;&gt;(element);\n    <span class=\"hljs-keyword\">if<\/span> (isEmpty()) {\n      head = tail = newNode;\n    } <span class=\"hljs-keyword\">else<\/span> {\n      tail.next = newNode;\n      tail = newNode;\n    }\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\">dequeue<\/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 = head.element;\n    head = head.next;\n    <span class=\"hljs-keyword\">if<\/span> (head == <span class=\"hljs-keyword\">null<\/span>) {\n      tail = <span class=\"hljs-keyword\">null<\/span>;\n    }\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> head.element;\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> head == <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    Node&lt;E&gt; next;\n\n    Node(E element) {\n      <span class=\"hljs-keyword\">this<\/span>.element = element;\n    }\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 class=\"wp-block-paragraph\">Wie du die <code>LinkedListQueue<\/code>-Klasse einsetzen kannst, kannst du dir Demo-Programm <a rel=\"noopener\" href=\"https:\/\/github.com\/SvenWoltmann\/java-collections-guide\/blob\/main\/src\/main\/java\/eu\/happycoders\/demos\/queue\/QueueDemo.java\" target=\"_blank\">QueueDemo<\/a> anschauen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"ausblick\">Ausblick<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Im n\u00e4chsten Teil des Tutorials zeige ich dir, <a href=\"\/de\/algorithmen\/queue-implementieren-array\/\">wie man eine Queue mit einem Array implementiert<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">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 eine Queue mit einer verketteten Liste (linked list)? Tutorial mit Grafiken + Java-Code-Beispielen<\/p>\n","protected":false},"author":1,"featured_media":29812,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_seopress_titles_title":"","_seopress_titles_desc":"Wie implementiert man eine Queue mit einer verketteten Liste (linked list)? Tutorial mit Grafiken + Java-Code-Beispielen","_seopress_robots_index":"","_seopress_robots_follow":"","_seopress_robots_imageindex":"","_seopress_robots_snippet":"","_seopress_robots_primary_cat":"none","_seopress_robots_breadcrumbs":"","_seopress_robots_freeze_modified_date":"","_seopress_robots_custom_modified_date":"","_seopress_robots_canonical":"","_seopress_social_fb_title":"","_seopress_social_fb_desc":"","_seopress_social_fb_img":"","_seopress_social_fb_img_attachment_id":0,"_seopress_social_fb_img_width":0,"_seopress_social_fb_img_height":0,"_seopress_social_twitter_title":"","_seopress_social_twitter_desc":"","_seopress_social_twitter_img":"","_seopress_social_twitter_img_attachment_id":0,"_seopress_social_twitter_img_width":0,"_seopress_social_twitter_img_height":0,"_seopress_redirections_value":"","_seopress_redirections_enabled":"","_seopress_redirections_enabled_regex":"","_seopress_redirections_logged_status":"both","_seopress_redirections_param":"","_seopress_redirections_type":301,"_seopress_analysis_target_kw":"queue mit einer linked list,queue mit einer verketteten liste,queue mit verketteter liste","_seopress_news_disabled":"","_seopress_video_disabled":"","_seopress_video":[],"_seopress_pro_schemas_manual":[{"_seopress_pro_rich_snippets_type":"none"}],"_seopress_pro_rich_snippets_disable_all":"","_seopress_pro_rich_snippets_disable":[],"_seopress_pro_schemas":[],"_uag_custom_page_level_css":"","_wp_convertkit_post_meta":{"form":"-1","landing_page":"","tag":"0","restrict_content":"0"},"_metis_text_type":"standard","_metis_text_length":4108,"_post_count":0,"footnotes":""},"categories":[127],"tags":[192],"class_list":["post-29792","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-algorithmen","tag-datenstrukturen-queue"],"uagb_featured_image_src":{"full":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/chain-3481377-1770x986-1.jpg",1770,986,false],"thumbnail":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/chain-3481377-1770x986-1.jpg",150,84,false],"medium":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/chain-3481377-1770x986-1.jpg",300,167,false],"medium_large":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/chain-3481377-1770x986-1.jpg",768,428,false],"large":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/chain-3481377-1770x986-1.jpg",1024,570,false],"feature_thumb_224":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/chain-3481377-1770x986-1-224x125.jpg",224,125,true],"feature_thumb_336":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/chain-3481377-1770x986-1-336x187.jpg",336,187,true],"feature_thumb_504":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/chain-3481377-1770x986-1-504x281.jpg",504,281,true],"feature_thumb_672":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/chain-3481377-1770x986-1-672x374.jpg",672,374,true],"half_400":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/chain-3481377-1770x986-1-400x223.jpg",400,223,true],"half_600":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/chain-3481377-1770x986-1-600x334.jpg",600,334,true],"full_800":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/chain-3481377-1770x986-1-800x446.jpg",800,446,true],"full_944":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/chain-3481377-1770x986-1-944x526.jpg",944,526,true],"full_1200":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/chain-3481377-1770x986-1-1200x668.jpg",1200,668,true],"wide_1180":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/chain-3481377-1770x986-1-1180x490.jpg",1180,490,true],"wide_1770":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/chain-3481377-1770x986-1-1770x735.jpg",1770,735,true],"1536x1536":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/chain-3481377-1770x986-1.jpg",1536,856,false],"2048x2048":["https:\/\/www.happycoders.eu\/wp-content\/uploads\/2022\/05\/chain-3481377-1770x986-1.jpg",1770,986,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 eine Queue mit einer verketteten Liste (linked list)? Tutorial mit Grafiken + Java-Code-Beispielen","public_identification_id":"35c8730273cb4e0dab2f5bea35204fab","private_identification_id":"550f284f629246b9a50b9444372ea09a","_links":{"self":[{"href":"https:\/\/www.happycoders.eu\/de\/wp-json\/wp\/v2\/posts\/29792","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=29792"}],"version-history":[{"count":10,"href":"https:\/\/www.happycoders.eu\/de\/wp-json\/wp\/v2\/posts\/29792\/revisions"}],"predecessor-version":[{"id":30183,"href":"https:\/\/www.happycoders.eu\/de\/wp-json\/wp\/v2\/posts\/29792\/revisions\/30183"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.happycoders.eu\/de\/wp-json\/wp\/v2\/media\/29812"}],"wp:attachment":[{"href":"https:\/\/www.happycoders.eu\/de\/wp-json\/wp\/v2\/media?parent=29792"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.happycoders.eu\/de\/wp-json\/wp\/v2\/categories?post=29792"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.happycoders.eu\/de\/wp-json\/wp\/v2\/tags?post=29792"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}