1
Preparar su matriz. Si usted no tiene un objeto de matriz en el programa, cree una ahora :
//crear una matriz y especificar la longitud
int [ ] someNumbers = new int [ 13 ] ;
//instancia de la matriz con algunos elementos
for (int i = 0 ; i < someNumbers.length , i + + )
someNumbers [ i ] = i;
este ejemplo se utiliza enteros de tipo primitivo , pero el método funciona para matrices de cualquier tipo , incluidos los objetos . Para este ejemplo, la matriz contiene inicialmente los números que van de cero hacia arriba
2
Crear variables para realizar un seguimiento de su posición a medida que avanza el conjunto de los extremos : .
//uno comienza en la primera posición , el otro en la última
leftPosn int = 0 ;
int rightPosn = someNumbers.length - 1 ;
el algoritmo se va a utilizar un bucle, cada iteración de las cuales consistirá en el intercambio de dos elementos , comenzando por el canje de la primera y la última , continuando hacia el centro.
3
Crear un lazo para su algoritmo. Se puede utilizar cualquier tipo de bucle tiene más sentido para usted, pero en este caso la opción más simple es un bucle while :
//comprobar si las posiciones de izquierda y derecha tienen todavía para llegar a la media
< p > while ( leftPosn < rightPosn )
{
contenido //loop va aquí
}
el bucle continuará siempre y cuando la izquierda y la derecha contadores no han llegado a la mitad de la matriz.
4
Intercambia cada par de elementos. Dentro de su bucle while (al "contenido loop va aquí ") :
//copiar el elemento a la izquierda de la pareja en una nueva variable
int tempCopy temporal = someNumbers [ leftPosn ] ;
//copiar el elemento más a la derecha en la posición más a la izquierda
someNumbers [ leftPosn ] = someNumbers [ rightPosn ] ;
/* copiar el elemento a la izquierda original del temporal
variables
* en la posición más a la derecha * /foto
someNumbers [ rightPosn ] = tempCopy ; .
la variable temporal sólo debe estar disponible en cada iteración del bucle
5
Mueva sus variables de control de posición a lo largo de cada vez que se ejecuta el bucle . En el bloque de código bucle while ( después del intercambio) :
//incremento y decremento posiciones para seguir trabajando hacia el centro
leftPosn + + ;
rightPosn - ;
prueba su código mediante la ejecución de su programa y dar salida a los contenidos de la matriz de la siguiente manera ( después del bucle while) :
for (int j = 0 ; j < someNumbers.length ; j + +)
System.out.println ( someNumbers [ j ] ) ;