Buscar

Duvida na recursão da atividade União

o exercicio é:

uniao: recebe duas listas que não contenham elementos repetidos e retorna uma nova com todos os elementos das duas listas originais (sem repetição) 

ex.: 
(uniao '(3 6 5 7) '(2 9 7 5 1))    ==>    (3 6 5 7 2 9 1)

_________________________________________________________

alguem me da um help ae o/
esse exercicio ta me dando nó, na funcao compara, na primeira guarda, o retorno ta errado e nao consigo solucionar

compara :: [Int] -> [Int] -> [Int]
compara _ [] = []
compara [] _ = []
compara (a:x) (b:y)
|a == b = compara (compara x (b:y))(compara (a:x) y)
|otherwise = b : compara (a:x) y

uniao :: [Int] -> [Int] -> [Int]
uniao a [] = a
uniao [] a = a
uniao x y = x ++ compara x y

parece que quando a lista é crescente por exemplo [1,2][1,2,3,4] a resposta sai [1,2,2,3,4] e decrescente [1,2][4,3,2,1] fica [1,2,4,3,2]

ja me deu tilt

💡 1 Resposta

User badge image

Luccas Beck Reis

depois de uma certa pesquisa, te recomendo ir neste link que tem a resposta!!

 

https://pythonhelp.wordpress.com/category/listas/

 

0
Dislike0

✏️ Responder

SetasNegritoItálicoSublinhadoTachadoCitaçãoCódigoLista numeradaLista com marcadoresSubscritoSobrescritoDiminuir recuoAumentar recuoCor da fonteCor de fundoAlinhamentoLimparInserir linkImagemFórmula

Para escrever sua resposta aqui, entre ou crie uma conta

User badge image

Outros materiais