{"id":2780,"date":"2020-06-26T23:05:47","date_gmt":"2020-06-26T20:05:47","guid":{"rendered":"http:\/\/demensdeum.com\/blog\/?p=2780"},"modified":"2024-12-16T22:32:26","modified_gmt":"2024-12-16T19:32:26","slug":"hashmap","status":"publish","type":"post","link":"https:\/\/demensdeum.com\/blog\/de\/2020\/06\/26\/hashmap\/","title":{"rendered":"Hash-Tabelle"},"content":{"rendered":"<p>Mit der Hash-Tabelle k\u00f6nnen Sie eine assoziative Array-Datenstruktur (W\u00f6rterbuch) mit einer durchschnittlichen Leistung von O(1) f\u00fcr Einf\u00fcge-, L\u00f6sch- und Suchvorg\u00e4nge implementieren.<\/p>\n<p>Unten finden Sie ein Beispiel f\u00fcr die einfachste Implementierung einer Hash-Map in nodeJS:<\/p>\n<p><iframe loading=\"lazy\" src=\"https:\/\/repl.it\/@demensdeum\/VitalGlitteringFrontpage?lite=true\" width=\"100%\" height=\"400px\" frameborder=\"no\" scrolling=\"no\" sandbox=\"allow-forms allow-pointer-lock allow-popups allow-same-origin allow-scripts allow-modals\" allowfullscreen=\"allowfullscreen\"><\/iframe><\/p>\n<p>Wie funktioniert es? Passen Sie auf Ihre H\u00e4nde auf:<\/p>\n<ul>\n<li>Innerhalb der Hash-Map befindet sich ein Array<\/li>\n<li>Im Array-Element befindet sich ein Zeiger auf den ersten Knoten der verkn\u00fcpften Liste<\/li>\n<li>Speicher wird f\u00fcr ein Array von Zeigern zugewiesen (z. B. 65535 Elemente)<\/li>\n<li>Sie implementieren eine Hash-Funktion, der W\u00f6rterbuchschl\u00fcssel ist die Eingabe, und am Ausgang kann sie alles tun, aber am Ende gibt sie den Index des Array-Elements zur\u00fcck<\/li>\n<\/ul>\n<p>So funktioniert die Aufnahme:<\/p>\n<ul>\n<li>Am Eingang liegt ein Schl\u00fcsselpaar &#8211; Wert<\/li>\n<li>Hash-Funktion gibt Index nach Schl\u00fcssel zur\u00fcck<\/li>\n<li>Einen verkn\u00fcpften Listenknoten aus einem Array nach Index abrufen<\/li>\n<li>\u00dcberpr\u00fcfen Sie, ob es mit dem Schl\u00fcssel \u00fcbereinstimmt<\/li>\n<li>Wenn es \u00fcbereinstimmt, ersetzen Sie den Wert<\/li>\n<li>Wenn es nicht \u00fcbereinstimmt, fahren Sie mit dem n\u00e4chsten Knoten fort, bis wir einen Knoten mit dem erforderlichen Schl\u00fcssel finden oder finden.<\/li>\n<li>Wenn der Knoten immer noch nicht gefunden wird, erstellen Sie ihn am Ende der verkn\u00fcpften Liste<\/li>\n<\/ul>\n<p>So funktioniert die Suche nach Schl\u00fcssel:<\/p>\n<ul>\n<li>Am Eingang liegt ein Schl\u00fcsselpaar &#8211; Wert<\/li>\n<li>Hash-Funktion gibt Index nach Schl\u00fcssel zur\u00fcck<\/li>\n<li>Einen verkn\u00fcpften Listenknoten aus einem Array nach Index abrufen<\/li>\n<li>\u00dcberpr\u00fcfen Sie, ob es mit dem Schl\u00fcssel \u00fcbereinstimmt<\/li>\n<li>Wenn es \u00fcbereinstimmt, wird der Wert zur\u00fcckgegeben<\/li>\n<li>Wenn es nicht \u00fcbereinstimmt, fahren Sie mit dem n\u00e4chsten Knoten fort, bis wir einen Knoten mit dem erforderlichen Schl\u00fcssel finden oder finden.<\/li>\n<\/ul>\n<p>Warum brauchen wir eine verkn\u00fcpfte Liste innerhalb eines Arrays? Aufgrund m\u00f6glicher Kollisionen bei der Berechnung der Hash-Funktion. In diesem Fall befinden sich mehrere verschiedene Schl\u00fcssel-Wert-Paare am selben Index im Array. In diesem Fall wird die verkn\u00fcpfte Liste durchlaufen, um den erforderlichen Schl\u00fcssel zu finden.<\/p>\n<h3>Quellen<\/h3>\n<p><a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%A5%D0%B5%D1%88-%D1%82%D0%B0%D0%B1%D0%BB% D0%B8%D1%86%D0%B0\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/ru.wikipedia.org\/wiki\/Hash-Tabelle<\/a><br \/><a href=\"https:\/\/www.youtube.com\/watch?v=wg8hZxMRwcw\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/www.youtube.com\/watch?v=wg8hZxMRwcw<\/a><\/p>\n<h3>Quellcode<\/h3>\n<p><a href=\"https:\/\/gitlab.com\/demensdeum\/datastructures\" target=\"_blank\" rel=\"noopener noreferrer\">https:\/\/gitlab.com\/demensdeum\/datastructures<\/a><\/p >\n","protected":false},"excerpt":{"rendered":"<p>Mit der Hash-Tabelle k\u00f6nnen Sie eine assoziative Array-Datenstruktur (W\u00f6rterbuch) mit einer durchschnittlichen Leistung von O(1) f\u00fcr Einf\u00fcge-, L\u00f6sch- und Suchvorg\u00e4nge implementieren. Unten finden Sie ein Beispiel f\u00fcr die einfachste Implementierung einer Hash-Map in nodeJS: Wie funktioniert es? Passen Sie auf Ihre H\u00e4nde auf: Innerhalb der Hash-Map befindet sich ein Array Im Array-Element befindet sich ein<a class=\"more-link\" href=\"https:\/\/demensdeum.com\/blog\/de\/2020\/06\/26\/hashmap\/\">Continue reading <span class=\"screen-reader-text\">&#8220;Hash-Tabelle&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[61,52],"tags":[157,161],"class_list":["post-2780","post","type-post","status-publish","format-standard","hentry","category-techie","category-tutorials","tag-datastructures","tag-hashmap","entry"],"translation":{"provider":"WPGlobus","version":"3.0.2","language":"de","enabled_languages":["en","ru","zh","de","fr","ja","pt","hi"],"languages":{"en":{"title":true,"content":true,"excerpt":false},"ru":{"title":true,"content":true,"excerpt":false},"zh":{"title":true,"content":true,"excerpt":false},"de":{"title":true,"content":true,"excerpt":false},"fr":{"title":true,"content":true,"excerpt":false},"ja":{"title":true,"content":true,"excerpt":false},"pt":{"title":true,"content":true,"excerpt":false},"hi":{"title":false,"content":false,"excerpt":false}}},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/demensdeum.com\/blog\/de\/wp-json\/wp\/v2\/posts\/2780","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/demensdeum.com\/blog\/de\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/demensdeum.com\/blog\/de\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/demensdeum.com\/blog\/de\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/demensdeum.com\/blog\/de\/wp-json\/wp\/v2\/comments?post=2780"}],"version-history":[{"count":6,"href":"https:\/\/demensdeum.com\/blog\/de\/wp-json\/wp\/v2\/posts\/2780\/revisions"}],"predecessor-version":[{"id":3909,"href":"https:\/\/demensdeum.com\/blog\/de\/wp-json\/wp\/v2\/posts\/2780\/revisions\/3909"}],"wp:attachment":[{"href":"https:\/\/demensdeum.com\/blog\/de\/wp-json\/wp\/v2\/media?parent=2780"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/demensdeum.com\/blog\/de\/wp-json\/wp\/v2\/categories?post=2780"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/demensdeum.com\/blog\/de\/wp-json\/wp\/v2\/tags?post=2780"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}