Π“Π»ΠΎΠ±Π°Π»ΠΈΡ‚Π΅ са ΡΡŠΠΊΡ€ΠΎΠ²ΠΈΡ‰Π° ΠΌΠ΅Ρ‡ΠΎΠ²Π΅ Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ. Π Π°Π·Ρ€Π΅Π΄Π΅Π½ΠΈ масиви. Част 3

Π“Π»ΠΎΠ±Π°Π»ΠΈΡ‚Π΅ са ΡΡŠΠΊΡ€ΠΎΠ²ΠΈΡ‰Π° ΠΌΠ΅Ρ‡ΠΎΠ²Π΅ Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ. Π Π°Π·Ρ€Π΅Π΄Π΅Π½ΠΈ масиви. Част 3Π’ ΠΏΡ€Π΅Π΄ΠΈΡˆΠ½ΠΈΡ‚Π΅ части1, 2) Π³ΠΎΠ²ΠΎΡ€ΠΈΡ…ΠΌΠ΅ Π·Π° Π³Π»ΠΎΠ±Π°Π»ΠΈ ΠΊΠ°Ρ‚ΠΎ Π΄ΡŠΡ€Π²Π΅Ρ‚Π°, Π² Ρ‚ΠΎΠ·ΠΈ Ρ‰Π΅ Ρ€Π°Π·Π³Π»Π΅ΠΆΠ΄Π°ΠΌΠ΅ Π³Π»ΠΎΠ±Π°Π»ΠΈΡ‚Π΅ ΠΊΠ°Ρ‚ΠΎ Ρ€Π΅Π΄ΠΊΠΈ масиви.

ОскъдСн масив Π΅ Π²ΠΈΠ΄ масив, Π² ΠΊΠΎΠΉΡ‚ΠΎ ΠΏΠΎΠ²Π΅Ρ‡Π΅Ρ‚ΠΎ ΠΎΡ‚ стойноститС ΠΏΡ€ΠΈΠ΅ΠΌΠ°Ρ‚ Π΅Π΄Π½Π° ΠΈ ΡΡŠΡ‰Π° стойност.

На ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° чСсто ΠΈΠΌΠ° Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΈ Ρ€Π΅Π΄ΠΊΠΈ масиви, Ρ‡Π΅ няма смисъл Π΄Π° сС Π·Π°Π΅ΠΌΠ° ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° с Π΅Π΄Π½ΠΈ ΠΈ ΡΡŠΡ‰ΠΈ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»Π½ΠΎ ΠΈΠΌΠ° смисъл Π΄Π° сС ΠΏΡ€ΠΈΠ»Π°Π³Π°Ρ‚ Ρ€Π΅Π΄ΠΊΠΈ масиви ΠΏΠΎ Ρ‚Π°ΠΊΡŠΠ² Π½Π°Ρ‡ΠΈΠ½, Ρ‡Π΅ ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° Π΄Π° Π½Π΅ сС ΠΈΠ·Ρ€Π°Π·Ρ…ΠΎΠ΄Π²Π° Π·Π° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Π½Π΅ Π½Π° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½ΠΈ стойности.
Π’ някои Π΅Π·ΠΈΡ†ΠΈ Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ Ρ€Π΅Π΄ΠΊΠΈΡ‚Π΅ масиви са част ΠΎΡ‚ самия Π΅Π·ΠΈΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π² Π”ΠΆ, MATLAB. Π”Ρ€ΡƒΠ³ΠΈ Π΅Π·ΠΈΡ†ΠΈ Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ ΠΈΠΌΠ°Ρ‚ спСциални Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Π²ΠΈ позволяват Π΄Π° Π³ΠΈ внСдряватС. Π—Π° C++ - БобствСн ΠΈ Π΄Ρ€.

Π“Π»ΠΎΠ±Π°Π»ΠΈΡ‚Π΅ са Π΄ΠΎΠ±Ρ€ΠΈ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚ΠΈ Π·Π° ΠΏΡ€ΠΈΠ»Π°Π³Π°Π½Π΅ Π½Π° Ρ€Π΅Π΄ΠΊΠΈ масиви, Π·Π°Ρ‰ΠΎΡ‚ΠΎ:

  1. Π’Π΅ ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚ стойноститС само Π½Π° Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π½ΠΈ възли ΠΈ Π½Π΅ ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚ стойноститС Π½Π° Π½Π΅Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π½ΠΈ;
  2. Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡΡŠΡ‚ Π·Π° Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ стойността Π½Π° възСл Π΅ ΠΈΠ·ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ Π½Π° Ρ‚ΠΎΠ²Π° ΠΊΠΎΠ»ΠΊΠΎ Π΅Π·ΠΈΡ†ΠΈ Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Ρ‚ Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ ΠΎΡ‚ ΠΌΠ½ΠΎΠ³ΠΎΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ масив.
    Set ^a(1, 2, 3)=5
    Write ^a(1, 2, 3)

  3. Global Π΅ структура Π½Π° сравнитСлно ниско Π½ΠΈΠ²ΠΎ Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ, слСдоватСлно Ρ‚Π΅ ΠΈΠΌΠ°Ρ‚ ΠΈΠ·ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΈ характСристики Π½Π° скоростта (ΠΎΡ‚ стотици хиляди Π΄ΠΎ дСсСтки ΠΌΠΈΠ»ΠΈΠΎΠ½ΠΈ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ Π² сСкунда, Π² зависимост ΠΎΡ‚ Ρ…Π°Ρ€Π΄ΡƒΠ΅Ρ€Π°, Π²ΠΈΠΆΡ‚Π΅ ΠΏΠΎ-Π΄ΠΎΠ»Ρƒ). 1)

Въй ΠΊΠ°Ρ‚ΠΎ Π³Π»ΠΎΠ±Π°Π»ΡŠΡ‚ Π΅ постоянна структура, ΠΈΠΌΠ° смисъл Π΄Π° сС правят Ρ€Π΅Π΄ΠΊΠΈ масиви Π²ΡŠΡ€Ρ…Ρƒ тях, ΠΊΠΎΠ³Π°Ρ‚ΠΎ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»Π½ΠΎ сС Π·Π½Π°Π΅, Ρ‡Π΅ количСството RAM няма Π΄Π° Π΅ Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΎ.

Π•Π΄Π½ΠΎ ΠΎΡ‚ свойствата Π½Π° Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈΡ‚Π΅ Π½Π° Ρ€Π΅Π΄ΠΊΠΈ масиви Π΅ Π΄Π° Π²Ρ€ΡŠΡ‰Π°Ρ‚ някаква стойност ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅, Π°ΠΊΠΎ Π΄ΠΎΡΡ‚ΡŠΠΏΡŠΡ‚ Π΅ Π΄ΠΎ Π½Π΅Π΄Π΅Ρ„ΠΈΠ½ΠΈΡ€Π°Π½Π° ΠΊΠ»Π΅Ρ‚ΠΊΠ°.

Π’ΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° станС с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° функцията $GET Π² COS. Π’ Ρ‚ΠΎΠ·ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ сС Ρ€Π°Π·Π³Π»Π΅ΠΆΠ΄Π° Ρ‚Ρ€ΠΈΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ масив.

SET a = $GET(^a(x,y,z), defValue)

Какви Π·Π°Π΄Π°Ρ‡ΠΈ изискват Ρ€Π΅Π΄ΠΊΠΈ масиви ΠΈ ΠΊΠ°ΠΊ Π³Π»ΠΎΠ±Π°Π»Π½ΠΈΡ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° ΠΏΠΎΠΌΠΎΠ³Π½Π°Ρ‚?

ΠœΠ°Ρ‚Ρ€ΠΈΡ†Π° Π½Π° ΡΡŠΡΠ΅Π΄ΡΡ‚Π²ΠΎ (ΡΠ²ΡŠΡ€Π·Π°Π½ΠΎΡΡ‚).

Π’Π°ΠΊΠΈΠ²Π° ΠΌΠ°Ρ‚Ρ€ΠΈΡ†ΠΈ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π·Π° прСдставянС Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ:

Π“Π»ΠΎΠ±Π°Π»ΠΈΡ‚Π΅ са ΡΡŠΠΊΡ€ΠΎΠ²ΠΈΡ‰Π° ΠΌΠ΅Ρ‡ΠΎΠ²Π΅ Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ. Π Π°Π·Ρ€Π΅Π΄Π΅Π½ΠΈ масиви. Част 3

ΠžΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ ΠΏΠΎ-голяма Π΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠ°Ρ‚Π°, Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° ΠΏΠΎΠ²Π΅Ρ‡Π΅ Π½ΡƒΠ»ΠΈ Ρ‰Π΅ ΠΈΠΌΠ° Π² ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°Ρ‚Π°. Ако Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π²Π·Π΅ΠΌΠ΅ΠΌ Π³Ρ€Π°Ρ„ΠΈΠΊΠ° Π½Π° социална ΠΌΡ€Π΅ΠΆΠ° ΠΈ я прСдставим ΠΏΠΎΠ΄ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π½Π° ΠΏΠΎΠ΄ΠΎΠ±Π½Π° ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°, Ρ‚ΠΎΠ³Π°Π²Π° ΠΏΠΎΡ‡Ρ‚ΠΈ цялата тя Ρ‰Π΅ сС ΡΡŠΡΡ‚ΠΎΠΈ ΠΎΡ‚ Π½ΡƒΠ»ΠΈ, Ρ‚.Π΅. Ρ‰Π΅ бъдС Ρ€Π°Π·Ρ€Π΅Π΄Π΅Π½ масив.

Set ^m(id1, id2) = 1 
Set ^m(id1, id3) = 1 
Set ^m(id1, id4) = 1 
Set ^m(id1) = 3 
Set ^m(id2, id4) = 1 
Set ^m(id2, id5) = 1 
Set ^m(id2) = 2
....

Π’ Ρ‚ΠΎΠ·ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ спСстявамС Π² Π³Π»ΠΎΠ±Π°Π»Π½ΠΎΡ‚ΠΎ ^m ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π°Ρ‚Π° Π·Π° ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ броя Π½Π° Ρ€ΡŠΠ±ΠΎΠ²Π΅Ρ‚Π΅ във всСки възСл (ΠΊΠΎΠΉ с ΠΊΠΎΠ³ΠΎ Π΅ приятСл ΠΈ броя Π½Π° приятСлитС).

Ако броят Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ‚Π΅ Π² Π³Ρ€Π°Ρ„ΠΈΠΊΠ°Ρ‚Π° Π½Π΅ Π΅ ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ 29 ΠΌΠΈΠ»ΠΈΠΎΠ½Π° (Ρ‚ΠΎΠ²Π° число сС ΠΏΡ€ΠΈΠ΅ΠΌΠ° ΠΊΠ°Ρ‚ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΎΡ‚ 8 * максималСн Ρ€Π°Π·ΠΌΠ΅Ρ€ Π½Π° линията), тоСст ΠΎΡ‰Π΅ ΠΏΠΎ-ΠΈΠΊΠΎΠ½ΠΎΠΌΠΈΡ‡Π΅Π½ Π½Π°Ρ‡ΠΈΠ½ Π·Π° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Π½Π΅ Π½Π° Ρ‚Π°ΠΊΠΈΠ²Π° ΠΌΠ°Ρ‚Ρ€ΠΈΡ†ΠΈ са Π±ΠΈΡ‚ΠΎΠ²ΠΈΡ‚Π΅ Π½ΠΈΠ·ΠΎΠ²Π΅, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Π³ΠΎΠ»Π΅ΠΌΠΈΡ‚Π΅ пропуски са ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€Π°Π½ΠΈ ΠΏΠΎ спСциалСн Π½Π°Ρ‡ΠΈΠ½ ΠΏΡ€ΠΈ тяхното изпълнСниС.

ΠœΠ°Π½ΠΈΠΏΡƒΠ»Π°Ρ†ΠΈΠΈΡ‚Π΅ с Π±ΠΈΡ‚ΠΎΠ²ΠΈ Π½ΠΈΠ·ΠΎΠ²Π΅ сС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Ρ‚ ΠΎΡ‚ функцията $Π±ΠΈΡ‚.

; установка Π±ΠΈΡ‚Π°
SET $BIT(rowID, positionID) = 1
; ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ Π±ΠΈΡ‚Π°
Write $BIT(rowID, positionID)

Π’Π°Π±Π»ΠΈΡ†Π° Π·Π° прСскачанС Π½Π° State Machine

Въй ΠΊΠ°Ρ‚ΠΎ Π³Ρ€Π°Ρ„ΠΈΠΊΠ°Ρ‚Π° Π½Π° ΠΏΡ€Π΅Ρ…ΠΎΠ΄Π° Π½Π° ΠΊΡ€Π°Π΅Π½ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ Π΅ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½Π° Π³Ρ€Π°Ρ„ΠΈΠΊΠ°, Ρ‚ΠΎΠ³Π°Π²Π° Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ‚Π° Π½Π° ΠΏΡ€Π΅Ρ…ΠΎΠ΄Π° Π½Π° ΠΊΡ€Π°Π΅Π½ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ Π΅ ΡΡŠΡ‰Π°Ρ‚Π° ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° Π½Π° ΡΡŠΡΠ΅Π΄ΡΡ‚Π²ΠΎ, която бСшС обсъдСна ΠΏΠΎ-Π³ΠΎΡ€Π΅.

ΠšΠ»Π΅Ρ‚ΡŠΡ‡Π½ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈ

Π“Π»ΠΎΠ±Π°Π»ΠΈΡ‚Π΅ са ΡΡŠΠΊΡ€ΠΎΠ²ΠΈΡ‰Π° ΠΌΠ΅Ρ‡ΠΎΠ²Π΅ Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ. Π Π°Π·Ρ€Π΅Π΄Π΅Π½ΠΈ масиви. Част 3

Най-извСстният ΠΊΠ»Π΅Ρ‚ΡŠΡ‡Π΅Π½ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ ΠΈΠ³Ρ€Π° "ΠΆΠΈΠ²ΠΎΡ‚", ΠΊΠΎΠΉΡ‚ΠΎ ΠΏΠΎΡ€Π°Π΄ΠΈ своитС ΠΏΡ€Π°Π²ΠΈΠ»Π° (ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π΅Π΄Π½Π° ΠΊΠ»Π΅Ρ‚ΠΊΠ° ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ съсСди, тя ΡƒΠΌΠΈΡ€Π°) Π΅ Ρ€Π°Π·Ρ€Π΅Π΄Π΅Π½ масив.

Π‘Ρ‚ΠΈΠ²ΡŠΠ½ Π’ΠΎΠ»Ρ„Ρ€Π°ΠΌ, вярва, Ρ‡Π΅ ΠΊΠ»Π΅Ρ‚ΡŠΡ‡Π½ΠΈΡ‚Π΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈ са Π½ΠΎΠ²Π° област Π½Π° Π½Π°ΡƒΠΊΠ°Ρ‚Π°. ΠŸΡ€Π΅Π· 2002 Π³. Ρ‚ΠΎΠΉ ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ²Π° Нов Π²ΠΈΠ΄ Π½Π°ΡƒΠΊΠ°, ΠΊΠ½ΠΈΠ³Π° ΠΎΡ‚ 1280 страници, Π² която Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΈΡ€Π° ΡˆΠΈΡ€ΠΎΠΊΠΎ, Ρ‡Π΅ Π½Π°ΠΏΡ€Π΅Π΄ΡŠΠΊΡŠΡ‚ Π² ΠΊΠ»Π΅Ρ‚ΡŠΡ‡Π½ΠΈΡ‚Π΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈ Π½Π΅ Π΅ ΠΈΠ·ΠΎΠ»ΠΈΡ€Π°Π½, Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ стабилСн ΠΈ ΠΎΡ‚ голямо Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π·Π° всички области Π½Π° Π½Π°ΡƒΠΊΠ°Ρ‚Π°.

Π”ΠΎΠΊΠ°Π·Π°Π½ΠΎ Π΅, Ρ‡Π΅ всСки Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΡŠΠΌ, ΠΊΠΎΠΉΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ Π½Π° ΠΊΠΎΠΌΠΏΡŽΡ‚ΡŠΡ€, ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° ΠΊΠ»Π΅Ρ‚ΡŠΡ‡Π΅Π½ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚. ΠšΠ»Π΅Ρ‚ΡŠΡ‡Π½ΠΈΡ‚Π΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π·Π° ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€Π°Π½Π΅ Π½Π° Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π½ΠΈ срСди ΠΈ систСми, Π·Π° Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅ Π½Π° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΈΡ‡Π½ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ ΠΈ Π·Π° Π΄Ρ€ΡƒΠ³ΠΈ Ρ†Π΅Π»ΠΈ.

Ако ΠΈΠΌΠ°ΠΌΠ΅ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎ ΠΏΠΎΠ»Π΅ ΠΈ трябва Π΄Π° запишСм всички ΠΌΠ΅ΠΆΠ΄ΠΈΠ½Π½ΠΈ ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΡ Π½Π° ΠΊΠ»Π΅Ρ‚ΡŠΡ‡Π΅Π½ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚, Ρ‚ΠΎΠ³Π°Π²Π° Π΅ съвсСм Ρ€Π°Π·ΡƒΠΌΠ½ΠΎ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌΠ΅ Π³Π»ΠΎΠ±Π°Π»ΠΈ.

ΠšΠ°Ρ€Ρ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ

ΠŸΡŠΡ€Π²ΠΎΡ‚ΠΎ Π½Π΅Ρ‰ΠΎ, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΌΠΈ ΠΈΠ΄Π²Π° Π½Π° ΡƒΠΌ, ΠΊΠΎΠ³Π°Ρ‚ΠΎ става Π²ΡŠΠΏΡ€ΠΎΡ Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Ρ€Π°Π·Ρ€Π΅Π΄Π΅Π½ΠΈ масиви, са Π·Π°Π΄Π°Ρ‡ΠΈΡ‚Π΅ Π·Π° ΠΊΠ°Ρ€Ρ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ€Π°Π½Π΅.

По ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΡ‚Π΅ ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€Π°Π·Π½ΠΎ място. Ако ΠΊΠ°Ρ€Ρ‚Π°Ρ‚Π° Π΅ прСдставСна ΠΊΠ°Ρ‚ΠΎ Π³ΠΎΠ»Π΅ΠΌΠΈ пиксСли, Ρ‚ΠΎΠ³Π°Π²Π° 71% ΠΎΡ‚ пиксСлитС Π½Π° ЗСмята Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ Π·Π°Π΅Ρ‚ΠΈ ΠΎΡ‚ ΠΎΠΊΠ΅Π°Π½Π°. Π Π°Π·Ρ€Π΅Π΄Π΅Π½ масив. И Π°ΠΊΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΡ‚Π΅ само произвСдСнията Π½Π° Ρ‡ΠΎΠ²Π΅ΡˆΠΊΠΈΡ‚Π΅ Ρ€ΡŠΡ†Π΅, Ρ‚ΠΎΠ³Π°Π²Π° Ρ‰Π΅ ΠΈΠΌΠ° ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ 95% ΠΏΡ€Π°Π·Π½ΠΎ пространство.

Π Π°Π·Π±ΠΈΡ€Π° сС, Π½ΠΈΠΊΠΎΠΉ Π½Π΅ ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π° ΠΊΠ°Ρ€Ρ‚ΠΈ ΠΊΠ°Ρ‚ΠΎ растСрни масиви, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° сС Π²Π΅ΠΊΡ‚ΠΎΡ€Π½ΠΎ прСдставянС.
Но ΠΊΠ°ΠΊΠ²ΠΎ прСдставляват Π²Π΅ΠΊΡ‚ΠΎΡ€Π½ΠΈΡ‚Π΅ ΠΊΠ°Ρ€Ρ‚ΠΈ? Π’ΠΎΠ²Π° Π΅ Π΅Π΄ΠΈΠ½ Π²ΠΈΠ΄ Ρ€Π°ΠΌΠΊΠ° ΠΈ ΠΏΠΎΠ»ΠΈΠ»ΠΈΠ½ΠΈΠΈ ΠΈ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΈ, ΡΡŠΡΡ‚ΠΎΡΡ‰ΠΈ сС ΠΎΡ‚ Ρ‚ΠΎΡ‡ΠΊΠΈ.
Π’ΡΡŠΡ‰Π½ΠΎΡΡ‚ Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΈ Π²Ρ€ΡŠΠ·ΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ тях.

Π•Π΄Π½Π° ΠΎΡ‚ Π½Π°ΠΉ-Π°ΠΌΠ±ΠΈΡ†ΠΈΠΎΠ·Π½ΠΈΡ‚Π΅ мисии Π·Π° ΠΊΠ°Ρ€Ρ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ€Π°Π½Π΅ Π΅ мисията Π½Π° тСлСскопа Gaia Π·Π° ΠΊΠ°Ρ€Ρ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ€Π°Π½Π΅ Π½Π° Π½Π°ΡˆΠ°Ρ‚Π° Π³Π°Π»Π°ΠΊΡ‚ΠΈΠΊΠ°. ΠžΠ±Ρ€Π°Π·Π½ΠΎ ΠΊΠ°Π·Π°Π½ΠΎ, Π½Π°ΡˆΠ°Ρ‚Π° Π³Π°Π»Π°ΠΊΡ‚ΠΈΠΊΠ°, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ цялата всСлСна, Π΅ Π½Π΅ΠΏΡ€Π΅ΠΊΡŠΡΠ½Π°Ρ‚ Ρ€ΡΠ΄ΡŠΠΊ масив: ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΈ пространства ΠΎΡ‚ пустота, Π² ΠΊΠΎΠΈΡ‚ΠΎ ΠΈΠΌΠ° Ρ€Π΅Π΄ΠΊΠΈ ΠΌΠ°Π»ΠΊΠΈ Ρ‚ΠΎΡ‡ΠΊΠΈ - Π·Π²Π΅Π·Π΄ΠΈ. ΠŸΡ€Π°Π·Π½ΠΎ място 99,999999…….%. Π—Π° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Π½Π΅ Π½Π° ΠΊΠ°Ρ€Ρ‚Π°Ρ‚Π° Π½Π° Π½Π°ΡˆΠ°Ρ‚Π° Π³Π°Π»Π°ΠΊΡ‚ΠΈΠΊΠ° бСшС ΠΈΠ·Π±Ρ€Π°Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ Π·Π° Π³Π»ΠΎΠ±Π°Π»ΠΈ - CachΓ©.

НС Π·Π½Π°ΠΌ Ρ‚ΠΎΡ‡Π½Π°Ρ‚Π° структура Π½Π° Π³Π»ΠΎΠ±Π°Π»ΠΈΡ‚Π΅ Π² Ρ‚ΠΎΠ·ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, ΠΌΠΎΠ³Π° Π΄Π° ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠ°, Ρ‡Π΅ Π΅ Π½Π΅Ρ‰ΠΎ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ Π½Π°:

Set ^galaxy(b, l, d) = 1; НомСр Π·Π²Π΅Π·Π΄Ρ‹ ΠΏΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Ρƒ, Ссли Π΅ΡΡ‚ΡŒ
Set ^galaxy(b, l, d, "name") = "Sun"
Set ^galaxy(b, l, d, "type") = "normal" ; Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ blackhole, quazar, red_dwarf ΠΈ Ρ‚.Π΄.
Set ^galaxy(b, l, d, "weight") = 14E50
Set ^galaxy(b, l, d, "planetes") = 7
Set ^galaxy(b, l, d, "planetes", 1) = "Mercury"
Set ^galaxy(b, l, d, "planetes", 1, weight) = 1E20
...

ΠšΡŠΠ΄Π΅Ρ‚ΠΎ са b, l, d галактичСски ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ΠΈ ΡˆΠΈΡ€ΠΈΠ½Π°, дълТина ΠΈ разстояниС ΠΎΡ‚ ΡΠ»ΡŠΠ½Ρ†Π΅Ρ‚ΠΎ.

Π“ΡŠΠ²ΠΊΠ°Π²Π°Ρ‚Π° структура Π½Π° Π³Π»ΠΎΠ±Π°Π»ΠΈΡ‚Π΅ Π²ΠΈ позволява Π΄Π° Π·Π°ΠΏΠ°Π·ΠΈΡ‚Π΅ всякакви ΠΆΠ΅Π»Π°Π½ΠΈ характСристики Π½Π° Π·Π²Π΅Π·Π΄ΠΈ ΠΈ ΠΏΠ»Π°Π½Π΅Ρ‚ΠΈ, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Π±Π°Π·ΠΈΡ‚Π΅ Π½Π° Π³Π»ΠΎΠ±Π°Π»ΠΈΡ‚Π΅ са Π±Π΅Π· схСми.

Π—Π° Π΄Π° ΡΡŠΡ…Ρ€Π°Π½ΠΈ ΠΊΠ°Ρ€Ρ‚Π° Π½Π° Π½Π°ΡˆΠ°Ρ‚Π° всСлСна, CachΓ© бСшС ΠΈΠ·Π±Ρ€Π°Π½ Π½Π΅ само ΠΏΠΎΡ€Π°Π΄ΠΈ своята Π³ΡŠΠ²ΠΊΠ°Π²ΠΎΡΡ‚, Π½ΠΎ ΠΈ ΠΏΠΎΡ€Π°Π΄ΠΈ способността ΠΌΡƒ Π΄Π° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π° ΠΏΠΎΡ‚ΠΎΠΊ ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Π±ΡŠΡ€Π·ΠΎ, ΠΊΠ°Ρ‚ΠΎ ΡΡŠΡ‰Π΅Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ създава Π³Π»ΠΎΠ±Π°Π»Π½ΠΈ индСкси ΠΏΠΎ ΠΏΡŠΡ‚Ρ Π·Π° Π±ΡŠΡ€Π·ΠΎ Ρ‚ΡŠΡ€ΡΠ΅Π½Π΅.

Ако сС Π²ΡŠΡ€Π½Π΅ΠΌ Π½Π° ЗСмята, Ρ‚ΠΎΠ³Π°Π²Π° картографскитС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ са създадСни Π²ΡŠΡ€Ρ…Ρƒ Π³Π»ΠΎΠ±Π°Π»ΠΈ OpenStreetMap XAPI ΠΈ Ρ€Π°Π·ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ Π½Π° OpenStreetMap - FOSM.

Наскоро Π½Π° Π₯Π°ΠΊΠ°Ρ‚ΠΎΠ½ CachΓ© бяха Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈ гСопространствСни индСкси Geospatial. ΠžΡ‡Π°ΠΊΠ²Π°ΠΌΠ΅ статии с подробности Π·Π° ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ ΠΎΡ‚ Π°Π²Ρ‚ΠΎΡ€ΠΈΡ‚Π΅.

ВнСдряванС Π½Π° пространствСни индСкси Π²ΡŠΡ€Ρ…Ρƒ Π³Π»ΠΎΠ±Π°Π»Π½ΠΎΡ‚ΠΎ Π² OpenStreetMap XAPI

Π‘Π½ΠΈΠΌΠΊΠΈ, Π²Π·Π΅Ρ‚ΠΈ ΠΎΡ‚ Ρ‚Π°Π·ΠΈ прСзСнтация.

Цялото Π·Π΅ΠΌΠ½ΠΎ кълбо Π΅ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΎ Π½Π° ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΈ, слСд Ρ‚ΠΎΠ²Π° ΠΏΠΎΠ΄ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΈ, Π° ΠΏΠΎΠ΄ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π½Π° ΠΏΠΎΠ΄ΠΏΠΎΠ΄ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΈ ΠΈ Ρ‚.Π½. ΠšΠ°Ρ‚ΠΎ цяло ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°ΠΌΠ΅ ΠΉΠ΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π½Π° структура Π·Π° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Π½Π΅ Π½Π° ΡΡŠΠ·Π΄Π°Π΄Π΅Π½ΠΈΡ‚Π΅ Π³Π»ΠΎΠ±Π°Π»ΠΈ.

Π“Π»ΠΎΠ±Π°Π»ΠΈΡ‚Π΅ са ΡΡŠΠΊΡ€ΠΎΠ²ΠΈΡ‰Π° ΠΌΠ΅Ρ‡ΠΎΠ²Π΅ Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ. Π Π°Π·Ρ€Π΅Π΄Π΅Π½ΠΈ масиви. Част 3

По всяко Π²Ρ€Π΅ΠΌΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΡ‡Ρ‚ΠΈ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°Π»Π½ΠΎ Π΄Π° поискамС ТСлания ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ ΠΈΠ»ΠΈ Π΄Π° Π³ΠΎ изчистим, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ всички ΠΏΠΎΠ΄ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΈ ΡΡŠΡ‰ΠΎ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ Π²ΡŠΡ€Π½Π°Ρ‚ΠΈ ΠΈΠ»ΠΈ изчистСни.

Π’Π°ΠΊΠ°Π²Π° схСма Π²ΡŠΡ€Ρ…Ρƒ Π³Π»ΠΎΠ±Π°Π»ΠΈ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈ ΠΏΠΎ няколко Π½Π°Ρ‡ΠΈΠ½Π°.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ 1:

Set ^m(a, b, a, c, d, a, b,c, d, a, b, a, c, d, a, b,c, d, a, 1) = idΠŸΠ΅Ρ€Π²ΠΎΠΉΠ’ΠΎΡ‡ΠΊΠΈ
Set ^m(a, b, a, c, d, a, b,c, d, a, b, a, c, d, a, b,c, d, a, 2) = idΠ’Ρ‚ΠΎΡ€ΠΎΠΉΠ’ΠΎΡ‡ΠΊΠΈ
...

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ 2:

Set ^m('abacdabcdabacdabcda', 1) = idΠŸΠ΅Ρ€Π²ΠΎΠΉΠ’ΠΎΡ‡ΠΊΠΈ
Set ^m('abacdabcdabacdabcda', 2) = idΠ’Ρ‚ΠΎΡ€ΠΎΠΉΠ’ΠΎΡ‡ΠΊΠΈ
...

И Π² Π΄Π²Π°Ρ‚Π° случая Π½Π΅ Π΅ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Π΄Π° поискатС Ρ‚ΠΎΡ‡ΠΊΠΈ, Ρ€Π°Π·ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈ Π² ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΎ Π½ΠΈΠ²ΠΎ Π½Π° COS/M. Π©Π΅ бъдС ΠΌΠ°Π»ΠΊΠΎ ΠΏΠΎ-лСсно Π΄Π° изчиститС ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½ΠΈ ΠΏΠ°Ρ€Ρ‡Π΅Ρ‚Π° пространство ΠΎΡ‚ всяко Π½ΠΈΠ²ΠΎ Π² ΠΏΡŠΡ€Π²Π°Ρ‚Π° опция, Π½ΠΎ Ρ‚ΠΎΠ²Π° рядко Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° Π΅Π΄ΠΈΠ½ ΠΎΡ‚ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π½Π° ΠΏΠΎ-ниско Π½ΠΈΠ²ΠΎ:

Π“Π»ΠΎΠ±Π°Π»ΠΈΡ‚Π΅ са ΡΡŠΠΊΡ€ΠΎΠ²ΠΈΡ‰Π° ΠΌΠ΅Ρ‡ΠΎΠ²Π΅ Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ. Π Π°Π·Ρ€Π΅Π΄Π΅Π½ΠΈ масиви. Част 3

И Π΅Ρ‚ΠΎ някои Π³Π»ΠΎΠ±Π°Π»Π½ΠΈ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ ΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° XAPI: прСдставянС Π½Π° индСкс Π½Π° Π³Π»ΠΎΠ±Π°Π»Π½ΠΈ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ:

Π“Π»ΠΎΠ±Π°Π»ΠΈΡ‚Π΅ са ΡΡŠΠΊΡ€ΠΎΠ²ΠΈΡ‰Π° ΠΌΠ΅Ρ‡ΠΎΠ²Π΅ Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ. Π Π°Π·Ρ€Π΅Π΄Π΅Π½ΠΈ масиви. Част 3

Π³Π»ΠΎΠ±Π°Π»Π΅Π½ ^ Π½Π°Ρ‡ΠΈΠ½ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π·Π° ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Π½Π΅ Π½Π° Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΏΠΎΠ»ΠΈΠ»ΠΈΠ½ΠΈΠΈ (ΠΏΡŠΡ‚ΠΈΡ‰Π°, ΠΏΠ»ΠΈΡ‚ΠΊΠΈ Ρ€Π΅ΠΊΠΈ ΠΈ Π΄Ρ€.) ΠΈ ΠΏΠΎΠ»ΠΈΠ³ΠΎΠ½ΠΈ (Π·Π°Ρ‚Π²ΠΎΡ€Π΅Π½ΠΈ Π·ΠΎΠ½ΠΈ: сгради, Π³ΠΎΡ€ΠΈ ΠΈ Π΄Ρ€.).

Π“Ρ€ΡƒΠ±Π° класификация Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ€Π΅Π΄ΠΊΠΈ масиви Π²ΡŠΡ€Ρ…Ρƒ Π³Π»ΠΎΠ±Π°Π»ΠΈ.

  1. НиС ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°ΠΌΠ΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ΠΈΡ‚Π΅ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΎΠ±Π΅ΠΊΡ‚ΠΈ ΠΈ Ρ‚Π΅Ρ…Π½ΠΈΡ‚Π΅ ΡΡŠΡΡ‚ΠΎΡΠ½ΠΈΡ (ΠΊΠ°Ρ€Ρ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ€Π°Π½Π΅, ΠΊΠ»Π΅Ρ‚ΡŠΡ‡Π½ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈ)
  2. НиС ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°ΠΌΠ΅ Ρ€Π°Π·Ρ€Π΅Π΄Π΅Π½ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†ΠΈ.

Π—Π° случай 2), ΠΊΠΎΠ³Π°Ρ‚ΠΎ изисквамС ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Π° ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°, ΠΊΡŠΠ΄Π΅Ρ‚ΠΎ Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚Π° Π½Π΅ Π΅ присвоСна стойност, трябва Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ стойността Π½Π° Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚Π° ΠΎΡ‚ рСдкия масив ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅.

Бонуси, ΠΊΠΎΠΈΡ‚ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°ΠΌΠ΅, ΠΊΠΎΠ³Π°Ρ‚ΠΎ ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°ΠΌΠ΅ ΠΌΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½ΠΈ ΠΌΠ°Ρ‚Ρ€ΠΈΡ†ΠΈ Π² Π³Π»ΠΎΠ±Π°Π»ΠΈ

Π‘ΡŠΡ€Π·ΠΎ ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅ ΠΈ/ΠΈΠ»ΠΈ сСлСкция Π½Π° ΠΏΠ°Ρ€Ρ‡Π΅Ρ‚Π° пространство, ΠΊΡ€Π°Ρ‚Π½ΠΈ Π½ΠΈΠ·ΠΎΠ²Π΅, Ρ€Π°Π²Π½ΠΈΠ½ΠΈ, ΠΊΡƒΠ±Ρ‡Π΅Ρ‚Π° ΠΈ Π΄Ρ€. Π—Π° случаитС, ΠΊΠΎΠ³Π°Ρ‚ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ цСлочислСни индСкси, ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π΄Π° ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π±ΡŠΡ€Π·ΠΎ Π΄Π° ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π°Ρ‚Π΅ ΠΈ/ΠΈΠ»ΠΈ ΠΈΠ·Π±ΠΈΡ€Π°Ρ‚Π΅ части ΠΎΡ‚ пространство, ΠΊΠΎΠΈΡ‚ΠΎ са ΠΊΡ€Π°Ρ‚Π½ΠΈ Π½Π° Π½ΠΈΠ·ΠΎΠ²Π΅, Ρ€Π°Π²Π½ΠΈΠ½ΠΈ, ΠΊΡƒΠ±ΠΎΠ²Π΅ ΠΈ Ρ‚.Π½.

Π•ΠΊΠΈΠΏ Π£Π±ΠΈΠΉ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΈΠ·Ρ‚Ρ€ΠΈΠ΅ΠΌ ΠΊΠ°ΠΊΡ‚ΠΎ ΠΎΡ‚Π΄Π΅Π»Π΅Π½ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚, Ρ‚Π°ΠΊΠ° ΠΈ линия ΠΈ Π΄ΠΎΡ€ΠΈ цяла Ρ€Π°Π²Π½ΠΈΠ½Π°. Π‘Π»Π°Π³ΠΎΠ΄Π°Ρ€Π΅Π½ΠΈΠ΅ Π½Π° свойствата Π½Π° Π³Π»ΠΎΠ±Π°Π»Π½ΠΈΡ‚Π΅, Ρ‚ΠΎΠ²Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π±ΡŠΡ€Π·ΠΎ - хиляди ΠΏΡŠΡ‚ΠΈ ΠΏΠΎ-Π±ΡŠΡ€Π·ΠΎ ΠΎΡ‚ ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅Ρ‚ΠΎ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ ΠΏΠΎ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚.

Π€ΠΈΠ³ΡƒΡ€Π°Ρ‚Π° ΠΏΠΎΠΊΠ°Π·Π²Π° Ρ‚Ρ€ΠΈΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ масив Π² Π³Π»ΠΎΠ±Π°Π»Π½ΠΎΡ‚ΠΎ ^a ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π²ΠΈΠ΄ΠΎΠ²Π΅ изтривания.

Π“Π»ΠΎΠ±Π°Π»ΠΈΡ‚Π΅ са ΡΡŠΠΊΡ€ΠΎΠ²ΠΈΡ‰Π° ΠΌΠ΅Ρ‡ΠΎΠ²Π΅ Π·Π° ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° Π΄Π°Π½Π½ΠΈ. Π Π°Π·Ρ€Π΅Π΄Π΅Π½ΠΈ масиви. Част 3

Π—Π° Π΄Π° ΠΈΠ·Π±Π΅Ρ€Π΅Ρ‚Π΅ части ΠΎΡ‚ пространството ΠΏΠΎ извСстни индСкси, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ‚Π° ОбСдиняванС.

Π˜Π·Π±ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΊΠΎΠ»ΠΎΠ½Π° Π½Π° ΠΌΠ°Ρ‚Ρ€ΠΈΡ†Π° Π² ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°Ρ‚Π° Column:

; Π—Π°Π΄Π°Π΄ΠΈΠΌ Ρ‚Ρ€Ρ‘Ρ…ΠΌΠ΅Ρ€Π½Ρ‹ΠΉ Ρ€Π°Π·Ρ€Π΅ΠΆΠ΅Π½Π½Ρ‹ΠΉ массив 3x3x3
Set ^a(0,0,0)=1,^a(2,2,0)=1,^a(2,0,1)=1,^a(0,2,1)=1,^a(2,2,2)=1,^a(2,1,2)=1
Merge Column = ^a(2,2)
; Π’Ρ‹Π²Π΅Π΄Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Column
Zwrite Column

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅:

Column(0)=1
Column(2)=1

Π’ΠΎΠ²Π°, ΠΊΠΎΠ΅Ρ‚ΠΎ Π΅ интСрСсно Π² ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ²Π°Ρ‚Π° Column, Π½ΠΈΠ΅ ΡΡŠΡ‰ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ…ΠΌΠ΅ Ρ€Π°Π·Ρ€Π΅Π΄Π΅Π½ масив, ΠΊΠΎΠΉΡ‚ΠΎ ΡΡŠΡ‰ΠΎ трябва Π΄Π° бъдС Π΄ΠΎΡΡ‚ΡŠΠΏΠ΅Π½ Ρ‡Ρ€Π΅Π· $GET, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ стойноститС ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ Π½Π΅ сС ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚ Π² Π½Π΅Π³ΠΎ.

Π’Π·Π΅ΠΌΠ°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΏΡ€ΠΎΠ±ΠΈ ΠΎΡ‚ ΠΏΠ°Ρ€Ρ‡Π΅Ρ‚Π° пространство ΠΌΠΎΠΆΠ΅ Π΄Π° сС Π½Π°ΠΏΡ€Π°Π²ΠΈ ΠΈ Ρ‡Ρ€Π΅Π· ΠΌΠ°Π»ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‰Π° функцията $ΠŸΠΎΡ€ΡŠΡ‡ΠΊΠ°. Π’ΠΎΠ²Π° Π΅ особСно ΡƒΠ΄ΠΎΠ±Π½ΠΎ Π·Π° пространства, Ρ‡ΠΈΠΈΡ‚ΠΎ индСкси Π½Π΅ са ΠΊΠ²Π°Π½Ρ‚ΡƒΠ²Π°Π½ΠΈ (картография).

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

НастоящСто Π²Ρ€Π΅ΠΌΠ΅ поставя Π½ΠΎΠ²ΠΈ Π°ΠΌΠ±ΠΈΡ†ΠΈΠΎΠ·Π½ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ. Π“Ρ€Π°Ρ„ΠΈΡ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° ΠΈΠΌΠ°Ρ‚ ΠΌΠΈΠ»ΠΈΠ°Ρ€Π΄ΠΈ Π²ΡŠΡ€Ρ…ΠΎΠ²Π΅, ΠΊΠ°Ρ€Ρ‚ΠΈΡ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° ΠΈΠΌΠ°Ρ‚ ΠΌΠΈΠ»ΠΈΠ°Ρ€Π΄ΠΈ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΈ някой ΠΌΠΎΠΆΠ΅ Π΄ΠΎΡ€ΠΈ Π΄Π° иска Π΄Π° управлява своя собствСна всСлСна Π²ΡŠΡ€Ρ…Ρƒ ΠΊΠ»Π΅Ρ‚ΡŠΡ‡Π½ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈ (1, 2).

ΠšΠΎΠ³Π°Ρ‚ΠΎ ΠΎΠ±Π΅ΠΌΡŠΡ‚ Π½Π° Π΄Π°Π½Π½ΠΈΡ‚Π΅ Π½Π° Ρ€Π°Π·Ρ€Π΅Π΄Π΅Π½ΠΈΡ‚Π΅ масиви Π²Π΅Ρ‡Π΅ Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΏΠΎΠ±Π΅Ρ€Π΅ Π² RAM ΠΈ трябва Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈΡ‚Π΅ с тях, Ρ‚ΠΎΠ³Π°Π²Π° си струва Π΄Π° обмислитС Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° внСдряванС Π½Π° Ρ‚Π°ΠΊΠΈΠ²Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ Π½Π° Π³Π»ΠΎΠ±Π°Π»ΠΈ ΠΈ COS.

Благодаря Π·Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅Ρ‚ΠΎ! ΠžΡ‡Π°ΠΊΠ²Π°ΠΌΠ΅ Π²Π°ΡˆΠΈΡ‚Π΅ Π²ΡŠΠΏΡ€ΠΎΡΠΈ ΠΈ ТСлания Π² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΡ‚Π΅.

ΠžΡ‚ΠΊΠ°Π· ΠΎΡ‚ отговорност: Π’Π°Π·ΠΈ статия ΠΈ ΠΌΠΎΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈ към нСя са ΠΌΠΎΠ΅ ΠΌΠ½Π΅Π½ΠΈΠ΅ ΠΈ Π½Π΅ прСдставляват ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»Π½Π°Ρ‚Π° позиция Π½Π° InterSystems Corporation.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: www.habr.com

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€