dúvida busca sequencial

5 respostas
J

e ae povo do java!
vim pedir ajuda a vocês com uma questão que caiu em uma prova e eu não tive ideia de como fazer.

1. public class TestSearch{ 2. public static void main (String []args){ 3. int[] a={22,33,44,55,66,77,88,99}; 4. Nome_classe.DuplicatingArrays.print(a); 5. System.out.println ("busca (a,44):" +search (a,44)); 6. System.out.println ("busca (a,50):" +search (a,50)); 7. System.out.println ("busca (a,77):" +search (a,77)); 8. System.out.println ("busca (a,100):" +search (a,100)); 9. } 10. public static int search (int[] a, int x){ 11. for (int i=0; i<a.length; i++){ 12. if(a [i] = xx){ 13. return i; 14. } 15. } 16. } 17. }


*Nota:
o algorítmo de busca sequencial possui uma complexidade N (onde N é o numero de elementos manipulados). Se uma busca sequencial toma 50ms para um array de 10.000 elementos, quanto será para 20.000 elementos?

*Elaborar o tempo consumido para buscar 10.000 elementos e 20.000 gerados pela classe Random do Java via gerenciador de tarefas ou outra ferramenta do seu sistema operacional

Quando compilo o cód, aparece uns erros:

  • na linha if(a [i] = xx){
    citando: cannot find symbol variable xx

e acusa que o packpage Nome_classe does not exist.

Me deem uma ajuda… por favor

5 Respostas

K_F


Quando compilo o cód, aparece uns erros:

  • na linha if(a [i] = xx){
    citando: cannot find symbol variable xx

e acusa que o packpage Nome_classe does not exist. NÃO ENCONTROU O QUE VOCÊ DECLAROU NA LINHA 4.

Me deem uma ajuda… por favor

Para fazer a comparação você deve usar o == . A variável xx não foi declarada, acredito que esteja querendo usar X, passado como argumento no método.
Veja a alteração na linha 12.
Na linha 4 não entendi o que tentou fazer, também sou iniciante,
teste ai.

Abraço, Fabrício.

1. public class TestSearch{  
   2.    public static void main (String []args){  
   3.       int[] a={22,33,44,55,66,77,88,99};  
   4.//       Nome_classe.DuplicatingArrays.print(a);  
   5.       System.out.println ("busca (a,44):" +search (a,44));  
   6.       System.out.println ("busca (a,50):" +search (a,50));  
   7.       System.out.println ("busca (a,77):" +search (a,77));  
   8.       System.out.println ("busca (a,100):" +search (a,100));  
   9.    }  
  10.    public static int search (int[] a, int x){  //ARGUMENTO X, VALOR PASSADO AO MÉTODO PARA BUSCA NO VETOR.
  11.       for (int i=0; i<a.length; i++){  
  12.          if(a [i] == x){  //ALTERAÇÃO AQUI.
  13.             return i;  
  14.          }  
  15.       }  
  16.    }  
  17. }
J

com essa alteração continua os mesmos erros quando compilo o cód.

- na linha if(a [i] == xx){
citando: cannot find symbol variable xx

e acusa que o packpage Nome_classe does not exist.

K_F

Você tem certeza que leu o que escrevi no outro post? :?

Reilander

substitua o “=” por “==”
substitua o “xx” por “x”
cheque o seu package, pode nao estar de acordo com o pacote onde a classe estah.

K_F

Foi o que eu disse…
O package pode estar se referindo a Nome_classe.DuplicatingArrays.print(a); que está na linha 4.

Eu copiei o código e fiz algumas alterações, está funcinando.

Ele pode dar um erro de retorno, porque o método foi declarado para retornar um inteiro. O retorno está declarado apenas dentro do if… se não entrar nesta instrução de seleção ele não retornará nada.

Criado 14 de abril de 2008
Ultima resposta 15 de abr. de 2008
Respostas 5
Participantes 3