[Algoritmo] gana la segunda pregunta del foro 4: una matriz bidimensional de encontrar

trabajo informal

(La longitud de cada matriz unidimensional de los mismos), cada fila de izquierda a derecha en el orden de ascendente en orden, para ordenar cada columna en una matriz de dos dimensiones con el fin de aumentar de arriba a abajo. Una función completa, entran en una matriz tal de dos dimensiones y un número entero, se determina si la matriz contiene el número entero.

func Find(board [][]int, target int) bool {}

El pensamiento intuitivo

Encuentra el pensamiento binario, la reducción de Look.

Piense en cómo

Mira contracción.

codificación de las ideas

¿Cuántas líneas: rlen: = len (bordo)
el número de columnas: CLEN: = len (bordo [ 0])

El valor máximo de los índices de fila y columna: rlen-1, Clen-1

Encuentra la esquina superior derecha: inicialización
R: índice de la fila, la primera fila, 0
C: índice de la columna, última columna, Clen-1

) :( condiciones continúan para encontrar la última es la última línea puede seguir para encontrar el
índice de la fila (de subida): r <rlen
índice de la columna (decreciente): c> = 0

complejidad del tiempo (TODO)

  • m fila, n-columna:
    R ^ de 0 a m-1, c m + n Tiempos de ejecución de n-1 0. ciclo a un máximo, la O (m + n)

Supongo que te gusta

Origin www.cnblogs.com/yudidi/p/12350645.html
Recomendado
Clasificación