Als «hash-tables» getaggte Fragen

Eine endliche Kartendatenstruktur, die gespeicherte Werte mithilfe einer Funktion adressiert, die viele Werte wenigen Adressen zuordnet.



1
Hash-Tabellen versus binäre Bäume
Bei der Implementierung eines Wörterbuchs ("Ich möchte Kundendaten anhand ihrer Kunden-IDs nachschlagen") werden typischerweise Hash-Tabellen und binäre Suchbäume verwendet. Ich weiß zum Beispiel, dass die C ++ STL-Bibliothek Wörterbücher (sie nennen sie Maps) mithilfe von (ausgeglichenen) binären Suchbäumen implementiert und das .NET-Framework Hash-Tabellen unter der Haube verwendet. Was sind die …


5
Für welche Art von Daten sind Hashtabellenoperationen O (1)?
Aus den Antworten auf (Wann) ergibt sich die Hash-Tabellensuche O (1)? Ich stelle fest, dass Hash-Tabellen das schlechteste Verhalten von aufweisen, zumindest amortisiert, wenn die Daten bestimmte statistische Bedingungen erfüllen, und dass es Techniken gibt, mit denen sich diese Bedingungen erweitern lassen.O ( 1 )Ö(1)O(1) Aus Sicht eines Programmierers weiß …

3
Was bedeutet "nicht pathologische Daten"?
Ich habe einen Algorithmuskurs in Coursera besucht. Der Professor im Video über Hash-Tabellen sagte das Was stimmt, ist, dass Sie für nicht pathologische Daten konstante Zeitoperationen in einer ordnungsgemäß implementierten Hash-Tabelle erhalten. Was bedeutet "nicht pathologische Daten"? Können Sie einige Beispiele nennen?

1
Universelles Hashing in der Praxis
HHHh : U→ { 0 , … , M−1}h:U→{0,…,M−1}h: U \rightarrow \{0,\ldots,M-1\}∀x,y∈U,x≠y⇒Prh∈H[h(x)=h(y)]≤1M∀x,y∈U,x≠y⇒Prh∈H[h(x)=h(y)]≤1M\forall x,y \in U, x \neq y \Rightarrow \Pr_{h \in H}[h(x) = h(y)] \leq \frac{1}{M} Das Konzept des universellen Hashings ist heute ein Standardbestandteil von Grundstudiengängen zur Datenstruktur. Es wäre schön, die Schüler für die Bedeutung von Universal-Hashing in …

4
Was sind die Vorteile von Kuckuckshashing gegenüber dynamischem, perfektem Hashing?
Dynamische perfekte Hash-Tabellen und Kuckuck-Hash-Tabellen sind zwei unterschiedliche Datenstrukturen, die O (1) -Suchvorgänge im ungünstigsten Fall und erwartete O (1) -Zeit-Einfügungen und -Löschungen unterstützen. Beide benötigen O (n) Hilfsraum und Zugang zu Familien von Hash-Funktionen für ihre Operationen. Ich denke, dass diese beiden Datenstrukturen für sich genommen schön und brillant …

1
Verfeinerungsarten ableiten
Bei der Arbeit wurde ich beauftragt, einige Typinformationen über eine dynamische Sprache abzuleiten. Ich schreibe Folgen von Anweisungen in verschachtelte letAusdrücke um, wie folgt: return x; Z => x var x; Z => let x = undefined in Z x = y; Z => let x = y in Z …
11 programming-languages  logic  type-theory  type-inference  machine-learning  data-mining  clustering  order-theory  reference-request  information-theory  entropy  algorithms  algorithm-analysis  space-complexity  lower-bounds  formal-languages  computability  formal-grammars  context-free  parsing  complexity-theory  time-complexity  terminology  turing-machines  nondeterminism  programming-languages  semantics  operational-semantics  complexity-theory  time-complexity  complexity-theory  reference-request  turing-machines  machine-models  simulation  graphs  probability-theory  data-structures  terminology  distributed-systems  hash-tables  history  terminology  programming-languages  meta-programming  terminology  formal-grammars  compilers  algorithms  search-algorithms  formal-languages  regular-languages  complexity-theory  satisfiability  sat-solvers  factoring  algorithms  randomized-algorithms  streaming-algorithm  in-place  algorithms  numerical-analysis  regular-languages  automata  finite-automata  regular-expressions  algorithms  data-structures  efficiency  coding-theory  algorithms  graph-theory  reference-request  education  books  formal-languages  context-free  proof-techniques  algorithms  graph-theory  greedy-algorithms  matroids  complexity-theory  graph-theory  np-complete  intuition  complexity-theory  np-complete  traveling-salesman  algorithms  graphs  probabilistic-algorithms  weighted-graphs  data-structures  time-complexity  priority-queues  computability  turing-machines  automata  pushdown-automata  algorithms  graphs  binary-trees  algorithms  algorithm-analysis  spanning-trees  terminology  asymptotics  landau-notation  algorithms  graph-theory  network-flow  terminology  computability  undecidability  rice-theorem  algorithms  data-structures  computational-geometry 



3
Wie zählt man im linearen Zeit-Worst-Case?
Diese Frage und diese Frage haben mich ein wenig zum Nachdenken gebracht. Um ein Array der Länge mit eindeutigen Elementen in sortieren , müssen wir in der Lage sein, die Anzahl der Werte im Array zu speichern. Es gibt einige Vorschläge, aber ich suche nach einer Möglichkeit, dies im schlimmsten …

2
Wie vermeide ich kaskadierende Größenänderungen beim Ändern der Größe von Hash-Tabellen?
Bei herkömmlichen Kollisionsauflösungsmethoden wie separater Verkettung und linearer / quadratischer Abtastung kann die Sondensequenz für einen Schlüssel beliebig lang sein - sie wird einfach mit hoher Wahrscheinlichkeit kurz gehalten, indem der Lastfaktor der Tabelle niedrig gehalten wird. Kollisionen während des Aufwärmens sind daher kein Problem, da sie den Lastfaktor nicht …

2
Wie berücksichtigen Hash-Tabellen O (1) die Hash-Geschwindigkeit?
Hash-Tabellen sollen unter Verwendung von beispielsweise einfacher Verkettung und Verdoppelung bei einer bestimmten Kapazität amortisiert werden.Θ ( 1 )Θ(1)\Theta(1) Dies setzt jedoch voraus, dass die Längen der Elemente konstant sind. Um den Hash eines Elements zu berechnen, muss das Element durchlaufen werden, wobei Zeit benötigt wird, wobei die Länge ist.lΘ …


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.