Jump to content
sells2010

Algoritmo - Agrupar números por proximidade

Recommended Posts

sells2010

Boa tarde. Estou a iniciar na programação e precisava da vossa ajuda na resolução deste problema. 

- Criar um algoritmo que pode receber como parâmetro de entrada um array de inteiros e pode agrupá-los em N grupos dependendo de quão perto eles estão uns aos outros.

A solução deve resolver o problema para qualquer lista de Inteiros e grupos (desde que os grupos sejam menores ou iguais ao número total de Inteiros). Além disso, a solução precisa ter o nível correto de testes automatizados para validar que ele funciona e que o código é resiliente a modificações.

Alguém tem ideia de como se pode resolver isto?
Obrigado!

 

Edited by sells2010

Share this post


Link to post
Share on other sites
sells2010
14 minutos atrás, HappyHippyHippo disse:

vector quantization

Mas podes-me ajudar a adaptar a técnica a este problema?

Edited by sells2010

Share this post


Link to post
Share on other sites
HappyHippyHippo

a documentação esta online. Caso tenhas um problema em concreto em diz qual


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
sells2010
29 minutos atrás, HappyHippyHippo disse:

a documentação esta online. Caso tenhas um problema em concreto em diz qual

Não tenho grandes conhecimentos, estou a iniciar, consegues dar-me umas luzes? Podes mandar-me o link?

Share this post


Link to post
Share on other sites
sells2010
45 minutos atrás, HappyHippyHippo disse:

wikipedia e um começo

Ok, vou ver, obrigado. Se depois não conseguir , ajudas-me?

Share this post


Link to post
Share on other sites
HappyHippyHippo
9 minutes ago, sells2010 said:

Ok, vou ver, obrigado. Se depois não conseguir , ajudas-me?

e para isso que muita gente esta aqui


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
Warrior

Qual é o problema exactamente?

Dados N números agrupá-los em K conjuntos? Porque motivo é referida uma matriz no "enunciado"?

Share this post


Link to post
Share on other sites
HappyHippyHippo
5 minutes ago, Warrior said:

Qual é o problema exactamente?

Dados N números agrupá-los em K conjuntos? Porque motivo é referida uma matriz no "enunciado"?

porque "alguns" nao sabem o que e uma lista ou array


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
sells2010
4 horas atrás, HappyHippyHippo disse:

porque "alguns" nao sabem o que e uma lista ou array

Sei sim. Uma matriz é um array de arrays. 
Envio um exemplo do output esperado:

Exemplo:

group([16, 15, 23, 24, 28, 23, 29, 45, 12, 67], 3);

-> gera 3 grupos

[ [ 16, 15, 12],

[ 23, 24, 28, 23, 29],

[ 45, 67] ]

O número 3 na função é o número que o parâmetro de entrada recebe para determinar o número de grupos, neste caso 3. 

 

Share this post


Link to post
Share on other sites
HappyHippyHippo

ora lê la novamente o post inicial.

tu disseste que a entrada era uma matriz e no exemplo a "matriz" é a saída...

mas prontos. Um gajo ja esta habituado a essas cenas aqui no fórum...

Edited by HappyHippyHippo
a saida nao e bem uma matriz no sentido matematico da coisa

IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
sells2010
8 horas atrás, HappyHippyHippo disse:

ora lê la novamente o post inicial.

tu disseste que a entrada era uma matriz e no exemplo a "matriz" é a saída...

mas prontos. Um gajo ja esta habituado a essas cenas aqui no fórum...

Enganei-me. Queria dizer "array". Não precisas de falar assim, toda a gente tem direito a enganar-se.

Share this post


Link to post
Share on other sites
HappyHippyHippo
1 hour ago, sells2010 said:

Enganei-me. Queria dizer "array". Não precisas de falar assim, toda a gente tem direito a enganar-se.

falar como ?


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
sells2010
1 hora atrás, HappyHippyHippo disse:

falar como ?

Porque tem-me parecido que ao longo dos teus posts, estás sempre a gozar, com o que vou dizendo. E acho que o objetivo é o pessoal ajudar-se. 

Share this post


Link to post
Share on other sites
HappyHippyHippo
1 minute ago, sells2010 said:

Porque tem-me parecido que ao longo dos teus posts, estás sempre a gozar, com o que vou dizendo. E acho que o objetivo é o pessoal ajudar-se. 

estás enganado

e no que toca a ajudar, quem te disse qual algoritmo a usar para fazer o que pretendias ?


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
sells2010
21 minutos atrás, HappyHippyHippo disse:

estás enganado

e no que toca a ajudar, quem te disse qual algoritmo a usar para fazer o que pretendias ?

Eu sei, mas até agora ainda não consegui resolver o meu problema.

Share this post


Link to post
Share on other sites
HappyHippyHippo

mas isso agora é uma questão de ler a doc e implementar, istpo porque desde então não apresentaste nenhuma dúvida em concreto


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites
sells2010
6 horas atrás, HappyHippyHippo disse:

mas isso agora é uma questão de ler a doc e implementar, istpo porque desde então não apresentaste nenhuma dúvida em concreto

Ok. Por exemplo:

Exemplo:

Dado este array:

group([16, 15, 14, 13, 34, 23, 24, 25, 26, 28, 45, 34, 23, 29, 12, 23, 45, 67, 23, 12, 34, 45, 23, 67, 23, 67], 5);
 

Quero que:

Gere 5 grupos:

[ [ 16, 15, 14, 13, 12, 12 ],

[ 34, 34, 29, 34 ], 

[ 23, 24, 25, 26, 28, 23, 23, 23, 23, 23 ], 

[ 45, 45, 45 ],

[ 67, 67, 67 ] ]

Share this post


Link to post
Share on other sites
HappyHippyHippo
7 hours ago, sells2010 said:

Ok. Por exemplo:

Exemplo:

Dado este array:

group([16, 15, 14, 13, 34, 23, 24, 25, 26, 28, 45, 34, 23, 29, 12, 23, 45, 67, 23, 12, 34, 45, 23, 67, 23, 67], 5);
 

Quero que:

Gere 5 grupos:

[ [ 16, 15, 14, 13, 12, 12 ],

[ 34, 34, 29, 34 ], 

[ 23, 24, 25, 26, 28, 23, 23, 23, 23, 23 ], 

[ 45, 45, 45 ],

[ 67, 67, 67 ] ]

isso já tinhas dito, agora é implementar um algoritmo ... o que eu referi ou outro qualquer que queiras inventar


IRC : sim, é algo que ainda existe >> #p@p

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.