Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * P10_buscarSecuencia.java
- * Escribe un método que se llame buscarSecuenciaInt() que recibe dos vectores de enteros,
- * el segundo es una secuencia de valores a buscar en el primer vector.
- * Devuelve el índice donde empieza la primera ocurrencia de la secuencia buscada.
- * Copiado de Antonio Cantos por Juan José Martínez Solano 29/11/2019
- */
- import java.util.Scanner;
- public class P10_buscarSecuencia {
- public static void main(String[] args) {
- int vector1[], vector2[];
- Scanner teclado = new Scanner(System.in);
- System.out.println("Introduce la dimensión del primer vector:");
- vector1 = new int[teclado.nextInt()];
- System.out.println("Introduce los valores del primer vector:");
- for (int i = 0; i < vector1.length; i++) {
- vector1[i] = teclado.nextInt();
- }
- System.out.println("Introduce la dimensión del segundo vector:");
- vector2 = new int[teclado.nextInt()];
- System.out.println("Introduce los valores del segundo vector:");
- for (int j = 0; j < vector2.length; j++) {
- vector2[j] = teclado.nextInt();
- }
- teclado.close();
- System.out.println(buscarSecuenciaInt(vector1, vector2));
- }
- public static int buscarSecuenciaInt(int vector1[], int vector2[]) {
- int a = 0, b = (int)vector2[0], i, sol = 0, sol2 = -1;
- //NO ENTIENDO UNA PUTA MIERDA
- for (i = 0; i < vector1.length; i++) {
- if (vector2.length > vector1.length - i) {
- break;
- }
- a = (int)vector1[i];
- if (a == b) {
- sol = 0;
- for (int j = 1; j < vector2.length; j++) {
- a = (int)vector1[i+j];
- b = (int)vector2[j];
- if(a != b)
- sol = 1;
- }
- if (sol == 0) {
- sol2 = i;
- break;
- }
- b = (int)vector2[0];
- }
- }
- return sol2;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment