Calcolatore grado di vertice
Incolli una lista di archi e ottenga il grado di ogni vertice: nel triangolo A→B, B→C, C→A ogni vertice ha grado entrante 1, uscente 1 e totale 2, e i gradi sommano 6, il doppio dei 3 archi. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Il grado di un vertice è il primo numero che si calcola aprendo un problema di teoria dei grafi, disegnando un digrafo di dipendenze o verificando un'istantanea di rete sociale. Questo calcolatore del grado di un vertice accetta un elenco di archi, conta il grado entrante e uscente di ogni vertice che compare, riporta il grado totale come loro somma sui grafi orientati e verifica il classico lemma delle strette di mano: la somma di tutti i gradi è il doppio del numero di archi. La modalità orientata tratta ogni riga come un arco da un'origine a una destinazione; la modalità non orientata tratta ogni riga come un collegamento bidirezionale e conta i cappi con la solita convenzione +2.
Cosa significano grado, grado entrante e uscente su un elenco di archi
Nella teoria dei grafi il grado di un vertice è quante estremità di arco toccano quel vertice. Su un grafo orientato—detto anche digrafo—ogni arco è una coppia ordinata da una coda a una testa. Il grado uscente di un vertice è il numero di archi che lo lasciano; il grado entrante è il numero di archi che vi entrano; il grado totale è la somma del grado entrante e di quello uscente.
Su un grafo non orientato ogni arco è una coppia non ordinata, così un vertice ha un unico grado uguale al numero di estremità incidenti, e i manuali spesso scrivono che grado entrante uguale grado uscente uguale a quel grado comune quando il caso non orientato usa la stessa notazione. I cappi contano: su un digrafo un cappio contribuisce uno al grado entrante e uno all'uscente; su un grafo non orientato un cappio contribuisce due al grado perché entrambe le estremità del cappio stanno sullo stesso vertice.
I multiarchi sono ammessi: due archi paralleli da A a B contano entrambi. I vertici che non compaiono mai nell'elenco di archi sono assenti dall'output; si riportano solo quelli che partecipano ad almeno un arco. Questa capacità non calcola componenti connesse, cammini minimi o matrici di adiacenza; risponde solo ai conteggi di incidenza e all'identità globale delle strette di mano che ogni corso introduttivo dimostra per primo.
Contratto di input, forma della risposta e controllo del lemma
Il flag opzionale directed vale true per impostazione predefinita. Quando directed è true, ogni riga è un arco orientato: il grado uscente incrementa in from, l'entrante in to, e il grado è la loro somma. Quando directed è false, ogni riga è non orientata: entrambe le estremità guadagnano un grado (un cappio ne guadagna due), e grado entrante e uscente sono posti uguali al grado affinché la stessa forma di risposta serva per entrambi i modi.
Il lemma delle strette di mano—detto anche handshaking lemma—afferma che la somma di tutti i gradi dei vertici è il doppio del numero di archi. Per i digrafi la stessa scansione implica anche che la somma dei gradi entranti e quella dei gradi uscenti eguagliano ciascuna il numero di archi; la risposta espone tali somme così Lei può affermare le tre identità in una sola chiamata. Gli elenchi di archi vuoti sono validi e restituiscono zero vertici con handshake vero.
Dove un calcolatore del grado di un vertice crea valore
Aule e piattaforme di tutoraggio usano un calcolatore del grado di un vertice affinché gli studenti controllino tabelle di grado entrante e uscente su grafi di compiti arbitrari senza contare male i multiarchi a mano. I generatori di esami e gli auto-correttori LMS necessitano di un oracolo deterministico che segni il lemma delle strette di mano come vero quando la somma dei gradi è il doppio del numero di archi e che rifiuti righe malformate invece di inventare vertici in silenzio.
Gli ingegneri del software che modellano dipendenze di pacchetti, grafi di chiamate o traffico di microservizi partono spesso dalle distribuzioni di grado: quali servizi hanno alto fan-out uscente, quali nodi pozzo hanno alto grado entrante e se un'esportazione di dati ha rotto per errore l'identità delle strette di mano. Analisti di rete e notebook di grafi sociali usano gli stessi conteggi prima di calcolare indici di centralità più costosi. La validazione fallita non consuma saldo.
Mantenga elenchi di archi compatti, fissi l'array ordinato di vertici nei test e otterrà tabelle di grado riproducibili senza montare un'intera libreria di grafi per un primo audit di incidenza.
Casi d'uso
Tabelle di grado per compiti ed esami
Incolli un elenco di archi di digrafo o non orientato e verifichi grado entrante, uscente e grado di ogni vertice rispetto alle soluzioni del manuale, inclusa la somma delle strette di mano.
Oracoli LMS e di correzione
Valuti voci di teoria dei grafi con un controllo deterministico: la somma dei gradi è il doppio degli archi, e le etichette di vertice vuote vengono rifiutate.
Audit di dipendenze e fan-out del traffico
Conti gradi entranti e uscenti di servizi o pacchetti da un elenco esportato prima di eseguire offline centralità o rilevamento di cicli.
Domande frequenti
Come si calcolano grado entrante e uscente da un elenco di archi?
Invii edges come [{from, to}, ...]. Con directed true (predefinito), il grado uscente conta le righe in cui il vertice è from e l'entrante dove è to; il grado è la loro somma.
Cos'è il lemma delle strette di mano?
L'handshaking lemma afferma che la somma di tutti i gradi dei vertici è il doppio del numero di archi.
Come si contano grafi non orientati e cappi?
Imposti directed su false. Ogni arco non orientato aggiunge uno al grado a entrambe le estremità; un cappio ne aggiunge due. Grado entrante e uscente sono uguali al grado per una forma di risposta uniforme.
I vertici isolati sono inclusi?
No. Sono elencati solo i vertici che compaiono come estremità di almeno un arco. Gli isolati non toccano l'elenco di archi, quindi non influenzano la somma delle strette di mano.
Gli archi ripetuti tra gli stessi vertici contano due volte?
Sì. Gli archi multipli sono ammessi, quindi ciascuno dei due archi da A a B aggiunge uno al grado uscente di A e uno al grado entrante di B. Nulla viene unito o eliminato di nascosto.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/dev/graph-degree \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"edges":[{"from":"A","to":"B"},{"from":"B","to":"C"},{"from":"C","to":"A"}]}'const res = await fetch("https://api.kit.forhosting.com/dev/graph-degree", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"edges": [
{
"from": "A",
"to": "B"
},
{
"from": "B",
"to": "C"
},
{
"from": "C",
"to": "A"
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/graph-degree",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"edges": [
{
"from": "A",
"to": "B"
},
{
"from": "B",
"to": "C"
},
{
"from": "C",
"to": "A"
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/graph-degree", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"edges":[{"from":"A","to":"B"},{"from":"B","to":"C"},{"from":"C","to":"A"}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"edges":[{"from":"A","to":"B"},{"from":"B","to":"C"},{"from":"C","to":"A"}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/graph-degree", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"edges": [
{
"from": "A",
"to": "B"
},
{
"from": "B",
"to": "C"
},
{
"from": "C",
"to": "A"
}
]
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.graph_degree",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
Le righe di archi non valide falliscono con invalid_input e non vengono addebitate.
Contratto di input, forma della risposta e controllo del lemma
Invii un corpo JSON con POST contenente edges, un array di oggetti con from e to (il gestore accetta anche gli alias source o u per la coda e target o v per la testa). Le etichette dei vertici possono essere stringhe o numeri finiti e sono normalizzate a stringhe senza spazi estremi; etichette vuote e righe non oggetto falliscono con invalid_input indicando il campo. In caso di successo il corpo include directed, edge_count, vertex_count, un array vertices di record con id, in_degree, out_degree e degree, gli aggregati sum_in_degree, sum_out_degree e sum_degree, handshake_holds, handshake_expected (sempre il doppio di edge_count) e una breve stringa formula. Al massimo cinquemila archi sono accettati per richiesta per mantenere limitati i percorsi browser e worker.
Dove un calcolatore del grado di un vertice crea valore
I siti di contenuti che puntano a calcolatore del grado di un vertice beneficiano di uno strumento gratuito nel browser la cui logica pura coincide byte per byte con l'API a pagamento. Poiché l'implementazione è parse di livello A pura, ogni chiamata riuscita costa il prezzo base pubblicato $0.002 senza token di modello né rete in uscita.
Domande tecniche
Quanto costa il calcolatore del grado di un vertice?
Lo strumento nel browser è gratuito. Le richieste API usano il saldo KIT prepagato a $0.002 per chiamata riuscita; l'input non valido non viene addebitato.