BBranchSpire
Fluxos de trabalho

Fluxos de programação · Reconstrução de árvores por percursos

03
Produto

Fluxos de trabalho

Reconstrua uma árvore binária com percursos de pré-ordem e em-ordem de até 100 rótulos inteiros distintos. Teste árvores vazias e inclinadas, rejeitando percursos incompatíveis ou rótulos repetidos sem editar as entradas.

01

Baixe o aplicativo

Escolha uma pasta e peça ao assistente que leia os arquivos relevantes antes de editá-los. Defina o objetivo e os limites da tarefa.

02

Abra a pasta do projeto

Escolha um endpoint compatível. As ferramentas disponíveis e a qualidade das respostas dependem do modelo e do servidor configurados.

03

Conecte e teste o modelo

Confira as alterações e a saída dos comandos. Execute as verificações do projeto antes de aceitar o resultado; código gerado não vem automaticamente testado.

04

Revise as alterações e execute os testes

Compare o comportamento real com o resultado esperado. Se uma verificação falhar, investigue a causa antes de fazer outras alterações.

Reconstrução de árvores por percursos

Fluxos de trabalho
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))

Revise antes de aplicar. Confira as alterações e a saída dos comandos. Execute as verificações do projeto antes de aceitar o resultado; código gerado não vem automaticamente testado.

Ambiente de programação com IA

Seu próximo projeto começa aqui.

Baixar para Windows ↗