Nombres de Stirling non signés de 1re espèce
Comptez les réarrangements de n éléments qui se décomposent en exactement k cycles : 5 éléments en 2 cycles donnent 50, 4 éléments en 2 cycles donnent 11 et 3 éléments en un seul cycle donnent 2. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Nombre d'éléments
- 5
- Nombre de cycles
- 2
- Valeur
- 50
- N max
- 200
- K max
- 200
Ce calculateur de nombres de Stirling non signés de première espèce renvoie c(n, k), le nombre de permutations d'un ensemble à n éléments qui se décomposent en exactement k cycles disjoints. Ce même coefficient apparaît comme la valeur absolue du nombre de Stirling signé de première espèce, et il convertit les factorielles croissantes en puissances ordinaires dans les identités classiques des fonctions spéciales. Parmi les vérifications simples que vous connaissez peut-être déjà : cinq éléments et deux cycles donnent cinquante, quatre éléments et deux cycles donnent onze, et trois éléments et un cycle donnent deux, soit (3−1)!. Le moteur utilise une programmation dynamique déterministe en BigInt fondée uniquement sur la récurrence c(n,k)=c(n−1,k−1)+(n−1)·c(n−1,k) : aucun appel réseau, aucun échantillonnage, aucun raccourci dépendant de la date.
Ce que signifient les nombres de Stirling non signés de première espèce et ce que contient la réponse
Le nombre de Stirling non signé de première espèce c(n, k) compte le nombre de permutations de n éléments étiquetés ayant exactement k cycles dans leur décomposition en cycles disjoints. Cette lecture combinatoire est celle que la plupart des étudiants rencontrent en premier : un long cycle sur n lettres contribue à c(n, 1) égal à (n−1)!, la permutation identité ne contribue qu'à c(n, n) égal à un, et les nombres de cycles intermédiaires remplissent le triangle entre les deux.
Algébriquement, ces mêmes nombres apparaissent quand on développe la factorielle croissante x(x+1)…(x+n−1) comme un polynôme en x dont les coefficients sont c(n, k). Ce calculateur renvoie les n et k demandés, la valeur exacte sous forme de chaîne décimale, une courte étiquette de formule telle que c(5, 2), ainsi que les maxima publiés afin que les clients puissent valider avant d'envoyer un lot. La règle « k ne peut dépasser n » correspond au domaine mathématique : il est impossible de répartir n éléments en plus de n cycles.
Où les nombres de Stirling de première espèce s'inscrivent dans l'étude, le code et la modélisation
Les étudiants rencontrent les nombres de Stirling non signés de première espèce lorsqu'un manuel demande combien de permutations ont un nombre de cycles donné, lorsqu'un exercice de développement en factorielle croissante exige des coefficients exacts, ou lorsqu'il faut relier des fonctions génératrices d'index de cycles à des puissances ordinaires. Les enseignants peuvent pré-générer des corrigés pour des n et k modestes sans faire confiance à des applications de calcul opaques qui arrondissent les grands entiers ou basculent silencieusement en notation scientifique.
Les développeurs appellent le même contrat depuis des scripts pour amorcer des vecteurs de test déterministes, pour dimensionner des modèles de permutations aléatoires conditionnés sur le nombre de cycles, ou pour satisfaire des énoncés de programmation exigeant le c(n, k) exact plutôt qu'une approximation logarithmique. La préparation aux concours a souvent besoin d'une source rapide et hors ligne de rangs de première espèce afin de vérifier des solutions sans télécharger des tables OEIS sous la pression du temps.
Les analystes produit et recherche utilisent ce comptage pour estimer combien de réarrangements ordonnés de n éléments étiquetés tombent dans une structure de cycles cible, ce qui apparaît dans le mélange de cartes, les démonstrations pédagogiques de cryptographie et les laboratoires élémentaires de combinatoire énumérative. Associez-le aux outils de factorielle lorsque vous avez besoin de (n−1)! comme cas particulier de c(n, 1), aux outils binomiaux pour des coefficients combinatoires apparentés, et aux autres points de terminaison mathématiques pour bâtir un petit laboratoire d'outils combinatoires gratuits et déterministes.
Cas d’usage
Devoirs et vérifications de comptage de cycles
Recherchez les valeurs exactes de c(n, k) pour des exercices sur les permutations à nombre de cycles fixe et les développements en factorielle croissante.
Préparation concours et modèles
Vérifiez des réponses à des défis de programmation et dimensionnez des modèles de permutations conditionnées sur le cycle avec des coefficients BigInt exacts plutôt que des approximations.
Questions fréquentes
Combien coûte le calculateur de Stirling de première espèce ?
Il est gratuit dans votre navigateur sur cette page.
Comment c(n, k) est-il défini ?
Le nombre de Stirling non signé de première espèce c(n, k) compte les permutations de n éléments ayant exactement k cycles disjoints. Il est égal à la valeur absolue du nombre de Stirling signé de première espèce.
Est-ce la même chose que les nombres de Stirling de seconde espèce ?
Non. La seconde espèce compte les partitions d'un ensemble en sous-ensembles non étiquetés non vides. Cet outil ne calcule que la première espèce (comptage de cycles de permutations).
Pourquoi le résultat est-il une chaîne plutôt qu'un nombre ?
Les nombres de Stirling de première espèce croissent rapidement et peuvent dépasser les entiers sûrs de JavaScript.
Que se passe-t-il si k est supérieur à n ?
Le calcul est refusé avec un message clair, car on ne peut pas répartir n éléments en plus de n cycles. Indiquez un nombre de cycles entre 0 et n, jusqu'à 200.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/combo/stirling-first \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"n":5,"k":2}'const res = await fetch("https://api.kit.forhosting.com/combo/stirling-first", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"n": 5,
"k": 2
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/combo/stirling-first",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"n": 5,
"k": 2
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/combo/stirling-first", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"n":5,"k":2}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"n":5,"k":2}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/combo/stirling-first", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"n": 5,
"k": 2
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "combo.stirling_first",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
max_n | 200 |
max_k | 200 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Ce que signifient les nombres de Stirling non signés de première espèce et ce que contient la réponse
Il n'y a aucun chemin flottant approximatif présenté comme une vérité, ni aucun échantillonnage aléatoire de permutations : le moteur construit la récurrence exacte à l'intérieur de la plage prise en charge, ou rejette l'entrée avec invalid_input. Les cas rejetés incluent n ou k manquant, des valeurs non entières, des fractions, une notation scientifique, des valeurs supérieures aux plafonds documentés, tout k négatif, et tout k dépassant n. Si vous avez besoin des nombres de Stirling signés de première espèce, des nombres de Stirling de seconde espèce, des nombres de Bell, ou d'une énumération des permutations elles-mêmes, utilisez ces outils dédiés ; cette page ne répond qu'au comptage non signé de première espèce, avec une sortie BigInt exacte adaptée aux feuilles d'exercices, aux tests unitaires et aux consommateurs d'API qui ne doivent perdre aucun chiffre au-delà des entiers sûrs de JavaScript.
Comment n et k sont lus et comment BigInt préserve chaque chiffre exact
Les signes plus initiaux facultatifs sont autorisés ; les espaces intégrés, les préfixes hexadécimaux, les signes négatifs et la notation exponentielle sont rejetés avec un message clair afin qu'une cellule erronée ne devienne pas un mauvais résultat. Zéro pour n avec k égal à zéro renvoie un, conformément à la convention de la permutation vide utilisée en mathématiques discrètes. Le calcul utilise une programmation dynamique par lignes en O(n fois k) : chaque ligne i stocke c(i, j) pour j jusqu'à k en combinant les valeurs de la ligne précédente selon la récurrence standard, de sorte que les valeurs intermédiaires restent exactes sans construire de listes complètes de permutations. Les champs privilégiés sont n pour le nombre d'éléments et k pour le nombre de cycles, mais les alias size et elements pour n, ainsi que cycles et num_cycles pour k, sont acceptés afin que tableurs, chaînes de requête et formulaires typés puissent réutiliser le même contrat. Le moteur impose des maxima stricts de deux cents pour n comme pour k, ce qui garde la mémoire et la latence dans un budget prévisible sur le chemin gratuit du navigateur comme sur le Worker en périphérie, même si les nombres de cycles croissent à peu près comme des factorielles. Chaque valeur intermédiaire est un BigInt et la valeur finale est sérialisée avec toString afin que le JSON ne perde jamais de chiffres comme le feraient les nombres flottants IEEE au-delà du cinquante-troisième bit. Associez l'exécution gratuite dans le navigateur de cette page à l'API payante lorsque vous avez besoin du même résultat mathématique au sein d'un pipeline automatisé sans réimplémenter vous-même la récurrence de Stirling.
Où les nombres de Stirling de première espèce s'inscrivent dans l'étude, le code et la modélisation
Sur cette page, le travail s'exécute entièrement dans votre navigateur ; via l'API, chaque recherche réussie coûte $0.002, une validation échouée n'est pas facturée, et rien n'est conservé après le renvoi de la réponse. Cette séparation — exploration interactive gratuite et API payante identique — s'inscrit dans le reste du catalogue de niveau A du KIT et permet de passer d'une démonstration en classe à un pipeline automatisé sans changer le résultat mathématique.
Cas d'intégration
Fixtures de test déterministes
Générez des chaînes décimales de Stirling de première espèce reproductibles pour tests unitaires, vérifications de propriétés et assertions CI, sans maintenir de tables à la main.
Questions techniques
Que se passe-t-il si k est négatif ou supérieur à n ?
Les deux cas sont rejetés avec invalid_input. k doit être un entier non négatif et ne doit pas dépasser n.