ΠΠ°ΠΊ ΠΈΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ² Π² java
ΠΠ°ΠΊ ΡΠ΅Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ² int Π² Java?
Π― ΠΏΡΡΠ°ΡΡΡ ΡΠ΅Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ² int Π² Java.
ΠΡΠΎΡ ΠΌΠ΅ΡΠΎΠ΄ Π½Π΅ ΡΠ΅Π²Π΅ΡΡΠΈΡΡΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ².
30 ΠΎΡΠ²Π΅ΡΠΎΠ²:
Π§ΡΠΎΠ±Ρ ΠΏΠ΅ΡΠ΅Π²Π΅ΡΠ½ΡΡΡ ΠΌΠ°ΡΡΠΈΠ² int, Π²Ρ ΠΌΠ΅Π½ΡΠ΅ΡΠ΅ ΠΌΠ΅ΡΡΠ°ΠΌΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π½Π΅ Π΄ΠΎΡΡΠΈΠ³Π½Π΅ΡΠ΅ ΡΠ΅ΡΠ΅Π΄ΠΈΠ½Ρ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π²Ρ ΠΌΠ΅Π½ΡΠ΅ΡΠ΅ ΠΌΠ΅ΡΡΠ°ΠΌΠΈ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π΄Π²Π°ΠΆΠ΄Ρ, ΡΠ°ΠΊ ΡΡΠΎ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΡΠ°ΠΊΠΈΠΌ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π² ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠΌ ΡΠΏΠΈΡΠΊΠ΅.
Π Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ»ΡΡΠ°Π΅Π² Π³ΠΎΡΠ°Π·Π΄ΠΎ Π±ΡΡΡΡΠ΅Π΅ ΠΈ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½Π΅Π΅ ΠΏΡΠΈΠ΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ Π»Π΅Π³ΠΊΠΎ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ, ΡΠΆΠ΅ ΠΏΡΠΎΡΠ΅Π΄ΡΠΈΡ ΠΌΠΎΠ΄ΡΠ»ΡΠ½ΠΎΠ΅ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΡΠ΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΠΌΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ ΡΠ΅ΡΠ°ΡΡ Π²Π°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ.
Π― Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅Π³ΡΠ΅ ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ Π»ΠΎΠ³ΠΈΠΊΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ°, Π΅ΡΠ»ΠΈ Π²Ρ ΠΎΠ±ΡΡΠ²Π»ΡΠ΅ΡΠ΅ ΡΠ²Π½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅, ΡΡΠΎΠ±Ρ ΠΎΡΡΠ»Π΅ΠΆΠΈΠ²Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΌΠ΅Π½ΡΠ΅ΡΠ΅ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ ΡΠΈΠΊΠ»Π°.
Π― ΡΠ°ΠΊΠΆΠ΅ Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ ΡΡΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠ°Π΅ΠΌΠΎ, ΡΡΠΎΠ±Ρ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ Π² ΡΠΈΠΊΠ»Π΅ while.
Π‘ΡΠΎΠΈΠΌΠΎΡΡΡ-ΡΡΠΎ Π²ΡΠ΅Π³ΠΎ Π»ΠΈΡΡ ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°-ΡΠΏΠΈΡΠΊΠ°, ΠΈ Π½ΠΈΠΊΠ°ΠΊΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ.
ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π±ΡΠ»ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΎ Π² ΠΎΡΠ²Π΅ΡΠ΅ Π’Π°ΡΠΈΠΊΠ° ΠΈ ΠΈΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΎΡΠΎΠ², Π½ΠΎ Ρ Π΄ΡΠΌΠ°Ρ, ΡΡΠΎ ΡΡΠΎΡ ΠΎΡΠ²Π΅Ρ Π±ΡΠ» Π±Ρ Π±ΠΎΠ»Π΅Π΅ ΠΊΡΠ°ΡΠΊΠΈΠΌ ΠΈ Π±ΠΎΠ»Π΅Π΅ Π»Π΅Π³ΠΊΠΎ ΡΠ°Π·Π±ΠΈΡΠ°Π΅ΠΌΡΠΌ.
ΠΠ΄Π΅ΡΡ ΡΠΆΠ΅ Π΅ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡΠ²Π΅ΡΠΎΠ², Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΠΎΡΡΠ΅Π΄ΠΎΡΠΎΡΠ΅Π½Π½ΡΡ Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΌΠ°ΡΡΠΈΠ²Π° Π½Π° ΠΌΠ΅ΡΡΠ΅. ΠΠΎ Π΄Π»Ρ ΠΏΠΎΠ»Π½ΠΎΡΡ ΠΊΠ°ΡΡΠΈΠ½Ρ, Π²ΠΎΡ Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΠΏΠΎΠ΄Ρ ΠΎΠ΄, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠΉ ΠΏΠΎΡΠΎΠΊΠΈ Java Π΄Π»Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°:
ΠΠΎΡ ΠΊΠ°ΠΊ Ρ Π»ΠΈΡΠ½ΠΎ ΡΠ΅ΡΠΈΠ» Π±Ρ ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ. ΠΡΠΈΡΠΈΠ½Π° ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ ΡΠ°Π·ΡΠ΅ΡΠΈΡΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΡ Π»ΡΠ±ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°. Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π²Π°ΡΠΈ ΡΠ΅Π»ΡΠ΅ ΡΠΈΡΠ»Π°.
ΠΠ°Π΄Π΅ΡΡΡ, ΡΡ ΡΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΏΠΎΡΠ΅ΡΠΏΠ½Π΅ΡΡ ΠΈΠ· Π½Π΅Π³ΠΎ.
ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎ ΠΏΡΠΎΡΡΠΎ ΠΏΠ΅ΡΠ΅Π±ΠΈΡΠ°ΡΡ ΠΌΠ°ΡΡΠΈΠ² Π² ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅.
Π― Π½Π΅ ΡΠ²Π΅ΡΠ΅Π½, ΡΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΠ°ΡΠΎΠ½Π° Π΄Π΅Π»Π°Π΅Ρ ΡΡΠΎ vi ΡΡΠΎΡ Π²ΡΠ·ΠΎΠ² Collections.reverse(list); ΠΊΡΠΎ-Π½ΠΈΠ±ΡΠ΄Ρ Π·Π½Π°Π΅Ρ?
ΠΡΠ»ΠΈ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Ρ Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΈΠΌΠΈΡΠΈΠ²Π½ΡΠΌΠΈ Π΄Π°Π½Π½ΡΠΌΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, char, byte, int ΠΈ Ρ. Π΄.), ΡΠΎ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π·Π°Π±Π°Π²Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ XOR.
Π ΡΠ»ΡΡΠ°Π΅ Java 8 ΠΌΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠΎΡΠΎΠΊΠΈ Π΄Π»Ρ ΡΠ΅Π²Π΅ΡΡΠ° ΠΌΠ°ΡΡΠΈΠ²Π° ΡΠ΅Π»ΡΡ ΡΠΈΡΠ΅Π» ΠΊΠ°ΠΊ:
ΠΠΎΡ ΠΏΡΠΎΡΡΠΎΠ΅ ΠΈ Π±ΡΡΡΡΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅. ΠΠ°Π΄Π΅ΡΡΡ, ΡΡΠΎ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ!.
ΠΠ΅ Π±ΡΠ»ΠΎ Π±Ρ Π³ΠΎΡΠ°Π·Π΄ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΌΠ°Π»ΠΎΠ²Π΅ΡΠΎΡΡΠ½ΡΠΌ ΠΎΡΠΈΠ±ΠΈΡΡΡΡ, Π΄Π΅Π»Π°Ρ ΡΡΠΎ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ?
ΠΠΈΠΆΠ΅ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π° ΠΏΠΎΠ»Π½Π°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π»Ρ Π·Π°ΠΏΡΡΠΊΠ° Π½Π° Π²Π°ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΡΡΡΠ΅ΡΠ΅.
ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ XOR, ΡΡΠΎΠ±Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ temp Π²Π°Ρ ΠΊΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΊΠ°ΠΊ
Π‘ΠΌΠΎΡΡΠΈΡΠ΅ ΡΡΡ ΡΡΡΠ»ΠΊΡ Π΄Π»Ρ Π»ΡΡΡΠ΅Π³ΠΎ ΠΎΠ±ΡΡΡΠ½Π΅Π½ΠΈΡ:
ΠΠ΄Π΅ΡΡ ΠΏΡΠΎΡΡΠ°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ, ΡΡΠΎΠ±Ρ ΠΎΠ±ΡΠ°ΡΠΈΡΡ ΠΌΠ°ΡΡΠΈΠ² Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, ΠΏΠ»ΡΡ ΠΏΠΎΠ»Π½Π°Ρ/ΡΠ°ΡΡΠΈΡΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ°.
ΠΠΎΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΠΌΠΎΠ΄ΡΠ»ΡΠ½ΡΠΉ ΡΠ΅ΡΡ
Π Π΅ΡΠ΅Π½ΠΈΠ΅ Ρ o(n) Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡΡ ΠΈ O(1) ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅Π½Π½ΠΎΠΉ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡΡ.
ΠΡΡΡ Π΄Π²Π° ΡΠΏΠΎΡΠΎΠ±Π° ΡΠ΅ΡΠΈΡΡ ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ:
1. ΠΠ΅ΡΠ΅Π²Π΅ΡΠ½ΠΈΡΠ΅ ΠΌΠ°ΡΡΠΈΠ² Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅.
Π¨Π°Π³ 1. ΠΠΎΠΌΠ΅Π½ΡΠΉΡΠ΅ ΠΌΠ΅ΡΡΠ°ΠΌΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π² Π½Π°ΡΠ°Π»Π΅ ΠΈ ΠΊΠΎΠ½ΡΠ΅ ΠΈΠ½Π΄Π΅ΠΊΡΠ°.
Π¨Π°Π³ 2. Π£Π²Π΅Π»ΠΈΡΡΡΠ΅ Π½Π°ΡΠ°Π»ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠΌΠ΅Π½ΡΡΠΈΡΠ΅ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ.
ΠΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ΄Π° Π΄Π»Ρ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π° Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅: Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
2. Π Π΅Π²Π΅ΡΡΠΈΡΡΠΉΡΠ΅ ΠΌΠ°ΡΡΠΈΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ².
Π¨Π°Π³ 1. Π‘ΠΎΠ·Π΄Π°ΠΉΡΠ΅ Π½ΠΎΠ²ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ, ΡΠ°Π²Π½ΡΠΌ Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡ ΠΌΠ°ΡΡΠΈΠ²Ρ.
Π¨Π°Π³ 2. ΠΡΡΠ°Π²ΠΈΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π² Π½ΠΎΠ²ΡΠΉ ΠΌΠ°ΡΡΠΈΠ², Π½Π°ΡΠΈΠ½Π°Ρ Ρ Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, ΠΈΠ· Π΄Π°Π½Π½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Ρ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°.
ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ Π±ΡΠ΄Π΅Ρ O (n), Π° ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅Π½Π½Π°Ρ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ-O (n)
ΠΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ΄Π° Π΄Π»Ρ ΡΠ΅Π²Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π° Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ±ΡΠ°ΡΡ API ΠΈΠ· Java.
API ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΉ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΎΡ ΠΆΠ΅ ΠΎΠ±ΡΠ°ΡΠ½ΡΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π² ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅.
ΠΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ΄Π° Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ API ΠΊΠΎΠ»Π»Π΅ΠΊΡΠΈΠΉ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
ΠΠ°ΠΊ ΠΈΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ² Π² java
ΠΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΠΎΠΏΡΠ»ΡΡΠ½Π΅ΠΉΡΠΈΡ Π²ΠΎΠΏΡΠΎΡΠΎΠ² Π½Π° ΠΈΠ½ΡΠ΅ΡΠ²ΡΡ Π΄Π»Ρ java-Π΄Π΅Π²Π΅Π»ΠΎΠΏΠ΅ΡΠ° ΡΡΠΎ ΠΏΡΠΎΡΡΠ±Π° ΠΏΠ΅ΡΠ΅Π²Π΅ΡΠ½ΡΡΡ ΠΌΠ°ΡΡΠΈΠ². ΠΡΠΎ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΡ ΠΎΠΆΠ΅ Π½Π° Π²ΠΎΠΏΡΠΎΡ ΠΈΠ· ΠΏΡΠΎΡΠ»ΠΎΠΉ ΡΡΠ°ΡΡΠΈ, ΠΏΡΠΎ ΠΏΠ΅ΡΠ΅Π²ΠΎΡΠ°ΡΠΈΠ²Π°Π½ΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ, Π½ΠΎ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎ Π΄ΡΡΠ³ΠΎΠ΅. ΠΠΎΠΏΡΠΎΡ Π½Π΅ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ»ΠΎΠΆΠ½ΡΠΌ, Π²ΡΠ΅ ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΆΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠ°, ΠΏΠ΅ΡΠ΅Π±ΡΠ°ΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² ΠΎΡ ΠΊΠΎΠ½ΡΠ° Π΄ΠΎ Π½Π°ΠΆΠ°Π»Π° Π·Π°ΠΏΠΎΠ»Π½ΡΡ Π½ΠΎΠ²ΡΠΉ. ΠΡΠ΅, Π³ΠΎΡΠΎΠ²ΠΎ. ΠΠΎ Π½Π΅Ρ, ΠΌΡ ΠΆΠ΅ ΡΠΎΠ·Π΄Π°Π»ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² ΡΠΎΠ³ΠΎ ΠΆΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠ°, ΡΡΠΎ ΠΈ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ, ΡΡΠΎ ΡΡΠ»ΠΎΠΆΠ½ΡΠ΅Ρ Π½Π°ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ O(n). ΠΡ Π½Π΅ ΡΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π°ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅, Π΅ΡΠ»ΠΈ ΡΠ°Π·ΠΌΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΎΡΠ΅Π½Ρ Π±ΠΎΠ»ΡΡΠΎΠΉ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ 10 ΠΌΠ»Π½ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ²), Π° ΡΠ°Π·ΠΌΠ΅Ρ heap Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ. Π§ΡΠΎ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΡΡ ΡΠ΄Π΅Π»Π°ΡΡ? ΠΠ°ΠΊ ΡΠ»ΡΡΡΠΈΡΡ Π½Π°ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅? ΠΠΎΠΆΠ΅ΠΌ Π»ΠΈ ΠΌΡ ΠΏΠ΅ΡΠ΅Π²Π΅ΡΠ½ΡΡΡ ΠΌΠ°ΡΡΠΈΠ² Π½Π΅ ΡΠΎΠ·Π΄Π°Π²Π°Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ Π±ΡΡΡΠ΅Ρ? ΠΠ»Ρ Π½Π°ΡΠ΅ΠΉ Π·Π°Π΄Π°ΡΠΈ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ Ρ Π½Π°Ρ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ· integer (Π²ΠΎΠΎΠ±ΡΠ΅ Π½Π° ΠΈΠ½ΡΠ΅ΡΠ²ΡΡ Ρ ΠΎΡΠΎΡΠ°Ρ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ° Π·Π°Π΄Π°Π²Π°ΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ Π² ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΡ ΠΌΠ΅ΡΡΠ°Ρ , ΠΊΠ°ΠΊ Π³ΠΎΠ²ΠΎΡΡΡ Π·Π½Π°ΡΡΠΈΠ΅ Π»ΡΠ΄ΠΈ ΡΡΠΎ ΡΠ΅ΡΡΠ° Ρ ΠΎΡΠΎΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°). ΠΠ»ΡΡΠ΅Π²ΠΎΠ΅ ΡΡΡ ΠΏΠΎΠ½ΡΡΡ, ΡΡΠΎ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠ΅ΡΠ΅Π²Π΅ΡΠ½ΡΡΡ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ², ΠΌΡ Π½Π΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄ΡΡΠ³ΠΎΠΉ ΠΌΠ°ΡΡΠΈΠ², Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ΄Π½Ρ Π΄Π²Π΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅, Π²ΠΏΠΎΠ»Π½Π΅ Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎ. Π’Π°ΠΊ ΠΆΠ΅ Π½Π΅Π΄ΠΎΠΏΡΡΡΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠΎΡΠΎΠ½Π½ΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ ΠΈΠ»ΠΈ Java API ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΡ ΡΠ°Π±ΠΎΡΡ Π·Π° Π½Π°Ρ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΊΠ»Π°ΡΡΠ° java.util.Arrays, Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ Arrays.toString() ΡΡΠΎΠ±Ρ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡ ΠΌΠ°ΡΡΠΈΠ²Ρ. ΠΠΎΠ³Π΄Π° Π½Π°ΡΠΈ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ Π²ΡΡΡΠ½Π΅Π½Ρ ΠΏΡΠΈΡΡΡΠΏΠΈΠΌ ΠΊ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°ΡΠΈ.
ΠΠ΅ΡΠ²ΠΎΠ΅ ΡΡΠΎ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡ Π² Π³ΠΎΠ»ΠΎΠ²Ρ ΡΡΠΎ ΠΏΠ΅ΡΠ΅Π±ΡΠ°ΡΡ Π²ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈ ΠΏΠΎΠΌΠ΅Π½ΡΡΡ ΠΈΡ ΠΌΠ΅ΡΡΠ°ΠΌΠΈ. ΠΠ΅ΡΠ²ΡΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ, Π²ΡΠΎΡΠΎΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Ρ ΠΏΡΠ΅Π΄ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌ, ΠΈ Ρ.Π΄. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π²ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Ρ Π±ΡΠ΄ΡΡ ΠΏΠ΅ΡΠ΅Π²Π΅ΡΠ½ΡΡΡ Π±Π΅Π· ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π±ΡΡΡΠ΅ΡΠ°. ΠΠ»ΡΡΠ΅Π²Π°Ρ Π²Π΅ΡΡ Π·Π΄Π΅ΡΡ, ΠΊΠΎΡΠΎΡΡΡ Π½ΡΠΆΠ½ΠΎ Π΄Π΅ΡΠΆΠ°ΡΡ Π² Π³ΠΎΠ»ΠΎΠ²Π΅ ΡΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠΎ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΌΠ΅Π½ΡΡΡ ΠΌΠ΅ΡΡΠ°ΠΌΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π΄ΠΎ ΡΠΎΠ³ΠΎ ΠΌΠΎΠΌΠ΅Π½ΡΠ° ΠΊΠ°ΠΊ ΠΌΡ Π΄ΠΎΡΡΠΈΠ³Π½Π΅ΠΌ ΡΠ΅ΡΠ΅Π΄ΠΈΠ½Ρ ΠΌΠ°ΡΡΠΈΠ²Π°, ΠΈΠ½Π°ΡΠ΅ ΠΌΡ ΠΏΠΎΠ»ΡΡΠΈΠΌ ΡΠΎΡ ΠΆΠ΅ ΡΠ°ΠΌΡΠΉ ΠΌΠ°ΡΡΠΈΠ². ΠΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ Π·Π°ΠΊΠΎΠ½ΠΎΠΌΠ΅ΡΠ½ΡΠΉ Π²ΠΎΠΏΡΠΎΡ, Π° ΡΡΠΎ Π΅ΡΠ»ΠΈ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠΌΠ΅Π΅Ρ ΡΠ΅ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ²? Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π² ΡΠ΅ΡΠ΅Π΄ΠΈΠ½Π΅ ΠΌΠ°ΡΡΠΈΠ²Π° Π±ΡΠ΄ΡΡ Π΄Π²Π° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°, ΠΈ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΡΡ ΠΈΡ ΠΌΠ΅ΡΡΠ°ΠΌΠΈ, ΠΏΠΎΡΡΠΎΠΌΡ Π½Π°ΡΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ° Π±ΡΠ΄Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ index
ΠΠ°ΠΊ ΠΎΠ±ΡΠ°ΡΠΈΡΡ Π²ΡΠΏΡΡΡ ΠΌΠ°ΡΡΠΈΠ² Π² Java
ΠΠ·ΡΡΠΈΡΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΎΠ² ΠΊ ΠΈΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² Π² Java.
1. ΠΠ±Π·ΠΎΡ
Π ΡΡΠΎΠΉ Π±ΡΡΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ ΠΊΠ°ΠΊ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ² Π² Java.
ΠΡ ΡΠ²ΠΈΠ΄ΠΈΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΡΠ΄Π΅Π»Π°ΡΡ ΡΡΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΈΡΡΡΡ Java 8-ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ β Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΠ· Π½ΠΈΡ ΠΌΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠΉ ΠΌΠ°ΡΡΠΈΠ², Π° Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΡΠΉ.
2. ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ
ΠΡΠ½ΠΎΠ²Π½Π°Ρ ΠΈΠ΄Π΅Ρ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π² ΠΌΠ°ΡΡΠΈΠ²Π΅. ΠΡΠ°ΠΊ, Π΅ΡΠ»ΠΈ Π΄Π°Π½Π½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ²:
ΠΡ Ρ ΠΎΡΠ΅Π»ΠΈ Π±Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ:
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ.
3. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΡΡ Π΄Π»Ρ ΠΏΠ΅ΡΠ»ΠΈ
ΠΠ΅ΡΠ²ΡΠΉ ΡΠΏΠΎΡΠΎΠ±, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ ΠΏΠΎΠ΄ΡΠΌΠ°ΡΡ ΠΎ ΠΈΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π΄Π»Ρ ΠΏΠ΅ΡΠ»Ρ:
ΠΠ°ΠΊ ΠΌΡ Π²ΠΈΠ΄ΠΈΠΌ, ΠΊΠΎΠ΄ ΠΈΡΠ΅ΡΠΈΡΡΠ΅Ρ ΡΠ΅ΡΠ΅Π· ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Ρ ΠΌΠ°ΡΡΠΈΠ²Π°, ΠΈΠ·ΠΌΠ΅Π½ΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π² ΡΠΈΠΌΠΌΠ΅ΡΡΠΈΡΠ½ΡΡ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡ .
ΠΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ, ΡΡΠΎΠ±Ρ Π½Π΅ ΠΏΠΎΡΠ΅ΡΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π° Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΈΡΠ΅ΡΠ°ΡΠΈΠΈ.
4. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ API Java 8 Stream
ΠΡ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ API Stream:
ΠΠ΄Π΅ΡΡ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄ IntStream.Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡΠΎΠΊΠ° ΡΠΈΡΠ΅Π». ΠΠ°ΡΠ΅ΠΌ ΠΌΡ ΡΠΎΠΏΠΎΡΡΠ°Π²ΠΈΠΌ ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ Π½Π° ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ ΡΠ±ΡΠ²Π°Π½ΠΈΡ.
5. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Collections.reverse()
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ ΠΈΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ Collections.reverse () ΠΌΠ΅ΡΠΎΠ΄:
ΠΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΌΠΈ ΠΏΡΠΈΠΌΠ΅ΡΠ°ΠΌΠΈ, ΡΡΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠ°Π΅ΠΌΡΠΉ ΡΠΏΠΎΡΠΎΠ± Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π·Π°Π΄Π°ΡΠΈ.
6. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Apache Commons ΠΠ°Π½Π³
ΠΡΡΠ³ΠΎΠΉ Π²Π°ΡΠΈΠ°Π½Ρ ΠΈΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ² Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΠΏΠ°Ρ ΠΠΈΠΊΠΈΡΠΊΠ»Π°Π΄ ΠΠ°Π½Π³ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°. Π§ΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΅Π³ΠΎ, ΠΌΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ½Π°ΡΠ°Π»Π° Π²ΠΊΠ»ΡΡΠΈΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ:
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ArrayUtils ΠΊΠ»Π°ΡΡ Π΄Π»Ρ ΠΈΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ²:
ΠΠ°ΠΊ ΠΌΡ Π²ΠΈΠ΄ΠΈΠΌ, ΡΡΠΎ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎΠ΅.
7. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Google ΠΡΠ°Π²Π°
Π’ΠΎΠ³Π΄Π° ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ±ΡΠ°ΡΠ½ΡΠΉ ΠΌΠ΅ΡΠΎΠ΄ Π² ΠΡΠ°Π²Π° Π‘ΠΏΠΈΡΠΊΠΈ ΠΊΠ»Π°ΡΡ Π΄Π»Ρ ΠΈΠ½Π²Π΅ΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ²:
8. ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΡΠ΅ ΠΎΠ±ΡΠ°Π·ΡΡ ΠΊΠΎΠ΄Π°, ΠΏΠΎΠΊΠ°Π·Π°Π½Π½ΡΠ΅ Π·Π΄Π΅ΡΡ, ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ Π½Π° GitHub β ΡΡΠΎ ΠΏΡΠΎΠ΅ΠΊΡ Maven, ΠΏΠΎΡΡΠΎΠΌΡ Π΅Π³ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΈΠΌΠΏΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ Π² ΡΠΎΠΌ ΠΆΠ΅ ΠΎΠ±ΡΠ΅ΠΌΠ΅.
ΠΠ°ΠΊ ΠΏΠΎΠΌΠ΅Π½ΡΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° Π² ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅ Π² Java
ΠΠ°Π½Π½Π°Ρ ΡΡΠ°ΡΡΡ Π½Π°ΠΏΠΈΡΠ°Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ Vertex Academy. ΠΡΠΎ ΠΎΠ΄Π½Π° ΠΈΠ· ΡΡΠ°ΡΠ΅ΠΉ ΠΈΠ· Π½Π°ΡΠ΅Π³ΠΎ «Π‘Π°ΠΌΠΎΡΡΠΈΡΠ΅Π»Ρ ΠΏΠΎ Java.»
ΠΠ°ΠΏΠΈΡΠΈΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠ΅Π½ΡΠ΅Ρ ΠΌΠ΅ΡΡΠ°ΠΌΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΎΠ΄Π½ΠΎΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΈΠ· String Π² ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅. ΠΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² Π΄Π»Ρ Ρ ΡΠ°Π½Π΅Π½ΠΈΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ².
Π Π΅ΡΠ΅Π½ΠΈΠ΅:
ΠΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΊ Π·Π°Π΄Π°ΡΠ΅:
Π’ΡΡ Π΅ΡΡΡ a[i] ΠΈ ΠΌΠ°Π»ΠΎΠΏΠΎΠ½ΡΡΠ½ΠΎΠ΅ a[n-i-1]. ΠΠΎ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ n-i-1 ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ ΡΠΎΡΠΌΡΠ»Π° Π΄Π»Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΡ «ΠΏΡΠΎΡΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΠ³ΠΎ» ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΌΠ°ΡΡΠΈΠ²Π°:
ΠΡΠ»ΠΈ Π±Ρ ΠΌΡ ΠΈΠΌΠ΅Π»ΠΈ ΠΌΠ°ΡΡΠΈΠ², ΠΊΠΎΡΠΎΡΡΠΉ Π±Ρ ΡΠΎΡΡΠΎΡΠ» ΠΈΠ· ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² a, b, c, d, e ΠΈ f, ΡΠΎ Π΅ΡΡΡ ΠΌΠ°ΡΡΠΈΠ² ΠΈΠ· 6 ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² (n=6), «ΠΏΡΠΎΡΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΡΠΌ» (ΡΠΎ Π΅ΡΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠΌ a[n-i-1]) Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ Π±ΡΠ»ΠΈ Π±Ρ f Π΄Π»Ρ a, e Π΄Π»Ρ b ΠΈ d Π΄Π»Ρ c. Π¦ΠΈΠΊΠ» ΠΈΠ· ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ° ΠΊΠΎΠ΄Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ»ΡΡ Π±Ρ ΡΡΠΈ ΡΠ°Π·Π°, Π΄ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° d (i=0, 1, 2). ΠΡΠ°Π½ΠΈΡΠ° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΏΠΎΠΊΠ°Π·Π°Π½Π° ΠΎΡΠ°Π½ΠΆΠ΅Π²ΠΎΠΉ Π»ΠΈΠ½ΠΈΠ΅ΠΉ Π½Π° ΡΠΈΡΡΠ½ΠΊΠ΅.
Π’Π°ΠΊ, ΠΎΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΌΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡΡ ΡΠΈΠΊΠ»ΠΎΠΌ Π²Π΅ΡΡ ΠΌΠ°ΡΡΠΈΠ², ΡΡΠΎΠ±Ρ ΠΏΠΎΠΌΠ΅Π½ΡΡΡ Π΅Π³ΠΎ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΠΌΠ΅ΡΡΠ°ΠΌΠΈ.
Π Π°Π·Π²Π΅ΡΠ½ΡΡΡ ΠΌΠ°ΡΡΠΈΠ² Π·Π°Π΄ΠΎΠΌ Π½Π°ΠΏΠ΅ΡΠ΅Π΄?
5 ΠΎΡΠ²Π΅ΡΠΎΠ² 5
ΠΡ Π·Π°ΡΠΈΡΠ°Π΅ΡΠ΅ ΠΎΠ΄Π½ΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΈΠ· ΡΠΎΠ³ΠΎ ΠΆΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π°:
Π‘ Π½ΠΎΠ²ΡΠΌ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠΌ Π΅ΡΠ΅ ΠΏΡΠΎΡΠ΅:
Π ΠΏΠ΅ΡΠ²ΠΎΠΉ(ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠΈΡ ) ΠΈΡΠ΅ΡΠ°ΡΠΈΡΡ ΡΠΈΠΊΠ»Π°, Π·Π°ΠΌΠ΅Π½ΡΠ΅ΠΌΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΠΏΡΠΎΡΡΠΎ Π·Π°ΡΠΈΡΠ°Π΅ΡΡΡ Π·Π°ΠΌΠ΅Π½ΡΡΡΠΈΠΌ, Π° Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΠΎΠΏΠ°Π΄Π°ΡΡ Π½Π° Π΅Π³ΠΎ ΠΌΠ΅ΡΡΠΎ. Π’.Π΅. ΠΊΠΎΠ³Π΄Π° ΠΏΡΡΠ΅ΡΠΊΠ° ΠΈΠ· ΠΊΠΎΠ½ΡΠ° ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ Π² Π½Π°ΡΠ°Π»ΠΎ, ΡΠΎ Π΅Π΄ΠΈΠ½ΠΈΡΠ° Π½Π΅ ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ Π½Π° ΠΌΠ΅ΡΡΠΎ ΠΏΡΡΠ΅ΡΠΊΠΈ, Π° Π΄ΠΎΠ»ΠΆΠ½Π°.
ΠΡΠ΅ ΠΎΠ΄ΠΈΠ½ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ Π² ΠΊΠΎΠΏΠΈΠ»ΠΊΡ
ΠΡΡ Π΅ΡΡ ΠΈΡΠ΅ΡΠ΅ ΠΎΡΠ²Π΅Ρ? ΠΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ Π΄ΡΡΠ³ΠΈΠ΅ Π²ΠΎΠΏΡΠΎΡΡ Ρ ΠΌΠ΅ΡΠΊΠ°ΠΌΠΈ java ΠΌΠ°ΡΡΠΈΠ²Ρ ΠΈΠ»ΠΈ Π·Π°Π΄Π°ΠΉΡΠ΅ ΡΠ²ΠΎΠΉ Π²ΠΎΠΏΡΠΎΡ.
ΠΠΎΡ ΠΎΠΆΠΈΠ΅
ΠΠΎΠ΄ΠΏΠΈΡΠ°ΡΡΡΡ Π½Π° Π»Π΅Π½ΡΡ
ΠΠ»Ρ ΠΏΠΎΠ΄ΠΏΠΈΡΠΊΠΈ Π½Π° Π»Π΅Π½ΡΡ ΡΠΊΠΎΠΏΠΈΡΡΠΉΡΠ΅ ΠΈ Π²ΡΡΠ°Π²ΡΡΠ΅ ΡΡΡ ΡΡΡΠ»ΠΊΡ Π² Π²Π°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ RSS.
Π΄ΠΈΠ·Π°ΠΉΠ½ ΡΠ°ΠΉΡΠ° / Π»ΠΎΠ³ΠΎΡΠΈΠΏ Β© 2021 Stack Exchange Inc; ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΡΡ Π½Π° ΡΡΠ»ΠΎΠ²ΠΈΡΡ Π»ΠΈΡΠ΅Π½Π·ΠΈΠΈ cc by-sa. rev 2021.12.22.41046
ΠΠ°ΠΆΠΈΠΌΠ°Ρ Β«ΠΡΠΈΠ½ΡΡΡ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ cookieΒ» Π²Ρ ΡΠΎΠ³Π»Π°ΡΠ°Π΅ΡΠ΅ΡΡ, ΡΡΠΎ Stack Exchange ΠΌΠΎΠΆΠ΅Ρ Ρ ΡΠ°Π½ΠΈΡΡ ΡΠ°ΠΉΠ»Ρ cookie Π½Π° Π²Π°ΡΠ΅ΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅ ΠΈ ΡΠ°ΡΠΊΡΡΠ²Π°ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ Π½Π°ΡΠ΅ΠΉ ΠΠΎΠ»ΠΈΡΠΈΠΊΠΎΠΉ Π² ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠΈ ΡΠ°ΠΉΠ»ΠΎΠ² cookie.