999 preguntas de prueba reales
Déjame decirte el motivo de este problema. En primer lugar, la respuesta exacta a esta pregunta es O(m n), pero no hay opciones, por lo que solo puedo elegir la opción que mejor coincida con la respuesta exacta, incluso si no es necesariamente correcta.
Supongamos que m es mayor que n,
Si m está muy cerca de n, entonces o(m * n)~ = o(N2)> gt; =O(2n), entonces b es incorrecto.
Si m gt gtn, entonces O(m n)> gtO(n), O(m n)> gtO(min(m, n)) =O(n), entonces A y C son incorrectos.
o(n); d. Si m está muy cerca de n, entonces O(m n)~=O(2n) es aproximadamente igual a O(n); ) también es aproximadamente igual a O(max(m,n))=O(m).
El problema de fusionar esta lista enlazada ordenada, si se organiza en el orden original, es O(min(m, n)) en el mejor de los casos y O(m n) en el peor. Si los organiza en orden inverso al orden original, el mejor caso es O (m n) y el peor caso es O (m n).
Al principio, discutimos el peor de los casos. Comencemos con el mejor de los casos. Por ejemplo, la lista vinculada 1 es 100 ~ 999 (900 números, m = 900), la lista vinculada 2 es 0 ~ 99 (100 números, n = 100) y el número de comparación completo es 65438.