Підтримка
www.wikidata.uk-ua.nina.az
Mnozhina abstraktnij tip danih i struktura danih v informatici ye realizaciyeyu matematichnogo ob yekta skinchenna mnozhina Dani tipu mnozhina dozvolyayut zberigati obmezhene chislo znachen pevnogo tipu bez pevnogo poryadku Povtorennya znachen yak pravilo nepripustimo Za vinyatkom togo sho mnozhina v programuvanni skinchenne vono zagalom vidpovidaye koncepciyi matematichnoyi mnozhini Dlya cogo tipu v movah programuvannya zazvichaj peredbacheni standartni operaciyi nad mnozhinami Zalezhno vid ideologiyi rizni movi programuvannya rozglyadayut mnozhinu yak prostij chi skladnij tip danih Teoriya tipivV teoriyi tipiv mnozhini v osnovnomu ototozhnyuyutsya z indikatornoyu funkciyeyu harakteristichnoyu funkciyeyu takim chinom mnozhina znachen tipu A displaystyle A mozhe buti poznachena 2 A displaystyle 2 A abo P A displaystyle P A Pidtipi abo pidmnozhini mozhut buti zmodelovani utochnyuvalnimi tipami a faktor mnozhini zamineni en Harakteristichna funkciya F displaystyle F mnozhini S displaystyle S viznachayetsya tak F x 1 if x S 0 if x S displaystyle F x begin cases 1 amp text if x in text S 0 amp text if x not in text S end cases Teoretichno velika kilkist inshih abstraktnih struktur danih mozhe rozglyadatis yak mnozhina z dodatkovimi operaciyami i abo dodatkovimi aksiomami nakladenimi na standartni operaciyi Napriklad abstraktna struktura danih kupa rozglyadayetsya yak mnozhina struktur iz min i S i operaciyeyu yaka povertaye najmenshij element OperaciyiOsnovni teoretiko mnozhinni operaciyi Viznachayut taki operaciyi algebri mnozhin union i S T i povertaye ob yednannya mnozhin S i T intersection i S T i povertaye peretin mnozhin S i T difference i S T i povertaye riznicyu mnozhin S i T subset i S T i predikat sho pereviryaye chi ye mnozhina S pidmnozhinoyu mnozhini T Statichni mnozhini Tipovi operaciyi yaki zadayutsya statichnoyu strukturoyu mnozhini S is element of i x S i pereviryaye vhodzhennya znachennya X u mnozhinu S is empty i S i pereviryaye chi ye mnozhina S porozhnoyu size i S i abo cardinality i S i povertaye chislo elementiv S mnozhini iterate i S i funkciya sho povertaye odin dovilno vibranij element mnozhini S pri kozhnomu vikliku enumerate i S i povertaye u dovilnomu poryadku spisok elementiv yaki mistyatsya u mnozhini S build span class mwe math element span class mwe math mathml inline mwe math mathml a11y style display none math xmlns http www w3 org 1998 Math MathML alttext displaystyle x 1 x 2 x n semantics mrow class MJX TeXAtom ORD mstyle displaystyle true scriptlevel 0 msub mi x mi mrow class MJX TeXAtom ORD mn 1 mn mrow msub mo mo msub mi x mi mrow class MJX TeXAtom ORD mn 2 mn mrow msub mo mo mo mo mo mo mo mo mo mo msub mi x mi mrow class MJX TeXAtom ORD mi n mi mrow msub mstyle mrow annotation encoding application x tex displaystyle x 1 x 2 x n annotation semantics math span noscript img src https www wikidata uk ua nina az image aHR0cHM6Ly93aWtpbWVkaWEub3JnL2FwaS9yZXN0X3YxL21lZGlhL21hdGgvcmVuZGVyL3N2Zy82N2JhMmQ1ZWNhNzllYjRmNzA4OGJhM2JkMzJjMTgwMDc3OWQwMzhh svg class mwe math fallback image inline mw invert skin invert aria hidden true style vertical align 0 671ex width 13 52ex height 2 009ex alt displaystyle x 1 x 2 x n noscript img alt image class img layz bg lazy style width 13 52ex height 2 009ex vertical align 0 671ex data src https www wikidata uk ua nina az image aHR0cHM6Ly93aWtpbWVkaWEub3JnL2FwaS9yZXN0X3YxL21lZGlhL21hdGgvcmVuZGVyL3N2Zy82N2JhMmQ1ZWNhNzllYjRmNzA4OGJhM2JkMzJjMTgwMDc3OWQwMzhh svg data alt displaystyle x 1 x 2 x n data class mwe math fallback image inline mw invert skin invert span stvoryuye mnozhinu zi znachennyami x 1 x 2 x n displaystyle x 1 x 2 x n create from collection stvoryuye novu mnozhinu yaka mistit u sobi vsi elementi danoyi sukupnosti abo vsi elementi povernuti iteratorom Dinamichni mnozhini Dinamichni strukturi zazvichaj dodayut create stvoryuye novu spochatku porozhnyu mnozhinu create with capacity n stvoryuye novu spochatku porozhnyu mnozhinu ale rozmirnistyu n add x S dodaye element x do mnozhini S yaksho takogo she ne isnuye remove S x vidalyaye element x iz mnozhini S yaksho isnuye capacity S povertaye maksimalne chislo elementiv yake mozhe mistiti S Deyaki mnozhinni strukturi mozhut dozvoliti sobi vikoristovuvati lishe deyaki iz cih operacij Potreba kozhnoyi operaciyi bude zalezhati vid realizaciyi a takozh konkretnih znachen sho vhodyat do mnozhini i poryadku u yakomu voni roztashovani u mnozhini Dodatkovi operaciyi Isnuye bagato inshih operacij sho mozhut buti viznacheni shodo terminiv vishe taki yak pop S povertaye dovilno vibranij element mnozhini S i vidalyaye jogo z S pick S povertaye dovilno vibranij element mnozhini S Z funkcionalnoyi tochki zoru mutator ror mozhe buti interpretovanij yak para selektoriv pick rest de rest povertaye mnozhinu sho vklyuchaye v sebe usi elementi okrim vibranogo map F S povertaye mnozhinu riznih znachen otrimanih vid F do kozhnogo elementa S filter P S povertaye pidmnozhinu elementiv sho mistyatsya u S ta zadovolnyayut danij predikat P fold A span class mwe math element span class mwe math mathml inline mwe math mathml a11y style display none math xmlns http www w3 org 1998 Math MathML alttext displaystyle 0 semantics mrow class MJX TeXAtom ORD mstyle displaystyle true scriptlevel 0 msub mi mi mrow class MJX TeXAtom ORD mn 0 mn mrow msub mstyle mrow annotation encoding application x tex displaystyle 0 annotation semantics math span noscript img src https www wikidata uk ua nina az image aHR0cHM6Ly93aWtpbWVkaWEub3JnL2FwaS9yZXN0X3YxL21lZGlhL21hdGgvcmVuZGVyL3N2Zy9iZDA1OGRhYzYzMDJlY2UwZWM5YTNlMWNmYWQ4YTM2Y2E2NzQ5MDNh svg class mwe math fallback image inline mw invert skin invert aria hidden true style vertical align 0 671ex width 1 054ex height 1 676ex alt displaystyle 0 noscript img alt image class img layz bg lazy style width 1 054ex height 1 676ex vertical align 0 671ex data src https www wikidata uk ua nina az image aHR0cHM6Ly93aWtpbWVkaWEub3JnL2FwaS9yZXN0X3YxL21lZGlhL21hdGgvcmVuZGVyL3N2Zy9iZDA1OGRhYzYzMDJlY2UwZWM5YTNlMWNmYWQ4YTM2Y2E2NzQ5MDNh svg data alt displaystyle 0 data class mwe math fallback image inline mw invert skin invert span F S povertaye znachennya A pislya zastosuvannya formuli span class mwe math element span class mwe math mathml inline mwe math mathml a11y style display none math xmlns http www w3 org 1998 Math MathML alttext displaystyle A i 1 F A i e semantics mrow class MJX TeXAtom ORD mstyle displaystyle true scriptlevel 0 msub mi A mi mrow class MJX TeXAtom ORD mi i mi mo mo mn 1 mn mrow msub mo mo mi F mi mo stretchy false mo msub mi A mi mrow class MJX TeXAtom ORD mi i mi mrow msub mo mo mi e mi mo stretchy false mo mstyle mrow annotation encoding application x tex displaystyle A i 1 F A i e annotation semantics math span noscript img src https www wikidata uk ua nina az image aHR0cHM6Ly93aWtpbWVkaWEub3JnL2FwaS9yZXN0X3YxL21lZGlhL21hdGgvcmVuZGVyL3N2Zy9kNjY5ZGIwOGIwZWM2YzBlN2MwMDM1NmNlZWY2ZTdhMmFiZDI5OTcy svg class mwe math fallback image inline mw invert skin invert aria hidden true style vertical align 0 838ex width 16 599ex height 2 843ex alt displaystyle A i 1 F A i e noscript img alt image class img layz bg lazy style width 16 599ex height 2 843ex vertical align 0 838ex data src https www wikidata uk ua nina az image aHR0cHM6Ly93aWtpbWVkaWEub3JnL2FwaS9yZXN0X3YxL21lZGlhL21hdGgvcmVuZGVyL3N2Zy9kNjY5ZGIwOGIwZWM2YzBlN2MwMDM1NmNlZWY2ZTdhMmFiZDI5OTcy svg data alt displaystyle A i 1 F A i e data class mwe math fallback image inline mw invert skin invert span dlya kozhnogo elementa e u S dlya deyakoyi binarnoyi operaciyi F F povinna buti asociativnoyu i komunikativnoyu dlya togo shob buti chitko viznachenoyu clear S vidalyaye usi elementi S equal S span class mwe math element span class mwe math mathml inline mwe math mathml a11y style display none math xmlns http www w3 org 1998 Math MathML alttext displaystyle 1 semantics mrow class MJX TeXAtom ORD mstyle displaystyle true scriptlevel 0 msub mi mi mrow class MJX TeXAtom ORD mn 1 mn mrow msub mstyle mrow annotation encoding application x tex displaystyle 1 annotation semantics math span noscript img src https www wikidata uk ua nina az image aHR0cHM6Ly93aWtpbWVkaWEub3JnL2FwaS9yZXN0X3YxL21lZGlhL21hdGgvcmVuZGVyL3N2Zy9mMmJhNDBmOGM2MzUyYzE1ZDEwYmQwN2E5YTEwMmQzN2U2MTQxOTQx svg class mwe math fallback image inline mw invert skin invert aria hidden true style vertical align 0 671ex width 1 054ex height 1 676ex alt displaystyle 1 noscript img alt image class img layz bg lazy style width 1 054ex height 1 676ex vertical align 0 671ex data src https www wikidata uk ua nina az image aHR0cHM6Ly93aWtpbWVkaWEub3JnL2FwaS9yZXN0X3YxL21lZGlhL21hdGgvcmVuZGVyL3N2Zy9mMmJhNDBmOGM2MzUyYzE1ZDEwYmQwN2E5YTEwMmQzN2U2MTQxOTQx svg data alt displaystyle 1 data class mwe math fallback image inline mw invert skin invert span S span class mwe math element span class mwe math mathml inline mwe math mathml a11y style display none math xmlns http www w3 org 1998 Math MathML alttext displaystyle 2 semantics mrow class MJX TeXAtom ORD mstyle displaystyle true scriptlevel 0 msub mi mi mrow class MJX TeXAtom ORD mn 2 mn mrow msub mstyle mrow annotation encoding application x tex displaystyle 2 annotation semantics math span noscript img src https www wikidata uk ua nina az image aHR0cHM6Ly93aWtpbWVkaWEub3JnL2FwaS9yZXN0X3YxL21lZGlhL21hdGgvcmVuZGVyL3N2Zy85OGY1MjMxY2U5MGUwNDcxYjk4ZWJjMjlhNzliMWNjNzY5ZTk5MmJk svg class mwe math fallback image inline mw invert skin invert aria hidden true style vertical align 0 671ex width 1 054ex height 1 676ex alt displaystyle 2 noscript img alt image class img layz bg lazy style width 1 054ex height 1 676ex vertical align 0 671ex data src https www wikidata uk ua nina az image aHR0cHM6Ly93aWtpbWVkaWEub3JnL2FwaS9yZXN0X3YxL21lZGlhL21hdGgvcmVuZGVyL3N2Zy85OGY1MjMxY2U5MGUwNDcxYjk4ZWJjMjlhNzliMWNjNzY5ZTk5MmJk svg data alt displaystyle 2 data class mwe math fallback image inline mw invert skin invert span pereviryaye chi ye dvi mnozhini rivnimi tobto mayut usi odnakovi elementi hash S povertaye hesh znachennya dlya statichnoyi mnozhini S take yaksho equal S span class mwe math element span class mwe math mathml inline mwe math mathml a11y style display none math xmlns http www w3 org 1998 Math MathML alttext displaystyle 1 semantics mrow class MJX TeXAtom ORD mstyle displaystyle true scriptlevel 0 msub mi mi mrow class MJX TeXAtom ORD mn 1 mn mrow msub mstyle mrow annotation encoding application x tex displaystyle 1 annotation semantics math span noscript img src https www wikidata uk ua nina az image aHR0cHM6Ly93aWtpbWVkaWEub3JnL2FwaS9yZXN0X3YxL21lZGlhL21hdGgvcmVuZGVyL3N2Zy9mMmJhNDBmOGM2MzUyYzE1ZDEwYmQwN2E5YTEwMmQzN2U2MTQxOTQx svg class mwe math fallback image inline mw invert skin invert aria hidden true style vertical align 0 671ex width 1 054ex height 1 676ex alt displaystyle 1 noscript img alt image class img layz bg lazy style width 1 054ex height 1 676ex vertical align 0 671ex data src https www wikidata uk ua nina az image aHR0cHM6Ly93aWtpbWVkaWEub3JnL2FwaS9yZXN0X3YxL21lZGlhL21hdGgvcmVuZGVyL3N2Zy9mMmJhNDBmOGM2MzUyYzE1ZDEwYmQwN2E5YTEwMmQzN2U2MTQxOTQx svg data alt displaystyle 1 data class mwe math fallback image inline mw invert skin invert span S span class mwe math element span class mwe math mathml inline mwe math mathml a11y style display none math xmlns http www w3 org 1998 Math MathML alttext displaystyle 2 semantics mrow class MJX TeXAtom ORD mstyle displaystyle true scriptlevel 0 msub mi mi mrow class MJX TeXAtom ORD mn 2 mn mrow msub mstyle mrow annotation encoding application x tex displaystyle 2 annotation semantics math span noscript img src https www wikidata uk ua nina az image aHR0cHM6Ly93aWtpbWVkaWEub3JnL2FwaS9yZXN0X3YxL21lZGlhL21hdGgvcmVuZGVyL3N2Zy85OGY1MjMxY2U5MGUwNDcxYjk4ZWJjMjlhNzliMWNjNzY5ZTk5MmJk svg class mwe math fallback image inline mw invert skin invert aria hidden true style vertical align 0 671ex width 1 054ex height 1 676ex alt displaystyle 2 noscript img alt image class img layz bg lazy style width 1 054ex height 1 676ex vertical align 0 671ex data src https www wikidata uk ua nina az image aHR0cHM6Ly93aWtpbWVkaWEub3JnL2FwaS9yZXN0X3YxL21lZGlhL21hdGgvcmVuZGVyL3N2Zy85OGY1MjMxY2U5MGUwNDcxYjk4ZWJjMjlhNzliMWNjNzY5ZTk5MmJk svg data alt displaystyle 2 data class mwe math fallback image inline mw invert skin invert span todi hash S span class mwe math element span class mwe math mathml inline mwe math mathml a11y style display none math xmlns http www w3 org 1998 Math MathML alttext displaystyle 1 semantics mrow class MJX TeXAtom ORD mstyle displaystyle true scriptlevel 0 msub mi mi mrow class MJX TeXAtom ORD mn 1 mn mrow msub mstyle mrow annotation encoding application x tex displaystyle 1 annotation semantics math span noscript img src https www wikidata uk ua nina az image aHR0cHM6Ly93aWtpbWVkaWEub3JnL2FwaS9yZXN0X3YxL21lZGlhL21hdGgvcmVuZGVyL3N2Zy9mMmJhNDBmOGM2MzUyYzE1ZDEwYmQwN2E5YTEwMmQzN2U2MTQxOTQx svg class mwe math fallback image inline mw invert skin invert aria hidden true style vertical align 0 671ex width 1 054ex height 1 676ex alt displaystyle 1 noscript img alt image class img layz bg lazy style width 1 054ex height 1 676ex vertical align 0 671ex data src https www wikidata uk ua nina az image aHR0cHM6Ly93aWtpbWVkaWEub3JnL2FwaS9yZXN0X3YxL21lZGlhL21hdGgvcmVuZGVyL3N2Zy9mMmJhNDBmOGM2MzUyYzE1ZDEwYmQwN2E5YTEwMmQzN2U2MTQxOTQx svg data alt displaystyle 1 data class mwe math fallback image inline mw invert skin invert span hash S span class mwe math element span class mwe math mathml inline mwe math mathml a11y style display none math xmlns http www w3 org 1998 Math MathML alttext displaystyle 2 semantics mrow class MJX TeXAtom ORD mstyle displaystyle true scriptlevel 0 msub mi mi mrow class MJX TeXAtom ORD mn 2 mn mrow msub mstyle mrow annotation encoding application x tex displaystyle 2 annotation semantics math span noscript img src https www wikidata uk ua nina az image aHR0cHM6Ly93aWtpbWVkaWEub3JnL2FwaS9yZXN0X3YxL21lZGlhL21hdGgvcmVuZGVyL3N2Zy85OGY1MjMxY2U5MGUwNDcxYjk4ZWJjMjlhNzliMWNjNzY5ZTk5MmJk svg class mwe math fallback image inline mw invert skin invert aria hidden true style vertical align 0 671ex width 1 054ex height 1 676ex alt displaystyle 2 noscript img alt image class img layz bg lazy style width 1 054ex height 1 676ex vertical align 0 671ex data src https www wikidata uk ua nina az image aHR0cHM6Ly93aWtpbWVkaWEub3JnL2FwaS9yZXN0X3YxL21lZGlhL21hdGgvcmVuZGVyL3N2Zy85OGY1MjMxY2U5MGUwNDcxYjk4ZWJjMjlhNzliMWNjNzY5ZTk5MmJk svg data alt displaystyle 2 data class mwe math fallback image inline mw invert skin invert span Operaciyi dlya mnozhin sho mistyat elementi specialnogo tipu sum S povertaye sumu usih elementiv mnozhini S dlya deyakogo viznachennya sumi Napriklad suma dlya cilih abo dijsnih chisel mozhe buti viznachena tak fold 0 add S collapse S dano mnozhinu mnozhin povertaye ob yednannya ryadu mnozhin Napriklad collapse 1 2 3 1 2 3 mozhe rozglyadatis yak suma flatten S dano mnozhinu sho skladayetsya iz mnozhin i atomnih elementiv elementi sho ne ye mnozhinoyu povertaye mnozhinu elementi yakoyi ye pochatkovoyu mnozhinoyu verhnogo rivnya abo elementi mnozhini yaki vhodyat do ciyeyi mnozhini Inshimi slovami vidalyaye riven vkladenosti takij yak collapse ale dozvolyaye atomi Ce mozhe buti zrobleno odin raz abo dekilka raziv dlya togo shob otrimati mnozhinu tilki atomnih elementiv Napriklad flatten 1 2 3 1 2 3 nearest S x povertaye element mnozhini S sho ye najblizhchim do znachennya x min S max S povertaye minimalnij maksimalnij elementi mnozhini S RealizaciyaMnozhini mozhna realizuvati vikoristovuyuchi rizni strukturi danih yaki zabezpechuyut rizni chasovi zatrati i prostorovi kompromisi dlya riznih operacij Deyaki realizaciyi stvoreni dlya togo shob pokrashiti efektivnist duzhe specializovanih operacij takih yak nearest abo union Realizaciyi opisani dlya zagalnogo vikoristannya yak pravilo pragnut optimizuvati element of add ta delete operaciyi Prostoyu realizaciyeyu ye vikoristannya spisku abstraktnij tip danih ignoruyuchi poryadok elementiv ta unikayuchi yih povtoru Ce prosto ale neefektivno bo operaciyi na perevirku nalezhnosti u mnozhini chi vidalennya elementu O n povinni skanuvati uves spisok Zamist cogo mnozhini chasto realizuyutsya z vikoristannyam bilsh efektivnih struktur danih a same riznih vidiv derev prefiksnih derev abo hesh tablic Tak yak mnozhini mozhna interpretuvati yak shos na zrazok karti indikatornoyu funkciyeyu voni zazvichaj realizuyutsya u toj samij sposib sho i chastkovi karti asociativni masivi u comu razi znachennya kozhnoyi pari klyucha znachennya maye tip odinici abo kontrolnogo elementa napriklad 1 a same zbalansovane derevo dlya vidsortovanogo masivu O log n dlya bilshosti operacij abo hesh tablicyu dlya nevidsortovanogo masivu O 1 v serednomu vipadku ale O n v najgirshomu vipadku dlya bilshosti operacij Vidsortovana linijna hesh tablicya mozhe buti vikoristana dlya zabezpechennya determinovano vporyadkovanih mnozhin Krim togo u movah yaki pidtrimuyut karti a ne mnozhini mnozhini mozhut buti realizovani na osnovi karti Napriklad zagalna idioma u movi programuvannya Perl sho konvertuye masiv u hesh chiyi parametri prijmayut parametri kontrolnogo elementa dlya vikoristannya yak masivu my elements map gt 1 elements Mnozhina v Paskali U movi Paskal mnozhina skladovij tip danih yakij zberigaye informaciyu pro prisutnist u mnozhini ob yektiv bud yakogo rahunkovogo tipu Potuzhnist cogo tipu viznachaye rozmir mnozhini 1 bit na element U Turbo Pascal ye obmezhennya na 256 elementiv u deyakih inshih realizaciyah ce obmezhennya oslablene Priklad roboti z mnozhinami type viznachayemo bazovi dlya mnozhin zlichennij tip i tip diapazon colors red green blue smallnumbers 0 10 viznachayemo mnozhini z nashih tipiv colorset set of colors numberset set of smallnumbers mozhna i ne zadavati tip okremo anothernumberset set of 0 20 ogoloshuyemo zminni tipu mnozhin var nset1 nset2 nset3 numberset cset colorset begin nset1 0 2 4 6 8 10 zadayemo u viglyadi konstruktora mnozhini cset red blue prostim pererahuvannyam elementiv nset2 1 3 9 7 5 poryadok pererahuvannya ne vazhlivij nset3 pusta mnozhina include nset3 7 dodavannya elementa exclude nset3 7 viluchennya elementa nset1 0 5 mozhlivo zadavati elementi diapazonom nset3 nset1 nset2 ob yednannya nset3 nset1 nset2 peretin nset3 nset1 nset2 riznicya if 5 in nset2 or perevirka na vhodzhennya elementa green in cset then end MultimnozhinaDokladnishe Multimnozhina Uzagalnennyam ponyattya mnozhini ye multimnozhina chi sumka angl bag yaka podibna na mnozhinu ale dozvolyaye dublikati povtorennya odnakovih znachen DzherelaT Kormen Ch Lejzerson R Rivest K Stajn 2009 1990 10 Elementarni strukturi danih Vstup do algoritmiv vid 3rd MIT Press i McGraw Hill ISBN 0 262 03384 4 Ce nezavershena stattya pro strukturi danih Vi mozhete dopomogti proyektu vipravivshi abo dopisavshi yiyi
Топ