Conceito -> entrada gera listas de tamanhos diferentes que podem adicionar elementos uns aos outros

StackOverflow https://stackoverflow.com//questions/23024660

  •  21-12-2019
  •  | 
  •  

Pergunta

Obrigado por toda a ajuda até agora!

Hoje estou trabalhando em um banco de dados para um programa de datalog.Fiquei um pouco preso logicamente, pensei que tinha descoberto, mas me deparei com alguns becos sem saída.

Eu tenho entradas de esquema, basicamente uma string com um nome e uma lista de nomes de listas.Depois eu tenho os Fatos, basicamente essas listas têm um nome e uma lista de valores.

Preciso processar os esquemas, criar listas com o nome do esquema que são listas com as variáveis ​​e anexar as informações dos fatos correspondentes à lista de variáveis.

POR EXEMPLO

       Scheme
           listname A B C D
           other    C D
       Fact
           listname 1 2 3 4
           listname 2 3 4 5
           other    9 6

Eu precisaria ter gerado as seguintes listas

        A     B       C      D
        1     2       3      4
        2     3       4      5
                      9      6

O problema que estou enfrentando é porque não sei de quantas listas precisarei até ver a entrada que estou usando vetor >>.A questão aqui é que quando encontro um elemento que corresponde apenas a duas listas, não sei bem o que fazer.A questão está ficando mais complexa do que acho que deveria ser.

Como posso gerar listas separadas que sejam mais fáceis de visualizar e que possam variar em tamanho?

Até agora, consegui seguir o exemplo acima listname em esquemas e fatos e gerar um bom vetor, mas fico preso quando acerto outros tipos, como os anteriores.

Normalmente não gosto de postar essas perguntas abertas aqui, mas não tenho muita experiência em programação e estou tendo problemas para entender uma boa maneira de fazer isso.

Obrigado por qualquer entrada!

Foi útil?

Solução

Pelo que posso ver, a estrutura de dados é ditada pelos dados de entrada.

Scheme é um vetor de objetos SchemeItem.
SchemeItem é um objeto (struct/class) contendo um nome e um vetor de variáveis.
Fact é um vetor de objetos FactItem.
FactItem é um objeto que contém um nome e um vetor de valores.

Crie a estrutura de dados e leia os dados nela.Aí começa a diversão (mas isso seria outra questão).

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top