day06-Métodos y matrices Java (2) tarea

1. Dado un número entero de matrices y un valor objetivo objetivo, encuentre los dos enteros cuya suma es el valor objetivo en la matriz
y devuelva su índice de matriz, suponiendo que cada entrada corresponderá solo a una respuesta
( Debido a que son dos números, hay dos valores de subíndice, por lo que este método devuelve un int [], que contiene el índice de matriz correspondiente a los dos enteros)

2. Dada una matriz, mueva los elementos en la matriz hacia la derecha por k posiciones, donde k es un número no negativo.

Ejemplo
de entrada: [6, 7] y k = 3
de salida: [5,6,7,1,2,3,4]
Explicación:
derecho de desplazamiento cíclico uno: [7 , 1,2,3,4,5,6]
Girar a la derecha para rotar 2 bits: [6,7,1,2,3,4,5]
Girar a la derecha para mover 3 pasos: [5,6,7,1 , 2,3,4]

Respuesta:

1)

 

 

 

 

1  paquete com.day006;
 2  
3  import java.util.Arrays;
 4  
5  / * 
6  * 1. Dado un número entero de matrices y un valor objetivo objetivo,
 7  * Encuentre la suma en la matriz como valor objetivo Los dos enteros,
 8  * y devuelven sus subíndices de matriz, suponiendo que cada entrada solo corresponderá a una respuesta
 9     (porque son dos números, por lo que hay dos valores de subíndice, por lo que este método devuelve un int [],
 10           contiene índices de matriz correspondientes a dos enteros)
 11   * / 
12  public  class Demo1 {
 13      public  static  void main (String [] args) {
 14          int [] arr = {1,5,4,6,3 };
 15          int [] a = findAdd (arr, 10 );
16          System.out.println (Arrays.toString (a));
17      }
 18      
19      public  static  int [] findAdd ( int [] arr, int target) {
 20          int [] printarr = new  int [2 ];
21          para ( int i = 0; i <longitud de arr; i ++ ) {
 22              para ( int j = i + 1; j <longitud de arr; j ++ ) {
 23                  if (arr [j] == target - arr [i ]) {
 24                      printarr [0] = i;
25                     printarr [1] = j;
26                  }
 27              }
 28          }
 29          return printarr;
30      }
 31 }

2)

 

 

 

 

 

 

1  paquete com.day006;
 2  
3  import java.util.Arrays;
 4  
5  / * 
6  * 2. Dada una matriz, mueva los elementos en la matriz hacia la derecha por k posiciones, donde k es un número no negativo.
7  
8  Ejemplo  
 9  Entrada: [1,2,3,4,5,6,7] yk = 3
 10  Salida: [5,6,7,1,2,3,4]
 11  Explicación:
 12  ciclos a la derecha Mover 1 bit: [7,1,2,3,4,5,6]
 13  Ciclo a la derecha para mover 2 bits: [6,7,1,2,3,4,5]
 14  Ciclo a la derecha para mover 3 pasos: [5,6,7,1,2,3,4]
 15   * / 
16  public  class Demo2 {
 17  
18      public  static  void main (String [] args) {
 19         int [] a = {1,2,3,4,5,6,7 };
 20          // Llame al método moveCycle y use el movimiento de cadena para lograr la salida 
21          String move = Arrays.toString (moveCycle (a, 3 ));
 22          System.out.println (move);
 23      }
 24      
25      public  static  int [] moveCycle ( int [] arr, int step) {
 26          int len = arr.length; // longitud de matriz de arr matriz
 27          // nuevo steparr Matriz, utilizada para mantener la matriz después de mover la posición 
28          int [] steparr = new  int [len];
 29          for ( inti = 0; i <len; i ++ ) {
 30              if ((i + step)> (len-1 )) {
 31                  // Si el valor del índice de la matriz steparr (i + step) es mayor que el valor del índice de la matriz arr array,
 32                  // El elemento se desplaza hacia el frente, y la longitud de la matriz de arr se resta,
 33                  // El valor de índice de steparr se convierte en (i + step-len) 
34                  steparr [i + step-len] = arr [i];
 35              }
 36              más {
 37                  // valor de índice de la matriz steparr 
38                  steparr [i + paso] = arr [i];
 39              }
 40              
41          }
 42          return steparr;
 43      }
44  
45 }

 

Supongo que te gusta

Origin www.cnblogs.com/dust2017/p/12705267.html
Recomendado
Clasificación