Pour un graphe orienté acyclique , est - il une structure de données qui permet des requêtes sans nécessiter joignabilité espace quadratique ou le temps linéaire? Idéalement, je recherche un algorithme utilisant uniquement l'espace O (log n) par sommet et le temps logarithmique où .
Il m'a semblé intuitivement évident qu'une telle structure de données devrait exister, basée sur une généralisation d'algorithmes de tri standard. Mais j'ai été surpris de ne pas en trouver. Tout ce que j'ai rencontré a fait des hypothèses sur le graphique (par exemple, la planarité) ou résolu un problème plus difficile en temps / espace quadratique (par exemple, les requêtes entrelacées avec des modifications du graphique).
La page Wikipedia sur l'accessibilité ne couvre qu'un seul algorithme général (Floyd-Warshall); le reste de la page traite de cas particuliers impliquant des hypothèses comme le graphique étant planaire (ce n'est pas le cas).
Le document le plus souvent cité dans cet espace semble être l' efficacité amortie d'une structure de données de récupération de chemin , mais cela et tous les articles qu'il cite impliquent soit de l'espace O (n ^ 2), soit du temps O (n ^ 2) afin de permettre mises à jour du graphe entrelacé avec les requêtes (ie pas de prétraitement).
Cette question n'a pas reçu de réponse, mais elle traite du problème plus difficile d'autoriser les insertions de bord entrelacées avec les requêtes.
Cette question demandait une structure de données persistante (purement fonctionnelle), qui n'est pas requise ici. Le papier "Succinct Posets" a besoin d'un espace mais il réalise des requêtes O ( 1 ) en temps; Je recherche un algorithme pire temps et meilleur espace.
Recherche principalement un point d'ancrage dans la littérature ici. S'il existe un document d'enquête sur l'accessibilité des graphiques qui ne passe pas 99% de son temps sur le cas du graphique planaire, cela aiderait.
la source
Réponses:
Voir «étiquetage d'intervalle» et «étiquetage à 2 sauts» qui sont apparemment assez efficaces dans la pratique, à la fois dans le temps et dans l'espace, et peuvent vous donner ce que vous voulez. En général, il existe un tas de schémas "d'indexation d'accessibilité" pour les DAG.
la source