|
|
Zverejnené 8. 1. 2019 9:17:25
|
|
|

Tohtoročná cesta za hľadaním práce sa takmer končí, vlastne už mesiac či dva nebol žiadny pohovor, premýšľal som o tom alebo som si zaznamenal nasledujúce spoločnosti, pamätám si len tie, na ktoré si pamätám. Moja pozícia je Java R&D inžinier, takže zahŕňa všetky vedomosti v tejto oblasti.
Stáž
1. Morgan Stanley
Prvý rozhovor bol Morgan... Moderátor je veľmi milý a hlavné otázky: (1) Predstavte projekt a porozprávajte o časti, ktorú ste urobili (po úvode som si uvedomil, že to, čo som urobil, bolo príliš nízke, a stále sa musím pripraviť) (2) Polymorfizmus. V C++, virtuálnych funkciách, prepisovaní virtuálnych funkcií v odvodených triedach, ako zistím, v ktorej podtriede bežím za behu? (3) Aké sú bežne používané kolekcie v Jave? Odpoveď: Zoznam, vrátane ArrayList a LinkedList. ArrayList je implementovaný interne pomocou polí, ktoré môžu meniť dĺžku. LinkedList je implementácia prepojeného zoznamu a jeho dĺžka sa nedá meniť. Otázka: Myslíte tým, že zvyčajne definujete dĺžku LinkedListu, povedzme 10, a potom ju prekročíte? Odpoveď: Nie, nie je potrebné špecifikovať dĺžku LinkedListu, ak nie je definovaný, mal by to byť stroj, ktorý určuje, koľko miesta môže váš LinkedList uvoľniť. Jednoducho pridávam dáta v miere, do akej potrebujem. Otázka: Ak je veľa, veľa operácií pridávania, aké problémy vás čakajú, je nemožné pridať neobmedzený priestor pre vás Odpoveď: Áno... Takže existuje určitý rozsah, myslím, že by mal stroj určiť, koľko miesta môže mať maximálny LinkedList, 32-bitové a 64-bitové stroje by mali byť odlišné (Meng, vlastne neviem). Otázka: Sú nejaké ďalšie kolekcie, ktoré pravidelne používate? Odpoveď: Nastavte, hlavne HashSet, TreeSet, LinkedHashSet, a potom vysvetlite rozdiely medzi týmito tromi Otázka: Analyzujte zložitosť hashsetov a stromových setov, insertov, vyhľadávaní a podobne. Odpoveď: HashSet by mal súvisieť so svojím hashom, ak je to len obyčajný hash kód, môže to spôsobiť veľa konfliktov, takže prepojený zoznam bude dlhší a prehľadávanie prepojeného zoznamu bude pri vyhľadávaní pomalšie, ale na riešenie konfliktov, ako je sekundárna detekcia alebo niečo podobné, použijete optimalizačné metódy na riešenie konfliktov, znížite konflikty, malo by to byť rýchlejšie, červeno-čierny strom použitý v TreeSet, poradie vyhľadávania a vkladania by malo byť O(log(N))... Potom je tu ďalšia otázka... Už som sa nepýtal.
|
|