|
|
Julkaistu 8.1.2019 9.17.25
|
|
|

Tämän vuoden työnhakumatka on melkein ohi, itse asiassa haastattelua ei ole ollut kuukauteen tai kahteen, mietin asiaa tai kirjasin seuraavat yritykset, muista vain ne, jotka muistan. Tehtäväni on Java-tutkimus- ja kehitysinsinööri, joten siihen sisältyy kaikki tämän alan osa-alueet.
Harjoittelu
1. Morgan Stanley
Ensimmäinen haastattelu oli Morgan... Haastattelija on todella mukava, ja pääkysymykset ovat esitettyjä: (1) Esittele projekti ja kerro osasta, jonka teit (esittelyn jälkeen tajusin, että se mitä tein oli liian matala, ja minun täytyy vielä valmistautua) (2) Polymorfismi. C++:ssa virtuaalifunktiot, virtuaalifunktioiden uudelleenkirjoittaminen johdetuissa luokissa, miten tiedän ajonaikaisesti, missä aliluokassa toimin? (3) Mitkä ovat yleisimmin käytetyt kokoelmat Javalla? V: Lista, mukaan lukien ArrayList ja LinkedList. ArrayList toteutetaan sisäisesti taulukoilla, jotka voivat muuttaa pituutta. LinkedList on linkitetyn listan toteutus, eikä sen pituutta voi muuttaa. K: Tarkoitatko, että yleensä määrittelet LinkedListin pituuden, esimerkiksi 10, ja sitten ylität sen? V: Ei, LinkedListin pituutta ei tarvitse määritellä, jos sitä ei ole määritelty, sen pitäisi olla kone, joka määrittää, kuinka paljon tilaa LinkedList voi korkeintaan vapauttaa. Lisään vain dataa niin paljon kuin tarvitsen. K: Jos yhteenlaskuoperaatioita on paljon, mitä ongelmia kohtaat, on mahdotonta lisätä rajattomasti tilaa sinulle V: Kyllä... Joten on tietty vaihteluväli, mielestäni koneen pitäisi määrittää, kuinka paljon tilaa LinkedListillä voi olla, 32- ja 64-bittisten koneiden pitäisi olla erilaisia (Meng, itse asiassa en tiedä). K: Käytätkö muita kokoelmia säännöllisesti? Vastaus: Aseta, pääasiassa HashSet, TreeSet, LinkedHashSet, ja selitä sitten näiden kolmen erot K: Analysoi HashSet- ja TreeSet-ryhmien, insertsien, hakujen jne. monimutkaisuutta. Vastaus: HashSetin tulisi liittyä sen tiivisteeseen, jos se on tavallinen hajautuskoodi, se voi aiheuttaa paljon ristiriitoja, jolloin linkitetty lista on pidempi ja linkitetyn listan läpikäyminen haussa hitaammin, mutta käytät optimointimenetelmiä ristiriitojen ratkaisemiseen, kuten toissijaisen havaitsemisen tai vastaavan, ristiriitojen vähentämiseen, sen pitäisi olla nopeampi, punainen ja musta puu käytetään TreeSetissä, haun ja lisäämisen järjestys tulisi olla O(log(N))... Sitten on toinen kysymys... En pyytänyt enempää.
|
|