Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

greed

Alternativa ao push_back

Mensagens Recomendadas

greed    2
greed

Boas,

Estou a tentar fazer um programa que guarda varios elementos.

Se fizer 2 push_back para um vector<node> aumenta-me logo 0.4s o tempo de execução.

class node{

int ola;

}

Existe alguma alternativa de forma a ficar mais eficiente? listas? (se sim arranjem-me pseudo codigo pffffff)

Obrigados in advance.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
greed    2
greed

é pa deixa tar. inda pensei em usar o insert mas tenho k viver cm o facto de um push_back afectar imenso na performance.

thx anyway. uma  :wallbash: para vcs!  :biggrin:

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
shumy    17
shumy

Depende. Não precisas de viver com isso. Tens é de perceber o que está a acontecer se quiseres melhorar a performance.

A classe vector tem uma estrutura de dados que é basicamente um array. Se fizeres um push_back com a capacidade do vector no máximo, este terá de alocar mais espaço, e esta acção para arrays é basicamente:

1. Criar novo array com mais espaço.

2. Copiar os elementos de um array para outro.

3. destruir o 1º array.

Se fizeres push_back sem que o vector esteja cheio, então, é impossivel ser mais rápido.

De qualquer forma, se fazes muitos inserts e deletes, a classe "list" seria mais apropriada.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade