Seuraava artikkeli auttaa sinua: Java-ohjelmointivinkkejä haastatteluihin
Tulosta kaikki jonon elementit.
Jos jonossa on objekteja, System.out.println(queue) tulostaa hash-koodit. Joten sen sijaan voit käyttää:
1 2 3 4 | for(Kokonaisluku x : jono) { System.out.print(x + “,”); } System.out.println(); |
Array Mukautettu lajittelu Lambdalla
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | //Lajittele 2D-taulukon ensimmäisen elementin perusteella. int[][] intervallit; Arrays.sort(intervals, (a,b) -> a[0] – b[0]); Arrays.sort(intervals, (a,b) -> {return (a[0] – b[0]);}); //Lajittele kuukauden pituuden perusteella. merkkijono[] kuukautta = {“Tammikuu”,”Helmikuu”,”Maaliskuu”,”Huhtikuu”}; Arrays.sort(kuukaudet, (a, b) -> a.length() – b.length()); Arrays.sort(months, Comparator.comparingInt(String::length)); Arrays.sort(kuukausia, (merkkijono a, merkkijono b) -> { return Kokonaisluku.signum(a.length() – b.length()) }; ); |
Numeroiden jäsentäminen merkkijonosta.
1 2 3 4 5 6 7 8 9 | julkinen staattinen void main(String[] args) { Merkkijono s = “2”; int a = s.charAt(0) – ‘0’; System.out.println(a); //tulos = 2 int b = s.charAt(0); System.out.println(b); //tulos = 50 } |
Kokonaisluvun jäsentäminen merkkijonosta.
1 | Voit käyttää Integer.valueOf(s) |
Tulosta kokonaisluku binäärimuodossa tai missä tahansa perustassa
1 2 3 4 5 | int i = 20; Integer.toBinaryString(i); //Tulostaa binäärisessä Integer.toString(i, 2); //Tulostaa Base 2:ssa eli Binary Integer.toString(i, n); //Tulokset Base n:ssa |
Java TreeMap.
floorKey() : floorKey-menetelmää käytetään palauttamaan näppäinvastaavuus, joka liittyy suurimpaan avaimeen, joka on pienempi tai yhtä suuri kuin annettu avain, tai null, jos sellaista avainta ei ole.
Map.Entry floorEntry(): Menetelmää floorEntry(K key) käytetään palauttamaan avainarvovastaavuus, joka liittyy suurimmalle avaimelle, joka on pienempi tai yhtä suuri kuin annettu avain, tai nolla, jos sellaista avainta ei ole. maximumKey() : TreeMap-luokan enimmäisavain-funktio palauttaa pienimmän avaimen, joka on suurempi tai yhtä suuri kuin annettu avain tai nollan, jos tällainen avain puuttuu.
Lisävinkkejä ohjelmointiin
- Binäärihaussa elementin lisäyspaikka ei ole muuta kuin ‘alku’ (eli paluualoitus) binäärihaun iteratiivisessa versiossa. Lisää paikkaongelman käyttäminen auttaa ratkaisemaan monia samanlaisia binäärihakuongelmia.
- Java pitkä kantama voi olla -10^18 – 10^18 (tarkasti: -9,223,372,036,854,775,808 – +9,223,372,036,854,775,807)
- Jos yli kahden merkin esiintymien määrä on pariton, et voi muodostaa siitä palindromia.
- Jos järjestyksellä ei ole väliä, palindromeille voidaan käyttää laskentatapaa.
- Matriisissa nykyinen diagonaali voidaan tunnistaa int currDiagonal = rivi – col; int currAntiDiagonal = rivi + sarake;
- Jotta graafi olisi kelvollinen puu, sillä on oltava täsmälleen n – 1 reunaa. Vähemmän, eikä sitä voi mitenkään yhdistää kokonaan. Enemmän, ja sen täytyy sisältää jaksoja. Lisäksi, jos graafi on täysin yhdistetty ja sisältää täsmälleen n – 1 reunaa, se ei voi sisältää sykliä, ja siksi sen on oltava puu!
- Joissakin kysymyksissä he pyytävät MOD:ta (10^9 + 7), jos alue on korkea. Siinä tapauksessa voit määrittää modiksi int MOD = (1e9 + 7). Vastaus on x % MOD.
- Rekursiivisen funktion aikamonimutkaisuus on : O(Haarojen määrä ^ kunkin haaran syvyys).