αžŸαž€αž›αž‚αžΊαž‡αžΆαžŠαžΆαžœαž€αŸ†αžŽαž”αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ” ធអរេ αžαžΌαž…αŸ” αž•αŸ’αž“αŸ‚αž€αž‘αžΈ 3

αžŸαž€αž›αž‚αžΊαž‡αžΆαžŠαžΆαžœαž€αŸ†αžŽαž”αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ” ធអរេ αžαžΌαž…αŸ” αž•αŸ’αž“αŸ‚αž€αž‘αžΈ 3αž“αŸ…αž€αŸ’αž“αž»αž„αž•αŸ’αž“αŸ‚αž€αž˜αž»αž“ (1, 2) αž™αžΎαž„β€‹αž”αžΆαž“β€‹αž“αž·αž™αžΆαž™β€‹αž’αŸ†αž–αžΈβ€‹αžŸαž€αž›β€‹αž‡αžΆβ€‹αžŠαžΎαž˜αžˆαžΎ αž€αŸ’αž“αž»αž„β€‹αž˜αž½αž™β€‹αž“αŸαŸ‡β€‹αž™αžΎαž„β€‹αž“αžΉαž„β€‹αž˜αžΎαž›β€‹αž‘αŸ…β€‹αž–αž·αž—αž–αž›αŸ„αž€β€‹αž‡αžΆβ€‹αž’αžΆαžšαŸβ€‹αžαžΌαž…αŸ”

Sparse Array αž‚αžΊαž‡αžΆαž”αŸ’αžšαž—αŸαž‘αž’αžΆαžšαŸαžŠαŸ‚αž›αžαž˜αŸ’αž›αŸƒαž—αžΆαž‚αž…αŸ’αžšαžΎαž“αž™αž€αžαž˜αŸ’αž›αŸƒαžŠαžΌαž…αž‚αŸ’αž“αžΆαŸ”

αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αž ធអរេ sparse αž…αŸ’αžšαžΎαž“αžαŸ‚αž˜αžΆαž“αž‘αŸ†αž αŸ†αž’αŸ† αžŠαŸ‚αž›αž˜αž·αž“αž˜αžΆαž“αž…αŸ†αž“αž»αž…αžŽαžΆαž˜αž½αž™αž€αŸ’αž“αž»αž„αž€αžΆαžšαž€αžΆαž“αŸ‹αž€αžΆαž”αŸ‹αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž’αžΆαžαž»αžŠαžΌαž…αž‚αŸ’αž“αžΆαž”αŸαŸ‡αž”αž·αž‘αž“αŸ„αŸ‡αž‘αŸαŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡ αžœαžΆαžŸαž˜αž αŸαžαž»αž•αž›αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž’αžΆαžšαŸ sparse αžαžΆαž˜αžšαž”αŸ€αž”αžŠαŸ‚αž›αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αžαŸ’αž‡αŸ‡αžαŸ’αž‡αžΆαž™αž›αžΎαž€αžΆαžšαžšαž€αŸ’αžŸαžΆαž‘αž»αž€αžαž˜αŸ’αž›αŸƒαžŠαžΌαž…αž‚αŸ’αž“αžΆαž”αŸαŸ‡αž”αž·αž‘αŸ”
αž“αŸ…αž€αŸ’αž“αž»αž„αž—αžΆαžŸαžΆαžŸαžšαžŸαŸαžšαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž˜αž½αž™αž…αŸ†αž“αž½αž“ ធអរេ sparse αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž“αŸ…αž€αŸ’αž“αž»αž„αž—αžΆαžŸαžΆαžαŸ’αž›αž½αž“αžœαžΆ αž§αž‘αžΆαž αžšαžŽαŸαž“αŸ…αž€αŸ’αž“αž»αž„ J, MATLAB. αž—αžΆαžŸαžΆαžŸαžšαžŸαŸαžšαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž˜αžΆαž“αž”αžŽαŸ’αžŽαžΆαž›αŸαž™αž–αž·αžŸαŸαžŸαžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αž’αž“αž»αžœαžαŸ’αžαž–αž½αž€αžœαžΆαŸ” αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ C++ - αž’αŸαž‘αŸ‚αž“ αž“αž·αž„αž’αŸ’αž“αž€αžŠαž‘αŸƒαŸ”

Globals αž‚αžΊαž‡αžΆαž”αŸαž€αŸ’αžαž‡αž“αžŠαŸαž›αŸ’αž’αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αž“αž»αžœαžαŸ’αž sparse arrays αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αŸ–

  1. αž–αž½αž€αžœαžΆαžšαž€αŸ’αžŸαžΆαž‘αž»αž€αžαž˜αŸ’αž›αŸƒαž“αŸƒαžαŸ’αž“αžΆαŸ†αž„αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αžαŸ‚αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡ αž αžΎαž™αž˜αž·αž“αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αžαž˜αŸ’αž›αŸƒαž“αŸƒαž’αŸ’αžœαžΈαžŠαŸ‚αž›αž˜αž·αž“αž”αžΆαž“αž€αŸ†αžŽαžαŸ‹;
  2. αž…αŸ†αžŽαž»αž…αž”αŸ’αžšαž‘αžΆαž€αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž…αžΌαž›αž”αŸ’αžšαžΎαžαž˜αŸ’αž›αŸƒαžšαž”αžŸαŸ‹αžαŸ’αž“αžΆαŸ†αž„αž‚αžΊαžŸαŸ’αžšαžŠαŸ€αž„αž‚αŸ’αž“αžΆαžαŸ’αž›αžΆαŸ†αž„αžŽαžΆαžŸαŸ‹αž‘αŸ…αž“αžΉαž„αžšαž”αŸ€αž”αžŠαŸ‚αž›αž—αžΆαžŸαžΆαžŸαžšαžŸαŸαžšαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‡αžΆαž…αŸ’αžšαžΎαž“αž’αž“αž»αžœαžαŸ’αžαž€αžΆαžšαž…αžΌαž›αž”αŸ’αžšαžΎαž’αžΆαžαž»αž’αžΆαžšαŸαž–αž αž»αžœαž·αž˜αžΆαžαŸ’αžšαŸ”
    Set ^a(1, 2, 3)=5
    Write ^a(1, 2, 3)

  3. αžŸαž€αž›αž‚αžΊαž‡αžΆαžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž€αž˜αŸ’αžšαž·αžαž‘αžΆαž”αžŸαž˜αžšαž˜αŸ’αž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž‘αž·αž“αŸ’αž“αž“αŸαž™ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αžœαžΆαž˜αžΆαž“αž›αž€αŸ’αžαžŽαŸˆαž›αŸ’αž”αžΏαž“αžŠαŸαž’αžŸαŸ’αž…αžΆαžšαŸ’αž™ (αž–αžΈαžšαžΆαž”αŸ‹αžšαž™αžšαžΆαž”αŸ‹αž–αžΆαž“αŸ‹αž‘αŸ…αžšαžΆαž”αŸ‹αžŸαž·αž”αž›αžΆαž“αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž€αŸ’αž“αž»αž„αž˜αž½αž™αžœαž·αž“αžΆαž‘αžΈ αž’αžΆαžŸαŸ’αžšαŸαž™αž›αžΎαž•αŸ’αž“αŸ‚αž€αžšαžΉαž„ αžŸαžΌαž˜αž˜αžΎαž›αžαžΆαž„αž€αŸ’αžšαŸ„αž˜)αŸ” 1)

αžŠαŸ„αž™αžŸαžΆαžšαžŸαž€αž›αž‚αžΊαž‡αžΆαžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž‡αžΆαž”αŸ‹αž›αžΆαž”αŸ‹ αžœαžΆαžŸαž˜αž αŸαžαž»αž•αž›αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αž„αŸ’αž€αžΎαž sparse arrays αž›αžΎαž–αž½αž€αžœαžΆ αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž‚αŸαžŠαžΉαž„αž‡αžΆαž˜αž»αž“αžαžΆαž…αŸ†αž“αž½αž“ RAM αž“αžΉαž„αž˜αž·αž“αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαžΆαž“αŸ‹αž‘αŸαŸ”

αž›αž€αŸ’αžαžŽαŸˆαžŸαž˜αŸ’αž”αžαŸ’αžαž·αž˜αž½αž™αž“αŸƒαž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž’αžΆαžšαŸ sparse αž‚αžΊαžŠαžΎαž˜αŸ’αž”αžΈαžαŸ’αžšαž‘αž”αŸ‹αžαž˜αŸ’αž›αŸƒαž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜αž˜αž½αž™αž…αŸ†αž“αž½αž“ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž€αžΆαžšαž…αžΌαž›αž”αŸ’αžšαžΎαžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αŸ’αžœαžΎαž‘αžΎαž„αž‘αŸ…αž€αžΆαž“αŸ‹αž€αŸ’αžšαž‘αžΆαžŠαŸ‚αž›αž˜αž·αž“αž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αŸ”

αž“αŸαŸ‡αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαžŠαŸ„αž™αž”αŸ’αžšαžΎαž˜αž»αžαž„αžΆαžš $GET αž“αŸ…αž€αŸ’αž“αž»αž„ COS αŸ” αž§αž‘αžΆαž αžšαžŽαŸαž“αŸαŸ‡αž–αž·αž…αžΆαžšαžŽαžΆαž’αžΆαžšαŸ 3 αžœαž·αž˜αžΆαžαŸ’αžšαŸ”

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 * αŸ” αž‘αŸ†αž αŸ†αž”αž“αŸ’αž‘αžΆαžαŸ‹αž’αžαž·αž”αžšαž˜αžΆ) αž“αŸ„αŸ‡αž‚αžΊαž‡αžΆαžœαž·αž’αžΈαžŸαž“αŸ’αžŸαŸ†αžŸαŸ†αž…αŸƒαž”αž“αŸ’αžαŸ‚αž˜αž‘αŸ€αžαžŠαžΎαž˜αŸ’αž”αžΈαžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž˜αŸ‰αžΆαž‘αŸ’αžšαžΈαžŸαž”αŸ‚αž”αž“αŸαŸ‡αž‚αžΊαžαŸ’αžŸαŸ‚αž”αŸŠαžΈαž αž…αžΆαž”αŸ‹αžαžΆαŸ†αž„αž–αžΈαž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸαž”αž„αŸ’αž€αžΎαž“αž”αŸ’αžšαžŸαž·αž‘αŸ’αž’αž—αžΆαž–αž…αž“αŸ’αž›αŸ„αŸ‡αž’αŸ†αžαžΆαž˜αžšαž”αŸ€αž”αž–αž·αžŸαŸαžŸαŸ”

αž§αž”αžΆαž™αž€αž›αž‡αžΆαž˜αž½αž™αžαŸ’αžŸαŸ‚αž”αŸŠαžΈαžαžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαžŠαŸ„αž™αž˜αž»αžαž„αžΆαžš $BIT.

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

αžαžΆαžšαžΆαž„αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αžšαžŠαŸ’αž‹

αžŠαŸ„αž™αžŸαžΆαžšαž€αŸ’αžšαžΆαž αŸ’αžœαž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž“αŸƒ automaton αž€αŸ†αžŽαžαŸ‹αž‚αžΊαž‡αžΆαž€αŸ’αžšαžΆαž αŸ’αžœαž’αž˜αŸ’αž˜αžαžΆ αž“αŸ„αŸ‡αžαžΆαžšαžΆαž„αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž“αŸƒ automaton αž€αŸ†αžŽαžαŸ‹αž‚αžΊαž‡αžΆαž˜αŸ‰αžΆαž‘αŸ’αžšαžΈαžŸαž‡αžΆαž”αŸ‹αžŠαžΌαž…αž‚αŸ’αž“αžΆαžŠαŸ‚αž›αž”αžΆαž“αž–αž·αž—αžΆαž€αŸ’αžŸαžΆαžαžΆαž„αž›αžΎαŸ”

αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αž€αž˜αŸ’αž˜αž€αŸ„αžŸαž·αž€αžΆ

αžŸαž€αž›αž‚αžΊαž‡αžΆαžŠαžΆαžœαž€αŸ†αžŽαž”αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ” ធអរេ αžαžΌαž…αŸ” αž•αŸ’αž“αŸ‚αž€αž‘αžΈ 3

αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αž€αž˜αŸ’αž˜αž€αŸ„αžŸαž·αž€αžΆαžŠαŸαž›αŸ’αž”αžΈαž›αŸ’αž”αžΆαž‰αž”αŸ†αž•αž»αžαž‚αžΊ αž αŸ’αž‚αŸαž˜ "αž‡αžΈαžœαž·αž"αžŠαŸ‚αž›β€‹αžŠαŸ„αž™β€‹αžŸαžΆαžšβ€‹αžαŸ‚β€‹αž…αŸ’αž”αžΆαž”αŸ‹β€‹αžšαž”αžŸαŸ‹β€‹αžœαžΆ (αž–αŸαž›β€‹αž€αŸ’αžšαž‘αžΆβ€‹αž˜αž½αž™β€‹αž˜αžΆαž“β€‹αž’αŸ’αž“αž€β€‹αž‡αž·αžβ€‹αžαžΆαž„β€‹αž…αŸ’αžšαžΎαž“ αžœαžΆβ€‹αž„αžΆαž”αŸ‹) αž‚αžΊβ€‹αž‡αžΆβ€‹αž’αžΆαžšαŸβ€‹αžαžΌαž…αŸ”

Stephen Wolfram αž‡αžΏαžαžΆ αž€αŸ„αžŸαž·αž€αžΆαžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αž‚αžΊ αžœαž·αžŸαŸαž™αžœαž·αž‘αŸ’αž™αžΆαžŸαžΆαžŸαŸ’αžαŸ’αžšαžαŸ’αž˜αžΈαŸ”. αž€αŸ’αž“αž»αž„αž†αŸ’αž“αžΆαŸ† 2002 αž‚αžΆαžαŸ‹αž”αžΆαž“αž”αŸ„αŸ‡αž–αž»αž˜αŸ’αž—αžŸαŸ€αžœαž—αŸ… 1280 αž‘αŸ†αž–αŸαžš αžŠαŸ‚αž›αž‡αžΆαž”αŸ’αžšαž—αŸαž‘αžœαž·αž‘αŸ’αž™αžΆαžŸαžΆαžŸαŸ’αžαŸ’αžšαžαŸ’αž˜αžΈ αžŠαŸ‚αž›αž‚αžΆαžαŸ‹αž”αžΆαž“αž”αŸ’αžšαž€αŸ‚αž€αž™αŸ‰αžΆαž„αž‘αžΌαž›αŸ†αž‘αžΌαž›αžΆαž™αžαžΆ αž—αžΆαž–αž‡αžΏαž“αž›αžΏαž“αž“αŸƒαž€αŸ„αžŸαž·αž€αžΆ automata αž˜αž·αž“αž“αŸ…αžŠαžΆαž…αŸ‹αž–αžΈαž‚αŸαž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž˜αžΆαž“αž—αžΆαž–αžŸαŸ’αžαž·αžαžŸαŸ’αžαŸαžš αž“αž·αž„αž˜αžΆαž“αž₯αž‘αŸ’αž’αž·αž–αž›αžαŸ’αž›αžΆαŸ†αž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž‚αŸ’αžšαž”αŸ‹αž•αŸ’αž“αŸ‚αž€αž“αŸƒαžœαž·αž‘αŸ’αž™αžΆαžŸαžΆαžŸαŸ’αžαŸ’αžšαŸ”

αžœαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αžαžΆ αžšαžΆαž›αŸ‹αž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžŠαŸ‚αž›αž’αžΆαž…αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž”αžΆαž“αž“αŸ…αž›αžΎαž€αž»αŸ†αž–αŸ’αž™αžΌαž‘αŸαžšαž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαžŠαŸ„αž™αž”αŸ’αžšαžΎ cellular automaton αŸ” Cellular automata αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαžŠαžΎαž˜αŸ’αž”αžΈαž’αŸ’αžœαžΎαž‚αŸ†αžšαžΌαž”αžšαž·αžŸαŸ’αžαžΆαž“ αž“αž·αž„αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžαžΆαž˜αžœαž“αŸ’αž αžŠαžΎαž˜αŸ’αž”αžΈαžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆαž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™ αž“αž·αž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž‚αŸ„αž›αž”αŸ†αžŽαž„αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαŸ”

αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αž˜αžΆαž“αžœαžΆαž›αžŠαŸαž’αŸ†αž˜αž½αž™ αž αžΎαž™αž™αžΎαž„αžαŸ’αžšαžΌαžœαž€αžαŸ‹αžαŸ’αžšαžΆαžŸαŸ’αžαžΆαž“αž—αžΆαž–αž˜αž’αŸ’αž™αž˜αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸƒ automaton αž€αŸ„αžŸαž·αž€αžΆ αž“αŸ„αŸ‡αžœαžΆαžŸαž˜αž αŸαžαž»αž•αž›αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αŸ’αžšαžΎαžŸαž€αž›αŸ”

αž‚αŸ†αž“αžΌαžŸαžαžΆαž„

αžšαžΏαž„αžŠαŸ†αž”αžΌαž„αžŠαŸ‚αž›αž…αžΌαž›αž˜αž€αž€αŸ’αž“αž»αž„αž‚αŸ†αž“αž·αžαžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αž“αŸ…αž–αŸαž›αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž€αžΆαžšαž”αŸ’αžšαžΎ sparse arrays αž‚αžΊαž€αžΆαžšαž‚αžΌαžŸαž•αŸ‚αž“αž‘αžΈαž—αžΆαžšαž€αž·αž…αŸ’αž…αŸ”

αžαžΆαž˜αž€αŸ’αž”αž½αž“αžœαžΆαž˜αžΆαž“αž€αž“αŸ’αž›αŸ‚αž„αž‘αŸ†αž“αŸαžšαž…αŸ’αžšαžΎαž“αž“αŸ…αž›αžΎαž•αŸ‚αž“αž‘αžΈαŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž•αŸ‚αž“αž‘αžΈαžαŸ’αžšαžΌαžœαž”αžΆαž“αžαŸ†αžŽαžΆαž„αž‡αžΆαž—αžΈαž€αžŸαŸ‚αž›αž’αŸ† αž“αŸ„αŸ‡ 71% αž“αŸƒαž—αžΈαž€αžŸαŸ‚αž›αžšαž”αžŸαŸ‹αž•αŸ‚αž“αžŠαžΈαž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αžΆαž“αŸ‹αž€αžΆαž”αŸ‹αžŠαŸ„αž™αž˜αž αžΆαžŸαž˜αž»αž‘αŸ’αžšαŸ” αž’αžΆαžšαŸαžαŸ’αž‘αžΆαžŸαŸ‹αŸ” αž αžΎαž™β€‹αž”αŸ’αžšαžŸαž·αž“β€‹αž”αžΎβ€‹αž’αŸ’αž“αž€β€‹αž’αž“αž»αžœαžαŸ’αžβ€‹αžαŸ‚β€‹αžŠαŸƒβ€‹αž˜αž“αž»αžŸαŸ’αžŸ αž“αŸ„αŸ‡β€‹αž…αž“αŸ’αž›αŸ„αŸ‡β€‹αž‘αž‘αŸβ€‹αž“αžΉαž„β€‹αž˜αžΆαž“β€‹αž…αŸ’αžšαžΎαž“β€‹αž‡αžΆαž„ ៩αŸ₯%αŸ”

αž‡αžΆαž€αžΆαžšαž–αž·αžαžŽαžΆαžŸαŸ‹ αž‚αŸ’αž˜αžΆαž“αž“αžšαžŽαžΆαž˜αŸ’αž“αžΆαž€αŸ‹αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž•αŸ‚αž“αž‘αžΈαž€αŸ’αž“αž»αž„αž‘αž˜αŸ’αžšαž„αŸ‹αž‡αžΆ raster arrays αž‘αŸ αžαŸ†αžŽαžΆαž„αžœαŸ‰αž·αž…αž‘αŸαžšαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαŸ”
αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžαžΎαž•αŸ‚αž“αž‘αžΈαžœαŸ‰αž·αž…αž‘αŸαžšαž‡αžΆαž’αŸ’αžœαžΈ? αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž”αŸ’αžšαž—αŸαž‘αž“αŸƒαžŸαŸŠαž»αž˜ αž“αž·αž„αž–αž αž»αž€αŸ„αžŽ αž“αž·αž„αž–αž αž»αž€αŸ„αžŽαžŠαŸ‚αž›αž˜αžΆαž“αž…αŸ†αžŽαž»αž…αŸ”
αž‡αžΆαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž“αŸƒαž…αŸ†αžŽαž»αž… αž“αž·αž„αž€αžΆαžšαžαž—αŸ’αž‡αžΆαž”αŸ‹αžšαžœαžΆαž„αž–αž½αž€αž‚αŸαŸ”

αž”αŸαžŸαž€αž€αž˜αŸ’αž˜αž‚αžΌαžŸαž•αŸ‚αž“αž‘αžΈαžŠαŸαž˜αžΆαž“αž˜αž αž·αž…αŸ’αž†αžαžΆαž”αŸ†αž•αž»αžαž˜αž½αž™ αž‚αžΊαž”αŸαžŸαž€αž€αž˜αŸ’αž˜αž€αŸ‚αžœαž™αžΊαž Gaia αžŠαžΎαž˜αŸ’αž”αžΈαž‚αžΌαžŸαž•αŸ‚αž“αž‘αžΈαž€αžΆαž‘αžΆαž€αŸ‹αžŸαŸŠαžΈαžšαž”αžŸαŸ‹αž™αžΎαž„αŸ” αž“αž·αž™αžΆαž™αžαžΆαž˜αž“αŸαž™αž’αŸ€αž” αž€αžΆαž‘αžΆαž€αŸ‹αžŸαŸŠαžΈαžšαž”αžŸαŸ‹αž™αžΎαž„ αžŠαžΌαž…αž‡αžΆαž…αž€αŸ’αžšαžœαžΆαž‘αž‘αžΆαŸ†αž„αž˜αžΌαž› αž‚αžΊαž‡αžΆαž’αžΆαžšαŸ sparse αž”αž“αŸ’αžαŸ– αž…αž“αŸ’αž›αŸ„αŸ‡αžŠαŸαž’αŸ†αž“αŸƒαž—αžΆαž–αž‘αž‘αŸ αžŠαŸ‚αž›αž€αŸ’αž“αž»αž„αž“αŸ„αŸ‡αž˜αžΆαž“αž…αŸ†αž“αž»αž…αžαžΌαž…αŸ—αžŠαŸαž€αž˜αŸ’αžš - αž•αŸ’αž€αžΆαž™αŸ” αž…αž“αŸ’αž›αŸ„αŸ‡αž‘αž‘αŸαž‚αžΊ 99,999999…….%. αžŠαžΎαž˜αŸ’αž”αžΈαžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž•αŸ‚αž“αž‘αžΈαž“αŸƒαž€αžΆαž‘αžΆαž€αŸ‹αžŸαŸŠαžΈαžšαž”αžŸαŸ‹αž™αžΎαž„ αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŸαž€αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸ - αžƒαŸ’αž›αžΆαŸ†αž„αžŸαž˜αŸ’αž„αžΆαžαŸ‹αŸ”

αžαŸ’αž‰αž»αŸ†αž˜αž·αž“αžŠαžΉαž„αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž–αž·αžαž”αŸ’αžšαžΆαž€αžŠαž“αŸƒαžŸαž€αž›αž›αŸ„αž€αž“αŸ…αž€αŸ’αž“αž»αž„αž‚αž˜αŸ’αžšαŸ„αž„αž“αŸαŸ‡αž‘αŸ αžαŸ’αž‰αž»αŸ†αž’αžΆαž…αžŸαž“αŸ’αž˜αžαŸ‹αžαžΆαžœαžΆαž˜αžΆαž“αž›αž€αŸ’αžαžŽαŸˆαžŸαŸ’αžšαžŠαŸ€αž„αž“αžΉαž„αŸ–

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.

αžαŸ’αž˜αžΈαŸ—αž“αŸαŸ‡ hackathon αžƒαŸ’αž›αžΆαŸ†αž„αžŸαž˜αŸ’αž„αžΆαžαŸ‹ αžŸαž“αŸ’αž‘αžŸαŸ’αžŸαž“αŸαž—αžΌαž˜αž·αžŸαžΆαžŸαŸ’αžαŸ’αžšαžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αž“αž»αžœαžαŸ’αž αž—αžΌαž˜αž·αžŸαžΆαžŸαŸ’αžαŸ’αžš. αž™αžΎαž„αž€αŸ†αž–αž»αž„αžšαž„αŸ‹αž…αžΆαŸ†αž’αžαŸ’αžαž”αž‘αž–αžΈαž’αŸ’αž“αž€αž“αž·αž–αž“αŸ’αž’αžŠαŸ‚αž›αž˜αžΆαž“αž–αŸαžαŸŒαž˜αžΆαž“αž›αž˜αŸ’αž’αž·αžαž’αŸ†αž–αžΈαž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαŸ”

αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž›αž·αž”αž·αž€αŸ’αžšαž˜αž‘αŸ†αž αŸ†αž“αŸ…αž›αžΎαžŸαž€αž›αž›αŸ„αž€αž“αŸ…αž€αŸ’αž“αž»αž„ 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

αžŸαž€αž› ^ αž•αŸ’αž›αžΌαžœ αž”αŸ’αžšαžΎαžŠαžΎαž˜αŸ’αž”αžΈαžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž–αž·αž“αŸ’αž‘αž» αž”αŸ‰αžΌαž›αžΈαž›αžΈαž“ (αž•αŸ’αž›αžΌαžœ αž‘αž“αŸ’αž›αŸαžαžΌαž… αŸ”αž›αŸ”) αž“αž·αž„αž–αž αž»αž€αŸ„αžŽ (αžαŸ†αž”αž“αŸ‹αž”αž·αž‘αž‡αž·αž : αž’αž‚αžΆαžš αž–αŸ’αžšαŸƒαžˆαžΎ αŸ”αž›αŸ”

αž€αžΆαžšαž…αžΆαžαŸ‹αžαŸ’αž“αžΆαž€αŸ‹αžšαžŠαž»αž”αž“αŸƒαž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ sparse arrays αž“αŸ…αž›αžΎαžŸαž€αž›αž›αŸ„αž€αŸ”

  1. αž™αžΎαž„αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž€αžΌαž’αžšαžŠαŸ„αžŽαŸαž“αŸƒαžœαžαŸ’αžαž»αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹ αž“αž·αž„αžŸαŸ’αžαžΆαž“αž—αžΆαž–αžšαž”αžŸαŸ‹αžœαžΆ (αž€αžΆαžšαž’αŸ’αžœαžΎαž•αŸ‚αž“αž‘αžΈ αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αž€αž˜αŸ’αž˜αž€αŸ„αžŸαž·αž€αžΆ)
  2. αž™αžΎαž„αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž˜αŸ‰αžΆαž‘αŸ’αžšαžΈαžŸαžαžΌαž…αŸ”

αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžšαžŽαžΈαž‘αžΈ 2) αž“αŸ…αž–αŸαž›αžŸαŸ’αž“αžΎαžŸαž»αŸ†αž€αžΌαž’αžšαžŠαŸ„αž“αŸαž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αž˜αž½αž™ αžŠαŸ‚αž›αž’αžΆαžαž»αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž•αŸ’αžαž›αŸ‹αžαž˜αŸ’αž›αŸƒ αž™αžΎαž„αžαŸ’αžšαžΌαžœαž‘αž‘αž½αž›αž”αžΆαž“αžαž˜αŸ’αž›αŸƒαž“αŸƒαž’αžΆαžαž»αž’αžΆαžšαŸ sparse αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜αŸ”

αž”αŸ’αžšαžΆαž€αŸ‹αžšαž„αŸ’αžœαžΆαž“αŸ‹αžŠαŸ‚αž›αž™αžΎαž„αž‘αž‘αž½αž›αž”αžΆαž“αž“αŸ…αž–αŸαž›αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž˜αŸ‰αžΆαž‘αŸ’αžšαžΈαžŸαž–αž αž»αžœαž·αž˜αžΆαžαŸ’αžšαž‡αžΆαžŸαž€αž›

αž™αž€αž…αŸαž‰αž™αŸ‰αžΆαž„αž†αžΆαž”αŸ‹αžšαž αŸαžŸ αž“αž·αž„/αž¬αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž”αŸ†αžŽαŸ‚αž€αž“αŸƒαž…αž“αŸ’αž›αŸ„αŸ‡αžŠαŸ‚αž›αž˜αžΆαž“αž…αŸ’αžšαžΎαž“αž‡αž½αžš αž™αž“αŸ’αžαž αŸ„αŸ‡ αž‚αžΌαž”αŸ”αž›αŸ” αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžšαžŽαžΈαžŠαŸ‚αž›αž›αž·αž”αž·αž€αŸ’αžšαž˜αž…αŸ†αž“αž½αž“αž‚αžαŸ‹αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ αžŸαž˜αžαŸ’αžαž—αžΆαž–αž€αŸ’αž“αž»αž„αž€αžΆαžšαž™αž€αž…αŸαž‰αž™αŸ‰αžΆαž„αž†αžΆαž”αŸ‹αžšαž αŸαžŸ αž“αž·αž„/αž¬αž‘αŸ…αž™αž€αž”αŸ†αžŽαŸ‚αž€αž“αŸƒαž…αž“αŸ’αž›αŸ„αŸ‡αžŠαŸ‚αž›αž˜αžΆαž“αž–αž αž»αž‡αž½αžš αž™αž“αŸ’αžαž αŸ„αŸ‡ αž‚αžΌαž”αŸ”αž›αŸ” αž’αžΆαž…αž˜αžΆαž“αž”αŸ’αžšαž™αŸ„αž‡αž“αŸαŸ”

αž€αŸ’αžšαž»αž˜ αžŸαž˜αŸ’αž›αžΆαž”αŸ‹ αž™αžΎαž„αž’αžΆαž…αž›αž»αž”αž’αžΆαžαž»αžαŸ‚αž˜αž½αž™ αž¬αž˜αž½αž™αž‡αž½αžš αž¬αžŸαžΌαž˜αŸ’αž”αžΈαžαŸ‚αž™αž“αŸ’αžαž αŸ„αŸ‡αž‘αžΆαŸ†αž„αž˜αžΌαž›αŸ” αžŸαžΌαž˜αž’αžšαž‚αž»αžŽαž…αŸ†αž–αŸ„αŸ‡αž›αž€αŸ’αžαžŽαŸˆαžŸαž˜αŸ’αž”αžαŸ’αžαž·αžšαž”αžŸαŸ‹αžŸαž€αž› αžœαžΆαž€αžΎαžαž‘αžΎαž„αž™αŸ‰αžΆαž„αž†αžΆαž”αŸ‹αžšαž αŸαžŸ - αžšαžΆαž”αŸ‹αž–αžΆαž“αŸ‹αžŠαž„αž›αžΏαž“αž‡αžΆαž„αž€αžΆαžšαžŠαž€αž…αŸαž‰αž–αžΈαž’αžΆαžαž»αžŠαŸ„αž™αž’αžΆαžαž»αŸ”

αžαž½αž›αŸαžαž“αŸαŸ‡αž”αž„αŸ’αž αžΆαž‰αž–αžΈαž’αžΆαžšαŸαž”αžΈαžœαž·αž˜αžΆαžαŸ’αžšαž‡αžΆαžŸαž€αž› ^a αž“αž·αž„αž”αŸ’αžšαž—αŸαž‘αž•αŸ’αžŸαŸαž„αž‚αŸ’αž“αžΆαž“αŸƒαž€αžΆαžšαž›αž»αž”αŸ”

αžŸαž€αž›αž‚αžΊαž‡αžΆαžŠαžΆαžœαž€αŸ†αžŽαž”αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ” ធអរេ αžαžΌαž…αŸ” αž•αŸ’αž“αŸ‚αž€αž‘αžΈ 3

αžŠαžΎαž˜αŸ’αž”αžΈαž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž”αŸ†αžŽαŸ‚αž€αž“αŸƒαž‘αŸ†αž αŸ†αžŠαŸ„αž™αž”αŸ’αžšαžΎαž›αž·αž”αž·αž€αŸ’αžšαž˜αžŠαŸ‚αž›αž‚αŸαžŸαŸ’αž‚αžΆαž›αŸ‹ αž’αŸ’αž“αž€αž’αžΆαž…αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆ αž”αž‰αŸ’αž…αžΌαž›αž…αžΌαž›αž‚αŸ’αž“αžΆ.

αž€αžΆαžšαž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž‡αž½αžšαžˆαžšαž˜αŸ‰αžΆαž‘αŸ’αžšαžΈαžŸαž‘αŸ…αž€αŸ’αž“αž»αž„αž’αžαŸαžšαž‡αž½αžšαžˆαžšαŸ–

; Π—Π°Π΄Π°Π΄ΠΈΠΌ Ρ‚Ρ€Ρ‘Ρ…ΠΌΠ΅Ρ€Π½Ρ‹ΠΉ Ρ€Π°Π·Ρ€Π΅ΠΆΠ΅Π½Π½Ρ‹ΠΉ массив 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

αž’αŸ’αžœαžΈβ€‹αžŠαŸ‚αž›β€‹αž‚αž½αžšβ€‹αž±αŸ’αž™β€‹αž…αžΆαž”αŸ‹β€‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸβ€‹αž’αŸ†αž–αžΈβ€‹αž’αžαŸαžšβ€‹αž‡αž½αžšβ€‹αžˆαžšβ€‹αž‚αžΊβ€‹αžαžΆ αž™αžΎαž„β€‹αž€αŸβ€‹αž˜αžΆαž“β€‹αž’αžΆαžšαŸβ€‹αžαŸ’αžœαŸ‚αž„β€‹αžŠαŸ‚αžš αžŠαŸ‚αž›β€‹αžαŸ’αžšαžΌαžœβ€‹αžαŸ‚β€‹αž…αžΌαž›β€‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšβ€‹αžαžΆαž˜β€‹αžšαž™αŸˆ $GETαž…αžΆαž”αŸ‹αžαžΆαŸ†αž„αž–αžΈαžαž˜αŸ’αž›αŸƒαž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž“αŸ…αž€αŸ’αž“αž»αž„αžœαžΆαŸ”

αž€αžΆαžšαž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž”αŸ†αžŽαŸ‚αž€αž“αŸƒαž‘αŸ†αž αŸ†αž€αŸαž’αžΆαž…αž’αŸ’αžœαžΎαž”αžΆαž“αžαžΆαž˜αžšαž™αŸˆαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžαžΌαž…αž˜αž½αž™αžŠαŸ„αž™αž”αŸ’αžšαžΎαž˜αž»αžαž„αžΆαžš $ αž”αž‰αŸ’αž‡αžΆαž‘αž·αž‰. αž“αŸαŸ‡αž„αžΆαž™αžŸαŸ’αžšαž½αž›αž‡αžΆαž–αž·αžŸαŸαžŸαž“αŸ…αž›αžΎαž…αž“αŸ’αž›αŸ„αŸ‡αžŠαŸ‚αž›αžŸαž“αŸ’αž‘αžŸαŸ’αžŸαž“αŸαž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‚αžŽαž“αžΆαž‡αžΆαž”αžšαž·αž˜αžΆαžŽ (αž‚αŸ†αž“αžΌαžŸαžαžΆαž„) αŸ”

αžŸαŸαž…αž€αŸ’αžαžΈαžŸαž“αŸ’αž“αž·αžŠαŸ’αž‹αžΆαž“

αžŸαž˜αŸαž™αž€αžΆαž›αž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž”αž„αŸ’αž€αžΎαžαž“αžΌαžœαž€αžΆαžšαž„αžΆαžšαžŠαŸ‚αž›αž˜αžΆαž“αž˜αž αž·αž…αŸ’αž†αžαžΆαžαŸ’αž˜αžΈαŸ” αž€αŸ’αžšαžΆαž αŸ’αžœαž’αžΆαž…αž”αž„αŸ’αž€αžΎαžαž”αžΆαž“αžšαžΆαž”αŸ‹αž–αžΆαž“αŸ‹αž›αžΆαž“αž“αŸƒαž…αŸ†αž“αž»αž…αž€αŸ†αž–αžΌαž› αž•αŸ‚αž“αž‘αžΈαžŠαŸ‚αž›αž”αž„αŸ’αž€αžΎαžαž”αžΆαž“αžšαžΆαž”αŸ‹αž–αžΆαž“αŸ‹αž›αžΆαž“αž…αŸ†αžŽαž»αž… αž αžΎαž™αž’αŸ’αž“αž€αžαŸ’αž›αŸ‡αž”αŸ’αžšαž αŸ‚αž›αž‡αžΆαž…αž„αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŸαž€αž›αž›αŸ„αž€αž•αŸ’αž‘αžΆαž›αŸ‹αžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸαž“αŸ…αž›αžΎ automata αž€αŸ„αžŸαž·αž€αžΆ (1, 2).

αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž”αžšαž·αž˜αžΆαžŽαž“αŸƒαž‘αž·αž“αŸ’αž“αž“αŸαž™αž–αžΈαž’αžΆαžšαŸαžαžΌαž…αž˜αž·αž“αž’αžΆαž…αžŸαž˜αž“αžΉαž„ RAM αž‘αŸ€αžαž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αž–αž½αž€αžœαžΆ αž“αŸ„αŸ‡αžœαžΆαž˜αžΆαž“αžαž˜αŸ’αž›αŸƒαž–αž·αž…αžΆαžšαžŽαžΆαž–αžΈαž›αž‘αŸ’αž’αž—αžΆαž–αž“αŸƒαž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž‚αž˜αŸ’αžšαŸ„αž„αžŸαŸ’αžšαžŠαŸ€αž„αž‚αŸ’αž“αžΆαž“αŸ…αž›αžΎαžŸαž€αž›αž›αŸ„αž€ αž“αž·αž„ COS αŸ”

αžŸαžΌαž˜β€‹αž’αžšαž‚αž»αžŽβ€‹αž…αŸ†αž–αŸ„αŸ‡β€‹αž€αžΆαžšβ€‹αž™αž€αž…αž·αžαŸ’αžβ€‹αž‘αž»αž€αžŠαžΆαž€αŸ‹β€‹αžšαž”αžŸαŸ‹β€‹αž›αŸ„αž€αž’αŸ’αž“αž€! αž™αžΎαž„αž€αŸ†αž–αž»αž„αžšαž„αŸ‹αž…αžΆαŸ†αžŸαŸ†αžŽαž½αžš αž“αž·αž„αž”αŸ†αžŽαž„αž”αŸ’αžšαžΆαžαŸ’αž“αžΆαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžαž·αž™αŸ„αž”αž›αŸ‹αŸ”

αž€αžΆαžšαž˜αž·αž“αž‘αž‘αž½αž›αžαž»αžŸαžαŸ’αžšαžΌαžœ: αž’αžαŸ’αžαž”αž‘αž“αŸαŸ‡ αž“αž·αž„αž™αŸ„αž”αž›αŸ‹αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αž…αŸ†αž–αŸ„αŸ‡αžœαžΆαž‡αžΆαž‚αŸ†αž“αž·αžαžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ† αž αžΎαž™αž˜αž·αž“αž˜αžΆαž“αž‘αŸ†αž“αžΆαž€αŸ‹αž‘αŸ†αž“αž„αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž˜αž»αžαžαŸ†αžŽαŸ‚αž„αž•αŸ’αž›αžΌαžœαž€αžΆαžšαžšαž”αžŸαŸ‹ InterSystems Corporation αž‘αŸαŸ”

αž”αŸ’αžšαž—αž–: www.habr.com

αž”αž“αŸ’αžαŸ‚αž˜αž˜αžαž·αž™αŸ„αž”αž›αŸ‹