En tupel er et bestilt sæt af fast længde.
Lad sæt være givet , ikke nødvendigvis adskilte.
Så er en tupel af længden n [1] [2] , et ordnet sæt af længden n [1] , en ordnet n -tupel [2] eller en n - tupel [1] [3] en ordnet sekvens af n elementer, hvor for en tupel er angivet ved at optælle koordinater i vinkel eller parentes [1] :
eller
Elementet kaldes den i'te koordinat [ 1] [4] ( projektion [2] , komponent [2] [4] ) af tuplet
Tallet n kaldes tupelens længde eller dimension [2] .
To tupler er ens, hvis deres længde og tilsvarende elementer er ens [2] [4] :
hvisEt eksempel på en tupel er en aritmetisk vektor [2] .
Det kartesiske produkt af n sæt er mængden af alle tupler af længden n , hvis koordinater er taget fra disse mængder [1] [5] [6] :
Tupler af længde 2, 3, 4, 5, ... kaldes også " bestilt par ", "bestilte tre", "bestilte fire", "bestilte fem" osv. [2]
Inden for mængdeteori kan tupler induktivt kortlægges til mængder [1] [7] [8] , for eksempel som følger [1] [7] :
Mange matematiske objekter er formelt defineret som tupler. For eksempel er en rettet graf defineret som et par , hvor V er sættet af hjørner og E er delmængden af par i de tilsvarende buer af grafen [9] . Et punkt i det n -dimensionelle rum af reelle tal er defineret som en tupel af længden n , sammensat af elementerne i sættet af reelle tal.
En orienteret multigraf med et sæt toppunkter V , et sæt buer E og en incidensrelation kan defineres som en ordnet tripel, hvis og kun hvis buen e forlader toppunktet a og går ind i toppunktet b [10] .
I nogle programmeringssprog , såsom Python eller ML , er tuple som datatype indbygget i sproget. Et eksempel på brug af en tuple i Python:
a = ( 1 , 3.14 , 'kat' ) print ( a [ 0 ]) # Udskriv det første element i tupleI programmeringssprog med statisk skrivning adskiller en tuple sig fra en liste ved, at elementerne i tuplen kan tilhøre forskellige typer , og sættet af sådanne typer er forudbestemt af typen af tuple, hvilket betyder, at størrelsen af tuple bestemmes også. På den anden side har samlinger (lister, arrays) en begrænsning på typen af lagrede elementer, men ingen begrænsning på længden. Så for eksempel i Rust -sproget kan en funktion returnere flere værdier ved hjælp af tuple wrapping:
fn div_with_remainder ( a : i32 , b : i32 ) -> ( i32 , i32 , streng ) { lad tmp = ( a / b , a % b ); ( tmp . 0 , tmp . 1 , format! ( "{} + {}" , tmp . 0 , tmp . 1 )) } lad ( res , rem , repr ) = div_with_remainder ( 5 , 2 );I funktionelle sprog tager multi-argument uncurried -funktioner parametre som et enkelt argument, hvilket er en tupel.
I C++ er tuple-understøttelse implementeret som en klasseskabelon std::tuple [11] (siden C++11 [12] ) og i Boost Tuple Library [13] .
Tuplet har været en standardtype i .NET -platformen siden version 4.0 [14] .
I relationelle databaser er en tupel et element i en relation . For en N -ær relation er en tupel et ordnet sæt af N værdier, en værdi for hver relationsattribut.
Datatyper | |
---|---|
Ufortolkelig | |
Numerisk | |
Tekst | |
Reference | |
Sammensatte | |
abstrakt | |
Andet | |
relaterede emner |