A maior rede de estudos do Brasil

Listas & Ponteiros

Considerando listas estáticas de valores inteiros, implemente uma função que receba como parâmetro uma lista encadeada , uma posição N1 e outra posição N2. Essa função deve trocar o elemento contido na posição N2 pelo contido na N1 e trocar o elemento contido na N1 pelo contido na N2.


5 resposta(s) - Contém resposta de Especialista

User badge image

RD Resoluções Verified user icon

Há mais de um mês

Nesse exercício vamos estudar listas encadeadas. Como o enunciado cita ponteiros, vamos utilizar a linguagem C.


Como não foi citada se a lista é simplesmente encadeada ou duplamente encadeada, vamos fazer para a simplesmente encadeada, que também funciona para a duplamente encadeada, mas não é otimizada para ela.


O código abaixo (comentado) faz o que se pede:

Nesse exercício vamos estudar listas encadeadas. Como o enunciado cita ponteiros, vamos utilizar a linguagem C.


Como não foi citada se a lista é simplesmente encadeada ou duplamente encadeada, vamos fazer para a simplesmente encadeada, que também funciona para a duplamente encadeada, mas não é otimizada para ela.


O código abaixo (comentado) faz o que se pede:

User badge image

Lucas

Há mais de um mês

//função em c++

//definindo a lista
typedef struct node{
  int elem;

  node* next;

}

// função que troca elementos

// usando a notação de que a lista é um ponteiro para o primeiro elemento

void change_elements( node *list, int N1, int N2){
  node *N1_tmp, *N2_tmp;

  for(int i=0; i<N1; i++, N1_tmp=list->next);

  for(int i=0; i<N2; i++, N2_tmp=list->next);

  int tmp = N1_tmp->elem;
  N1_tmp->elem = N2_tmp->elem;

  N2_tmp->elem = tmp;
return;
}

User badge image

Andre

Há mais de um mês

Nesse exercício vamos estudar listas encadeadas. Como o enunciado cita ponteiros, vamos utilizar a linguagem C.


Como não foi citada se a lista é simplesmente encadeada ou duplamente encadeada, vamos fazer para a simplesmente encadeada, que também funciona para a duplamente encadeada, mas não é otimizada para ela.


O código abaixo (comentado) faz o que se pede:

User badge image

Rafael

Há mais de um mês

OK lucas muito obrigado! consegui passar direto nessa matéria - rs grande abraço!

Essa pergunta já foi respondida por um dos nossos especialistas