Als «data-structures» getaggte Fragen

14
Finden des maximalen XOR von zwei Zahlen in einem Intervall: Können wir es besser machen als quadratisch?

Nehmen wir an, wir haben zwei Zahlen lll und und wollen für l \ le i, \, j \ le r finden .max ( i ⊕ j ) l ≤ i ,rrrmax(i⊕j)max(i⊕j)\max{(i\oplus j)}l≤i,j≤rl≤i,j≤rl\le i,\,j\le r Der naive Algorithmus überprüft einfach alle möglichen Paare; Zum Beispiel in Ruby hätten wir: def max_xor(l, r) max = 0...

11
Array-ähnliche unveränderliche (persistente) Datenstrukturimplementierung mit schneller Indizierung, Anhängen, Voranstellen und Iteration

Ich suche nach einer dauerhaften Datenstruktur ähnlich dem Array (aber unveränderlich), die schnelle Indizierungs-, Anhänge-, Voranstellungs- und Iterationsoperationen (gute Lokalität) ermöglicht. Clojure bietet dauerhaften Vektor, ist jedoch nur zum schnellen Anhängen geeignet. Scalas Vektor hat...

11
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 if x then T else F; Z =>...

11
Datenstruktur für Karte in Intervallen

Sei nnn eine ganze Zahl und sei ZZ\mathbb{Z} die Menge aller ganzen Zahlen. Es sei [a,b][a,b][a,b] das Intervall der ganzen Zahlen {a,a+1,a+2,…,b}{a,a+1,a+2,…,b}\{a,a+1,a+2,\dots,b\} . Ich suche eine Datenstruktur , die eine Karte darstellen f:[1,n]→Zf:[1,n]→Zf:[1,n] \to \mathbb{Z} . Ich möchte,...