|
|
Publicado en 8/1/2019 9:17:25
|
|
|

El proceso de búsqueda de empleo de este año está casi terminado, de hecho, no ha habido entrevistas en uno o dos meses, lo he pensado o he registrado las siguientes empresas, solo recuerdo las que puedo recordar. Mi puesto es ingeniero de investigación y desarrollo en Java, así que implica todos los puntos de conocimiento en esta área.
Pasantía
1. Morgan Stanley
La primera entrevista fue Morgan... El entrevistador es muy amable, y las preguntas principales que se hacen: (1) Presenta el proyecto y habla sobre la parte que hiciste (después de la introducción, me di cuenta de que lo que hice era demasiado bajo y que aún tenía que prepararme) (2) Polimorfismo. En C++, funciones virtuales, reescribir funciones virtuales en clases derivadas, ¿cómo sé en tiempo de ejecución en qué subclase estoy ejecutando? (3) ¿Cuáles son las colecciones más utilizadas en Java? R: Lista, incluyendo ArrayList y LinkedList. ArrayList se implementa internamente mediante arrays, que pueden cambiar de longitud. LinkedList es una implementación de lista enlazada y no puede cambiarse en longitud. P: ¿Quieres decir que generalmente defines la duración de un LinkedList, digamos 10, y luego la superas? R: No, no es necesario especificar la longitud de LinkedList; si no está definida, debería ser la máquina la que determine cuánto espacio puede liberar como máximo tu LinkedList. Simplemente añado datos en la medida que necesito. P: Si hay muchas, muchas operaciones de sumanda, ¿qué problemas encontrarás? Es imposible añadirte espacio ilimitado R: Sí... Así que hay un cierto rango, creo que debería determinarse por la máquina cuánto espacio máximo puede tener LinkedList, las máquinas de 32 bits y las de 64 bits deberían ser diferentes (Meng, en realidad no lo sé). P: ¿Hay otras colecciones que utilices regularmente? Respuesta: Set, principalmente HashSet, TreeSet, LinkedHashSet, y luego explica las diferencias entre estos tres P: Analizar la complejidad de los HashSets y TreeSets, insertos, consultas, etc. Respuesta: HashSet debería estar relacionado con su hash, si es solo un código hash ordinario, puede causar muchos conflictos, de modo que la lista enlazada será más larga y será más lento recorrer la lista enlazada durante la búsqueda, pero se usan métodos de optimización para resolver conflictos, como la detección secundaria o algo similar, reducir conflictos, debe ser más rápido, el árbol rojo y negro dentro de TreeSet debe ser O(log(N))... Entonces es otra pregunta... No pregunté más.
|
|