Modelle
Richten Sie einen OpenAI-kompatiblen oder Anthropic-Endpunkt mit Basis-URL und gegebenenfalls API-Schlüssel ein. Testen Sie die Verbindung. Ein lokaler Modellserver muss laufen; entfernte Werkzeuge können Daten separat übertragen.
Rekonstruiere einen Binärbaum aus Preorder- und Inorder-Listen mit höchstens 100 verschiedenen ganzzahligen Marken.
def rebuild_tree(preorder, inorder):
for row in (preorder,inorder):
if type(row) not in (list,tuple) or len(row) > 100 or any(type(v) is not int for v in row):
raise ValueError("at most 100 integer nodes")
if len(set(preorder)) != len(preorder) or len(set(inorder)) != len(inorder) or set(preorder) != set(inorder):
raise ValueError("same distinct node labels")
positions, cursor = {v:i for i,v in enumerate(inorder)}, 0
def visit(lo,hi):
nonlocal cursor
if lo == hi: return None
value = preorder[cursor]; cursor += 1
at = positions[value]
if not lo <= at < hi: raise ValueError("inconsistent traversals")
left = visit(lo,at)
right = visit(at+1,hi)
return value,left,right
return visit(0,len(inorder))Richten Sie einen OpenAI-kompatiblen oder Anthropic-Endpunkt mit Basis-URL und gegebenenfalls API-Schlüssel ein. Testen Sie die Verbindung. Ein lokaler Modellserver muss laufen; entfernte Werkzeuge können Daten separat übertragen.
Prüfe leere und einseitige Bäume und lehne widersprüchliche Durchläufe oder doppelte Marken ohne Eingabeänderung ab.
Vergleichen Sie das tatsächliche Verhalten mit dem erwarteten Ergebnis. Klären Sie fehlgeschlagene Prüfungen vor weiteren Änderungen.
def rebuild_tree(preorder, inorder):
for row in (preorder,inorder):
if type(row) not in (list,tuple) or len(row) > 100 or any(type(v) is not int for v in row):
raise ValueError("at most 100 integer nodes")
if len(set(preorder)) != len(preorder) or len(set(inorder)) != len(inorder) or set(preorder) != set(inorder):
raise ValueError("same distinct node labels")
positions, cursor = {v:i for i,v in enumerate(inorder)}, 0
def visit(lo,hi):
nonlocal cursor
if lo == hi: return None
value = preorder[cursor]; cursor += 1
at = positions[value]
if not lo <= at < hi: raise ValueError("inconsistent traversals")
left = visit(lo,at)
right = visit(at+1,hi)
return value,left,right
return visit(0,len(inorder))Strukturierte Daten können einfache Zugehörigkeitsprüfungen bestehen und trotzdem keine gültige Struktur beschreiben. BranchSpire ist ein KI-Programmierarbeitsbereich für Windows, um diese Lücke mit Blick auf Ihre Projektdateien zu untersuchen. Besprechen Sie den Eingabevertrag und das vom Aufrufer erwartete Objekt, bevor Sie Quelltextänderungen anfordern.
Eine konkrete Aufgabe ist die Prüfung der Rekonstruktion aus Präorder- und Inorder-Traversierungen. Liefern Sie einen kleinen gültigen Baum und ein widersprüchliches Traversierungspaar und lassen Sie das verbundene Modell prüfen, wo die Implementierung sie unterscheidet. Geben Sie die Anforderung unterschiedlicher Knotenbezeichnungen an, damit der vorgeschlagene Code nicht stillschweigend Eindeutigkeit voraussetzt, die der Aufrufer nie sichergestellt hat.
Prüfen Sie neben der rekursiven Logik auch die umgebende Schnittstelle. Entscheiden Sie, wie ungültige Daten gemeldet werden und ob Aufrufer eine bestimmte Rückgabedarstellung erwarten. Führen Sie im eigenen Projekt Testfälle für leere Eingaben, einen einzelnen Knoten und ungültige Kombinationen aus. Ein erfolgreiches Beispiel zeigt einen Ausführungspfad; ausdrückliche Zurückweisungsfälle helfen, die Grenze akzeptierter Daten zu bestimmen.
BranchSpire verbindet sich mit unterstützten OpenAI-kompatiblen oder Anthropic-Endpunkten, bei Bedarf mit Zugangsdaten. Sie können ein verfügbares abliteriertes KI-Modell wählen; dessen Server bestimmt Werkzeuge und Kontextgrenzen. Entwickeln und hinterfragen Sie über diese Verbindung einen Vorschlag und beurteilen Sie anschließend Diff und Ausführungsergebnisse anhand der von Ihrer Anwendung benötigten Struktur.
Auch die Reihenfolge der Traversierungen muss eine konsistente Struktur beschreiben. Nehmen Sie eine ungültige Reihenfolge mit denselben Bezeichnungen in die Aufgabenbesprechung auf. Lassen Sie das Modell die Stelle benennen, an der die vorgeschlagene Implementierung diesen Widerspruch erkennt.
Nur wenn der Rekonstruktionsvertrag sie ausdrücklich unterstützt. Die Beispielaufgabe setzt unterschiedliche Bezeichnungen voraus. Prüfen Sie Validierung und Aufrufer gemeinsam, damit mehrdeutige Eingaben bewusst zurückgewiesen werden, statt aufgrund undokumentierter Annahmen eine Struktur zu erzeugen.
Geben Sie Knotendarstellung, Wert für einen leeren Baum und die von Nutzern erwartete Kindreihenfolge an. Ein mathematisch gleichwertiger Baum kann bei geänderter Darstellung dennoch die Integration brechen. Prüfen Sie diese Nutzer vor einem umfassenderen Refactoring.
Liefern Sie kurze Testfälle mit bekannten Ergebnissen und fordern Sie eine Erklärung der Grenzen und Fehlerpfade an. Prüfen Sie den tatsächlichen Quelltext-Diff und führen Sie die Fälle anschließend mit Ihren Projektwerkzeugen aus. Verlassen Sie sich nicht auf lange Erläuterungen ohne entsprechende Prüfungen.
BranchSpire · Aktualisiert 2026-10-25