á°áá.
á áá ááµá³áá» ááµá¥ ᣠá á®ááá°á á³áááµ ááµá¥ áá«ááœá ááášáážáµ ášáá«áááá áá áá ášáášá á áááá®áœá áááááá áá°á᩠ᣠá¥á á¥áá²áá á áá ááááµ áá¥á âááªáµá³áâ áµáá°ášááµ áµá áááµ á°ášá᪠á¥áá°áá á«á ááá á®áœá á¥ááá«áá á¢
áµááá , á¥áááá. áá ášááááªá«á á áá°áá - áááœáá áá«á áá á¥áá°áá á¥á áá á¥áá°áá (ášá°á᫠ᣠá«áá°á᫠ᣠáá¥á°áµ ᣠáá¥á°áµ ášááá ᣠá£á á¥á á ááᜠá¥á ááá á¶áœ) áááœáá ášááááá áááµáááá¢
áµááá
á¥áááµá¢ á "áá«á áášáá»" ášáášá á áááá®áœ áá á áá«á®áœ á áá?
1. ášááµáªááµ áášá á áááá®áœ
1.1 ášá áµáá²á² ááµáªááµ. ášá áá«á£áœ ááµáªááµ ášášáµá á¥á ášáááµ áá¥á¶áœ ášáá«á á«áᜠáá¥á®áœ áá ášáááá±á áµ ááµáªááµ áá ᣠá¥á ášá¥á«áá³áá± á€áááá¶áœ á¥áŽáµ a(i,j) ášááá°áá á áááá¹ áá«ášá á£á á ááᜠááá ááá á áááááµ ááᢠi á¥á j (á«áá°áá« áá«á á¥áá²á á«áá ááµáªááµ áááá á¥áá°ááá ááᜠáá, ááá áááá áááᜠášááá á²á«ááá á áá á¥á» á¥áá°ááášáᜠá°áµááá°áá). áá¥á°áµ áááážá áá«ááœá£ a(i,j) áš i á¥áµáš j á£áá ášá áá á¥ááµ (á¥áá²á á áááµ á áá ášááᣠášáá«á a(i,j)= 0) á¥á ááá¥á°áµ áá«ááœá£ á¥áá²áá á áá¥á°á± áááá ááœááᢠ(á á áá áá¥á°áµ) ášá°á áá±áµá á áááœ.
1.2 ášááµá°áµ ááµáªááµ. á áá áá᳠ᣠášá¥á áá«á á¥áá²á á á áá ášá¥ ááµá¥ á°ášááœá·á ᣠá¥áá° á°áᡠᣠášášáµá áá¥á®áœ ášá«áá¹ áá¥á®áœ áá áááá³á ᣠá¥á ášá áá± áá¥á®áœ á áµááµá ášá°áá á©áµ á ááᜠáá áááá³áᢠá ááµ á«á á¥á á áá á¥ááµ á á¥áá³ážá ášá°ášá°á± áá® á«ááá á¥áŽáµ á á°ááá°á áááµ ááµá¥ áááá (ááá°áá© áá«áᜠ1 ášá°ááá áááµ á¥á á áá ášá°ášá°á± ášáá ᣠáá³áá áá«áᜠ- â1â á áá ášáá) ášá«á "ááá£áµ" á¥á "-1" á ááµá¡ "á«á«á°á°" ášáá (áááµá³ááµ ááá áá, áááá«á±á "ááááµ" ááááµ á¥áá²á á "-1" áá¥á ááµá¥ "ášá°ášááš" áááµáá)). ááá¥á°áµ áá«ááœ, á áµáá, áš 1 á¥á -1 ááá , ášá ááá á á ááá áá¥á°áµ áááᜠááœáá.
2. ášáá¥á áášá á áááá®áœ
2.1 ášá áá«á£áœ áááá. á°á á, á¥áá ááá ááá ááá áááµáá. á¥á«áá³áá± ášáá«á á«á á á á ááá ášááááá ášááá áªá« ááá á (ááááᣠá¬áá°áᣠá á°á«á°áᣠ...) áá áááá ááœááᣠáá á ášá°á°á á áá á«ááµá áááá á«áᜠáá¥á®áœ á«ášáá»áᢠáá°áá© áá«ááœá£ áá° á¥áá°áá á«á áááá ááµá¥ ášááášáášá ášá£á áªá á«á "ášá°áá«" á áá áá°áááá£ážá á«áᜠá¥á» ááᢠááá¥á°áµ áá«áᜠá á°áá£á á© ášá áá ááµá¥áµá¥ áááá.
2.2 ášááµá á á¥áá¶áœ áááá. á á£á á³áá ášááᥠááá áᢠášá áá áááá ᣠá«ááŽá áááœááµ á¥áá°áááášá ᣠá á¥ááá± ášáá«á á ááᜠáááá áá ᣠá¥á«áá³áá±á á ááá» á°ášá ᣠá áášášá»á á«á áááá»á (á«áá°áá© áá«áᜠáµááá á¥áá á áµááá á áá°áá ᣠááá á¥áá³á áááááµ ááœáá) ášá°áá«á© á ááœá áá áá ᣠááá³á ᣠá á á°á á°ášá°á ááášáá á«ááœá áááá¹) á¥á áá¥á°áµ (áááá áá«áᜠá¥á»)á¢
ášáá ášá°áášáá©áµá ášááµáªááµ áááá®áœ á á áá áááá (á¥á á áá³áááœ) áááášáµ ááœááᣠááá³áá¡-
2.3 ášá áá«á£áœ áµááµáᢠá á£á ášá°ááá°á ááá á á áá°áá. á ááá ááᣠáá° á ááµ ášááá áªá« ááá á (áµááµáᣠá¬áá°á) áš"áážáá«" á°áá³á áááá®áœ ááᢠášááááªá«á n (á¥áá° áá«á á«áᜠáá¥á) ášá¥áá°áá áááá± áµááµá á á«ááµ á°áá³á³á áµááµá ášááá» á¢ááŽáá¶áœá áááá ᣠášáá« ááá® ášá°á°á á á ááµ á á áᥠá«á ááá á«áᜠá á°ášá³á³á ááááá¢
á¥áá
á á£á ááášá³áµ ášáá»á (áá«áŽ) áá¥á«áªá« á áááá¡-
3. Adjacency á¬áá°á á¥á á á¶áºá¬á²á á áµáá°ááµ áµááµá
ášá¥ááá ááµáá®áœ á°á«á² áá®ááœáá áá®áá«áá á³ááá á áá á áá áá«ááœá ášááááᣠá á¥áááá áá ášá³áá» áááá®áœá áá°á« á¥áá°áá á á³ááᢠá á¥ááá¥, áá«á á¥á ááá á¶áœ á¥á á ááᜠá«ááµ áá¹ áá. á¥á áµááá ᣠášá¥áá³ááá ášá³áá» áááá®áœá á áá³á áᣠá âáááµ/á ááá«áážá/áá»á»á«/áááŽáœáâ áááµá áá áá«á£áœ á¬áá°á á¥á áá°á£á£áªááµ áµááµá áµá©ášáµ á¥ááµáá°á¥ áá³á¥ á ááá£ááá¢
3.1 Adjacency á¬áá°á
áá³á (a1): áá¥á°áµ ášááá áá«á
ááá°ááá áá«á ášá áá«á£áœ á¬áá°á á¥áá á«ááá á£ášá°áá£á£á áá¥á á«áážá á¢áá²áá®áœ (a[2i] ᣠa[2i+1] á£... ᣠá¥á ášá°áá áá©á áµ á 0) ᣠá¥á«áá³áá± á¥ááµ áá¥á®áœ á«áá áµá¢ a[2i] ááᣠa[2i+1] á¥áá°á
á°á á°ášá°áážá a[2i] á¥á a[2i+1] áá«ášá á«ááá ášáá«á á áá áááá»áá¢
áá
ášáá
á ááááµ áá«á ááá«á±á ááá á áááá©á áášá á áá«áá (ááá±á á áá«á®áœ áá»áá)ᢠášá²áá«á á
ááá±á á áá ááá áµ áá á áá áš a[2i] áá° a [2i+1] á¥áá°ááá« ááá á«áᢠá¥áá
á¥á ášá³áœ: ááá°áá© áá«ááœ, á áµááá ášáá, ááá
á³áµ ááá¶áœ á
á°á á°ášá°á ááµááá¶áœ áá°áá á© ááœáá (ááá³á, áá¥á± ášá°áá°á á áá¥á áá
á°á áá á«áá á«á ááááªá« ááá£á).
á C++ ááµá¥ std:: vector á á áá áá ášá á á«á¢á« á¬áá°áá áá¥ááµ á°áᢠáá, áµááá á ášáá ášááᥠááá á áµá.
áá³á (a2)á¡- áá¥á°áµ ášááá áá«áᣠášá áá áá¥á°á¶áœ á¢áá²áá áážáá¢
ášáá³á (a1) áá á ááá»ážáᣠášá°á áá á¬áá°á á¥áááááá¢áááá áá«á ášá¢áá²áá á áá áá¥á°á¶áœ ášá³áá áµá¥áµá¥ (á°áááá á á°á«á°á) ášáá¥á®áœ (a[3i]ᣠa[3i+1]ᣠa[3i+2]ᣠ...ᣠá¥á á² 0 ášá°áá áá©á áµ)ᣠá¥á«áá³áá± âá¶áµáµá®áœâ ášáá¥á®áœ a[3i]ᣠa[3i+1]ᣠa[3i+2] ášáá«áá á áá á a[3i] á á°áá á©áµ á«áᜠáá«ášá áááááᢠá¥á a[3i+1]ᣠá á á°á á°ášá°áᣠá¥á á¥áŽá± a [3i+2] ášáá á áá áá¥á°áµ ááᢠá¥áá²á áááá± áá«áá ááá« ááá ááá« ááœáá.
áá«á£ (á)á¡- áá¥á°áµ ášááá áá«áᣠá¢áá²áá á«ááá ášá áá áá¥á°á¶áœ
á á ááµ áµááµá (á¬áá°á) ááµá¥ ášá°áá«á© áá¥áš ááá®áœá áášáážáµ ášááá»á áµááá, ááá³á ášáášá°ááá á°áá£á«á ááµášá áá»áá. áá«á á á¬áá°á á¥ááµ ááµá¥ áášáá»á, á áá ááµá¥ ášááááªá«á á¬áá°á ášáá«á á áá«á£áœ á¬áá°á áá¥á°á±á á³áááᜠá¥á ááá°áá á¬áá°á á°áá³á áá¥á°áµá áááá (á C ++: std :: á¥ááµ áá°áá á ááœáá). ). áµááá ᣠá ááááªá«á á¬áá°á á¢ááŽáá¶áœ 2iᣠ2i+1 áµá á£á á¥ááµ á«áᜠáá°áááá á áá áá¥á°á± á ááá°áá á¬áá°á á¢ááŽááµ i áµá á«áá á€ááááµ áá á¥á©á ááááá¢
á°á á, áá ááá á áµááá?
á°á á ᣠášá¥ááá ááµáá®áœ á°á«á² á¥á áœáá®áœá áááá³áµ á á£á á áá áá á ááá¶á³áᢠá°á á ᣠášáá°á á á¥á᳠ᣠášáášá°ááµ á¥á áᜠááá«á á¢
- ášá áá«á£áœ á¬áá°áᣠáá á¥áá°ááá âá¢ááá¬á²áâ ááá áᣠá á£á ášá³áá ááᣠášá áá«á£áœ ááµáªááµ á«áá° ášááµá³ááµ áœáá³ áááá (á á°áá áá«ááœ) á¥á ááá°áá á á á ááá«áááµ ááá ááá¢
- ášáá«á á«ááœ, á ááá á°ášá, á á áá³á áá¥á®áœá ááááµ áá°ášáá£ážá ááœáá. á¥áá²á á«á âá ááááµâ ášáá«áµááá á¢áááµ?
- áá«áᜠášá°áá«á© áá¥á°á¶áœ (á ááá³áᣠá áá³áᣠá¥áá²á«áá áá®) á«áážá á áá«á³ á áááœá á¥á á áá«á³ ááá á¶áœá ááá ááœááᢠá¥áá ááá áá°áŠáœ ášáá.
- á¥áá²áá ášá°áá«á© áá¥ášá¶áœá áá° á ááᜠááá°á¥ ááœáá - áá áá áá áášá ááá 4á áááášá± á¢
ááá áá, áá "áááá" á áá¥ááµ áá° á«á ááµášáµá á¥áá°ááá«ááááµ ááá á á áá áµ. á¥á á¥áá ášá á¶áºá¬á²á á áµááŽáá² áµááµá áá° áá³á ááá£á, á¥á±á ášáá á á³áœ á°á¥á«áá·á.
3.2 á á¶áºá¬á²á á°áá³á áµááµá
áµááá , áá° á ááµ ášá°áá°á á áá ááµášáµ, áá¥á°á± á¥á ááᜠáá¥ášá¶á¹ áá¥á áá³á ášáá á¥á ášááµá³áá» ááµááá¶áœ ášá áá«á£áœ ááµáªááµ á¥ááµáá áá á ááá á±ááá, ášáá«á áá á áœáá áááá³áµ ášá áᢠá¬áá°áá á¥ááŽáµ ááášá á¥áá°áááœá á¥ááµá¥. áµááá ááá ášáá«á á áá áá, á¥á±á á¥áá° ášá³áá á¥ááµ áá¥á®áœ áááᜠááœáá. áá áá áááµáá? á á á¶áºá¬á²á áµááµá ááµá¥ ááá á áá°áá? á¥á, ášáá, ááá á°áá£á«á á áááá? á¥á«áá³áá± ááá - ášá³áá á¥ááµ á¢áá²áá - ášáá áá ášááááá áµ á á¶áºá¬á²á áµááµá ááášá - á¢áá²áá ááá ášá ááá áá¥á°áµ ášáááᜠá¥ááá°á áá¥áᢠá C ++ ááµá¥, á std :: ášá«áá³ áá«á£ ( std :: á«áá³ ) áá á áááµášáµ áá áá ááá á áá°áá á á°áᢠáá. , int> ááá std :: á«á᳠ᣠáµáá¥>) ᣠááá std :: á£áá¥á á«áá¹ ášá°á á áᢠá°á á ᣠᚠâááµáªááµâ á áááá®áœ á«áá° áá á°áš áµááµá³á ášáááµá± ᣠáá«ááœá á á áá«á³ áá°á¶áœ á¥á á ááᜠáááá¹ ášááœá á¥á áš vertex áá¥á®áœ á áá³á ááááá á¥á¥á ááµááá¶áœ ášááµá áá«ááœá ááášáážáµ ááá á á áá (á ááá á áá á«áµááááá, áá á ááá).
4. ášááᥠá áááá®áœ áá áážá, áá ášáá ááá áááµáá
á¥á á¥áááµ áá: á áá«á³ áœáá®áœá á ááá³á áµ áá, á áá³ááµ á£á áªá«áµá á áá«á á ááᜠáá ááá°á¥ á¥á, á áá áá°ášáµ, áášáážáµ á«áµááááá. á¥ááá á á£á áªá«áµ á áá«á»á ááá³ áá° á¢áá²áá ááááµ ášá°á»á á¥áá²á á«ááµá âáá«áᜠášá°ášá᪠á£á áªá«áµ ááâ ášá°á«áá ášá áᢠá¬áá°á á¥á ášá á¶áºá¬á²á á áá¢ááµ áµááµáá á áá áá áášáážáµ áá»ááá¢
á¥ááá²á«á, áá¥á°áµ ášááá áá«á ááášá, áá¥á«áá³áá± á áá ááá³á á«á á, 2 á°ášá᪠á£á áªá«áµá á á¢áá²áá ášá°ááá¹áµá áášáážáµ á áµááá áá. á áá ááá³á£ ášá¥á±á ášá áá«á£áœ á¬áá°á á¥áá° ášá³áá áš"á¥ááµ" á³ááá "á³ááµáµ" ášá¢áá²áá áµá¥áµá¥ (a[2i]ᣠa[2i+1]ᣠa[2i+2]ᣠá [2i+3]âŠ)ᣠa[2i+2] á¥á a[2i+3] ášá°áááá á áá á£á áªá«áµ ášáááµáá áµá¢ ášá áá á¢áá²áá áá¥á°á¶áœ ááá áá«áᣠáµááá á á á ááá á°áá³á³á áá (áá©áá± á£á áªá«á± ášá ááá áá¥á°áµ áášá°áážá á¥á» áá á¥á á a[2i+3] á¥á a[2i+4] á á«ááµ áááá»áᢠ, á¥á á áá á¥á«á± 4 á³ááá 5 ášá³áá áá¥á®áœ áááá»á). á¥á á¢áá²áá á«ááá ášá áá áá¥á°á¶áœ ááá áá«á á£á áªá«á± á£áá°ááá ááá ááµá¥ ááá ááœááá¢
ášá¢áá²áá á áá áá¥á°á¶áœ ááá áá«áᜠá á¶áºá¬á²á á áá«á£áœ áµááµá á²á áá á¥áá° á ááµ áá á áá¥á á³ááá ášáá¥á®áœ áµááµá (á¬áá°á) ášá«á áá¥á°áµ á á°ášá᪠ááᜠá áµááá ášáááµá áá áááᜠáá»áá áá ááá« ážá£á«áµ. á á°áá³á³á áá, á¢áá²áá á«ááá áá¥á°á¶áœ áá³á áá á ááµ áœáá á°áá³áá áá¥á¥ áá¥á áá ááááµ áááᜠá áµáááááµ áááá (á á, áá ášáááᜠáá, ááá áá á¥áá²á á«á áááá¶áœ á á£á á¥á ášáá, á¥á ášáá á áá°áá ášáá. á á£á âá á³ááâ áµáᥠá ááááážááᣠášáá« ááá áááá ááœáá) . áá áááµ á C++ ášá°á«áá ášá áµá°á³á°á¥ áµáµáµá áµááµá á¥áá°áášá°áá áááá ááœááá¡ std :: á«áá³ , std :: vector> ááá std :: á«áá³ , std :: á¬áá°á, á "ááá-áá-á¬áá°á" ááµá¥ á«áá ášááááªá«á á¥áŽáµ ášá áá áá¥á°áµ áááá, ášáá«á ášá£á áªá«á± á ááá áµá«ááᜠáááá.
á¥á áœáá
áµá áá«áᜠá¥á áµáá° ááá®áœ á á á áááá¡-
1. á®áááᣠá¶ááµ á€áœ.ᣠááá°áá°áᣠá»áááµ I.ᣠáªášáµáµá£ á®áááµ á€á.ᣠáµá³ááᣠáááááµá¢ á áááªááá¡ ááá£á³ á¥á áµáá°áá¡ 2á á¥áµáá¡ áµá«ááµ. ášá¥ááááá - á€á.: ááá«ááµ áá°áá« á€áµ, 2011.
2. áášáª áá«áá. ášáá«á á²ááª. á€á: áá, 1973.
áµáá¥ááá
á°áá³á³á ášá¬áá°á á¥á á°á£á£áª áµááµá ášá°á«á²á ááá£á¡-
3. Chernoukhov S.A. áá«ááœá / á€áµá€ Chernouhov áááášá á¥á ááášáážáµ ášá áµááŽáá² á¬áá°á á¥á á á¶áºá¬á²á á°áá³á áµááµáᢠAdjacency á¬áá°á á¥á ášá áá«á£áœ á«áá³ á¥áá° ášááᥠá áááá®áœ áá«á áááášá // ášá áá á áá á³ááá³á á¥á á°áá£á«á á®ááášááµ áá£á¥áᜠáµá¥áµá¥ "ášáá á« á¥áµáá¶áœá áá€á¶áœ ášáá°áá á áœáá®áœ á¥á á¥áá±á áááá³áµ áááá¶áœ" (á³á«á¶á, áŽááŽáá á 14.09.2019, 2019). â áµá°ááá³ááá¡ á€á€áá áᣠ65ᣠááœ. 69-XNUMX
á ááá± áá á áá ášááµáá áá ááá®áœá¡-
4.
5.
ááá: hab.com