Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/04/2013, 13:14
okawa
 
Fecha de Ingreso: mayo-2009
Mensajes: 69
Antigüedad: 15 años
Puntos: 0
.class Expected en un algoritmo Divide y Venceras

Buenas

Tengo que implementar en Java un algoritmo de Divide y venceras, sobre el siguiente ejercicio:

Nos dan una matriz de n filas y m columnas, mas un vector de tamaño n (igual al numero de filas de la matriz). Cada fila de la matriz tiene una serie de numeros enteros ordenados de manera decreciente

Ejemplo: 90 | 80 | 70 | 60 | 50

Lo que tenemos que hacer es buscar el valor que haya en el vector en la posicion v[i] en la fila[i] de la matriz. Y devolver la primera fila donde esto ocurra.

En el ejercicio las tres primeras filas, esto no ocurre, es decir, la primera coincidencia sucede en la 4ª fila y 4ª posicion en el vector, que seria fila[3] y vector[3].


Tenemos que usar un algoritmo de divide y venceras, asi que como las filas estan ordenadas, yo lo que he pensado es la fila la divido en dos, y miro si la mitad es mayor o menor que el valor que estoy buscando, y si la mitad es mayor, descarto la parte izquierda y vuelvo a dividir y si la mitad es menor, descarto la parte derecha y vuelvo a dividir, asi hasta que de con el valor.

El problema es que llevo muchooo sin tocar java y la teoria la llevo bien, pero a la hora de implementar el codigo nose porque BlueJ me lanza este error .class Expected

Código:
import java.util.*;
import java.io.*;
public class dyv {

 static void mDyV (int m[][],int []v, int inicio, int fin)  {
    
 }
 
 public static void main(String[] args) {
     int m[][]  = {{8,7,6,5,4,3,2,1},{16,14,12,10,8,6,4,2},{90,80,70,60,50,40,30,20},{20,15,11,9,7,3,2,1},{22,20,11,10,8,6,5,4},{17,16,15,13,9,7,3,1},{64,32,16,8,4,2,1,0},{12,10,8,6,5,4,3,2},{90,72,64,56,48,40,32,24},{30,27,24,21,18,15,12,9}};
    int v[] = {9,13,24,15,22,1,8,2,72,18};
    int inicio=0;
    int fin=m.length;
    int resultado=this.mDyV(m[][],v[],inicio,fin);
 } 
}
Dentro del metodo mDyV seria donde lo llamaria a el mismo de manera recursiva para ir divividiendo las mitades.

¿Porque me da el error a la hora de compilar con BlueJ de .class Expected ?

Gracias y saludos.