Ir para conteúdo
Fórum Script Brasil
  • 0

Pesquisa índice de vector por conteúdo.


PeuK12

Pergunta

Eae pessoal, então...

Estou criando um algoritmo em C++ e comecei a mexer com vector agora, e estou precisando de alguma função que imite o indexOf do java, tenho um elemento do vector que preciso saber o índice para aplicar a outros vector's e depois até mesmo pesquisar esses elementos, ou alterar seus valores.

Seria mais ou menos assim:

vector<int> num;

num.push_back(1);

num.push_back(145);

num.push_back(78);

num.push_back(15);

//aqui eu preciso usar o 145, mas como teoricamente eu não sei o índice dele eu não posso prosseguir.

Em java ficaria: 

ArrayList<Integer> num = new ArrayList<Integer>();
int index;

num.add(5);
num.add(55);
num.add(455);
num.add(5653);

index=num.indexOf(455);




  

e aí ele diria que a posição do numero 455 no ArrayList é 2.

 

Agradeço desde já pessoal, obrigado.

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Olá.

você sabe que em c++ não tem a "mamaezinha" pra ajudar né? Aqui usamos iteradores. Os iteradores, que a gorsso modo é dizer, são "ponteiros", e aqui usamos isso.
O que você está buscando é a função std::find, e você pode ver como funciona aqui: http://www.cplusplus.com/reference/algorithm/find/

A std::find basicamente faz o que essa função que você mostrou, mas en vez de mostrar o indice, ela retorna um iterador, que é o que se usa em C++, por isso falei que aqui não há mamaezinha, e sim muita cacetada >_<.

Estude iteradores e como funciona essa função stdfind que você triunfa.

para você ter uma ideia aqui tem um exemplo completo:
http://www.java2s.com/Tutorial/Cpp/0500__STL-Algorithms-Non-modifying-sequence-operations/FindanElementandItsPositioninaVector.htm

para você ter uma ideia aqui tem um exemplo completo:
http://www.java2s.com/Tutorial/Cpp/0500__STL-Algorithms-Non-modifying-sequence-operations/FindanElementandItsPositioninaVector.htm

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...