<!DOCTYPE HTML>
<html lang="de">
<head>
<!-- Generated by javadoc (21) on Tue Jul 09 12:47:01 CEST 2024 -->
<title>DirectedGraph</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="dc.created" content="2024-07-09">
<meta name="description" content="declaration: package: graph, class: DirectedGraph">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../script-dir/jquery-ui.min.css" title="Style">
<script type="text/javascript" src="../script.js"></script>
<script type="text/javascript" src="../script-dir/jquery-3.6.1.min.js"></script>
<script type="text/javascript" src="../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var pathtoroot = "../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript ist im Browser deaktiviert.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top"><button id="navbar-toggle-button" aria-controls="navbar-top" aria-expanded="false" aria-label="Navigationslinks umschalten"><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span><span class="nav-bar-toggle-icon">&nbsp;</span></button>
<div class="skip-nav"><a href="#skip-navbar-top" title="Navigations-Links überspringen">Navigations-Links überspringen</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../index.html">Überblick</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Klasse</li>
<li><a href="package-tree.html">Baum</a></li>
<li><a href="../index-files/index-1.html">Index</a></li>
<li><a href="../help-doc.html#class">Hilfe</a></li>
</ul>
<ul class="sub-nav-list-small">
<li>
<p>Übersicht:</p>
<ul>
<li>Verschachtelt</li>
<li><a href="#field-summary">Feld</a></li>
<li><a href="#constructor-summary">Konstruktor</a></li>
<li><a href="#method-summary">Methode</a></li>
</ul>
</li>
<li>
<p>Details:</p>
<ul>
<li><a href="#field-detail">Feld</a></li>
<li><a href="#constructor-detail">Konstruktor</a></li>
<li><a href="#method-detail">Methode</a></li>
</ul>
</li>
</ul>
</div>
<div class="sub-nav">
<div id="navbar-sub-list">
<ul class="sub-nav-list">
<li>Übersicht:&nbsp;</li>
<li>Verschachtelt&nbsp;|&nbsp;</li>
<li><a href="#field-summary">Feld</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Konstruktor</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Methode</a></li>
</ul>
<ul class="sub-nav-list">
<li>Details:&nbsp;</li>
<li><a href="#field-detail">Feld</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Konstruktor</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Methode</a></li>
</ul>
</div>
<div class="nav-list-search"><a href="../search.html">SEARCH</a>
<input type="text" id="search-input" disabled placeholder="Suchen">
<input type="reset" id="reset-button" disabled value="reset">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">graph</a></div>
<h1 title="Klasse DirectedGraph" class="title">Klasse DirectedGraph&lt;T extends <a href="VertexMarking.html" title="Klasse in graph">VertexMarking</a>,<wbr>U extends <a href="EdgeMarking.html" title="Klasse in graph">EdgeMarking</a>&gt;</h1>
</div>
<div class="inheritance" title="Vererbungsbaum"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="Klasse oder Schnittstelle in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance"><a href="Graph.html" title="Klasse in graph">graph.Graph</a>&lt;T,<wbr>U&gt;
<div class="inheritance">graph.DirectedGraph&lt;T,<wbr>U&gt;</div>
</div>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>Typparameter:</dt>
<dd><code>T</code> - the type of vertex marking</dd>
<dd><code>U</code> - the type of edge marking</dd>
</dl>
<hr>
<div class="type-signature"><span class="modifiers">public class </span><span class="element-name type-name-label">DirectedGraph&lt;T extends <a href="VertexMarking.html" title="Klasse in graph">VertexMarking</a>,<wbr>U extends <a href="EdgeMarking.html" title="Klasse in graph">EdgeMarking</a>&gt;</span>
<span class="extends-implements">extends <a href="Graph.html" title="Klasse in graph">Graph</a>&lt;T,<wbr>U&gt;</span></div>
<div class="block">Represents a directed graph with vertex and edge markings. This class extends the Graph class and
 provides additional functionality for directed graphs, including visualization and logging capabilities.</div>
</section>
<section class="summary">
<ul class="summary-list">
<!-- =========== FIELD SUMMARY =========== -->
<li>
<section class="field-summary" id="field-summary">
<h2>Feldübersicht</h2>
<div class="caption"><span>Felder</span></div>
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifizierer und Typ</div>
<div class="table-header col-second">Feld</div>
<div class="table-header col-last">Beschreibung</div>
<div class="col-first even-row-color"><code>private <a href="../logging/LogElementList.html" title="Klasse in logging">LogElementList</a><wbr>&lt;<a href="../OurApplication/OurLogElement.html" title="Klasse in OurApplication">OurLogElement</a>&gt;</code></div>
<div class="col-second even-row-color"><code><a href="#logList" class="member-name-link">logList</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>private <a href="../visualizationElements/Graph.html" title="Klasse in visualizationElements">Graph</a></code></div>
<div class="col-second odd-row-color"><code><a href="#screenGraph" class="member-name-link">screenGraph</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
</div>
</section>
</li>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Konstruktorübersicht</h2>
<div class="caption"><span>Konstruktoren</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Konstruktor</div>
<div class="table-header col-last">Beschreibung</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E()" class="member-name-link">DirectedGraph</a>()</code></div>
<div class="col-last even-row-color">
<div class="block">Constructs an empty directed graph.</div>
</div>
<div class="col-constructor-name odd-row-color"><code><a href="#%3Cinit%3E(java.lang.String)" class="member-name-link">DirectedGraph</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="Klasse oder Schnittstelle in java.lang" class="external-link">String</a>&nbsp;s)</code></div>
<div class="col-last odd-row-color">
<div class="block">Constructs a directed graph from a string representation.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Methodenübersicht</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">Alle Methoden</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instanzmethoden</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Konkrete Methoden</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<div class="table-header col-first">Modifizierer und Typ</div>
<div class="table-header col-second">Methode</div>
<div class="table-header col-last">Beschreibung</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#addEdge(graph.MarkedEdge)" class="member-name-link">addEdge</a><wbr>(<a href="MarkedEdge.html" title="Klasse in graph">MarkedEdge</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">U</a>&gt;&nbsp;e)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Adds an edge to the graph.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#addVertex(graph.MarkedVertex)" class="member-name-link">addVertex</a><wbr>(<a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Adds a vertex to the graph.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#areStrongAdjacent(graph.MarkedVertex,graph.MarkedVertex)" class="member-name-link">areStrongAdjacent</a><wbr>(<a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n1,
 <a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n2)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Checks if two vertices are strongly adjacent (i.e., there is a bidirectional edge between them).</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#areStrongAdjacent(java.lang.String,java.lang.String)" class="member-name-link">areStrongAdjacent</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="Klasse oder Schnittstelle in java.lang" class="external-link">String</a>&nbsp;s1,
 <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="Klasse oder Schnittstelle in java.lang" class="external-link">String</a>&nbsp;s2)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Checks if two vertices are strongly adjacent (i.e., there is a bidirectional edge between them) by their names.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../logging/LogElementList.html" title="Klasse in logging">LogElementList</a><wbr>&lt;<a href="../OurApplication/OurLogElement.html" title="Klasse in OurApplication">OurLogElement</a>&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getLogList()" class="member-name-link">getLogList</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the log list associated with this directed graph.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Vector.html" title="Klasse oder Schnittstelle in java.util" class="external-link">Vector</a><wbr>&lt;<a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getPredecessors(graph.MarkedVertex)" class="member-name-link">getPredecessors</a><wbr>(<a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a vector of predecessor vertices (i.e., vertices with edges directed towards the specified vertex).</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../visualizationElements/Graph.html" title="Klasse in visualizationElements">Graph</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getScreenGraph()" class="member-name-link">getScreenGraph</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the screen graph associated with this directed graph.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="../visualizationElements/Graph.html" title="Klasse in visualizationElements">Graph</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getScreenGraphCopy()" class="member-name-link">getScreenGraphCopy</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a copy of the screen graph associated with this directed graph.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>double</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getShortestPathAStar(graph.MarkedVertex,graph.MarkedVertex)" class="member-name-link">getShortestPathAStar</a><wbr>(<a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n1,
 <a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n2)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Finds the shortest path between two vertices using the A* algorithm.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getShortestPathDijkstra(graph.MarkedVertex,graph.MarkedVertex)" class="member-name-link">getShortestPathDijkstra</a><wbr>(<a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n1,
 <a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n2)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Finds the shortest path between two vertices using Dijkstra's algorithm.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Vector.html" title="Klasse oder Schnittstelle in java.util" class="external-link">Vector</a><wbr>&lt;<a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&gt;</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getSuccessors(graph.MarkedVertex)" class="member-name-link">getSuccessors</a><wbr>(<a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns a vector of successor vertices (i.e., vertices with edges directed away from the specified vertex).</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#inDegree(graph.MarkedVertex)" class="member-name-link">inDegree</a><wbr>(<a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the in-degree of a vertex (i.e., the number of edges directed towards the vertex).</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#inDegree(java.lang.String)" class="member-name-link">inDegree</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="Klasse oder Schnittstelle in java.lang" class="external-link">String</a>&nbsp;s)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the in-degree of a vertex by its name.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#outDegree(graph.MarkedVertex)" class="member-name-link">outDegree</a><wbr>(<a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the out-degree of a vertex (i.e., the number of edges directed away from the vertex).</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#outDegree(java.lang.String)" class="member-name-link">outDegree</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="Klasse oder Schnittstelle in java.lang" class="external-link">String</a>&nbsp;s)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Returns the out-degree of a vertex by its name.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#removeEdge(graph.MarkedEdge)" class="member-name-link">removeEdge</a><wbr>(<a href="MarkedEdge.html" title="Klasse in graph">MarkedEdge</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">U</a>&gt;&nbsp;e)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Removes an edge from the graph.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#removeVertex(graph.MarkedVertex)" class="member-name-link">removeVertex</a><wbr>(<a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Removes a vertex from the graph.</div>
</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-graph.Graph">Von Klasse geerbte Methoden&nbsp;graph.<a href="Graph.html" title="Klasse in graph">Graph</a></h3>
<code><a href="Graph.html#areAdjacent(graph.MarkedVertex,graph.MarkedVertex)">areAdjacent</a>, <a href="Graph.html#areAdjacent(java.lang.String,java.lang.String)">areAdjacent</a>, <a href="Graph.html#clearScreenGraphColor()">clearScreenGraphColor</a>, <a href="Graph.html#degree()">degree</a>, <a href="Graph.html#getAllEdges()">getAllEdges</a>, <a href="Graph.html#getAllVertexes()">getAllVertexes</a>, <a href="Graph.html#getName()">getName</a>, <a href="Graph.html#hasEdge(graph.MarkedEdge)">hasEdge</a>, <a href="Graph.html#hasEdge(graph.MarkedVertex,graph.MarkedVertex)">hasEdge</a>, <a href="Graph.html#hasEdge(java.lang.String)">hasEdge</a>, <a href="Graph.html#hasEdge(java.lang.String,java.lang.String)">hasEdge</a>, <a href="Graph.html#hasLoop(graph.MarkedVertex)">hasLoop</a>, <a href="Graph.html#hasLoop(java.lang.String)">hasLoop</a>, <a href="Graph.html#hasVertex(graph.MarkedVertex)">hasVertex</a>, <a href="Graph.html#hasVertex(java.lang.String)">hasVertex</a>, <a href="Graph.html#numberOfEdges()">numberOfEdges</a>, <a href="Graph.html#numberOfVertexes()">numberOfVertexes</a>, <a href="Graph.html#removeEdge(java.lang.String)">removeEdge</a>, <a href="Graph.html#removeVertex(java.lang.String)">removeVertex</a>, <a href="Graph.html#setName(java.lang.String)">setName</a>, <a href="Graph.html#toString()">toString</a></code></div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Von Klasse geerbte Methoden&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html" title="Klasse oder Schnittstelle in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#clone()" title="Klasse oder Schnittstelle in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="Klasse oder Schnittstelle in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#finalize()" title="Klasse oder Schnittstelle in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#getClass()" title="Klasse oder Schnittstelle in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#hashCode()" title="Klasse oder Schnittstelle in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notify()" title="Klasse oder Schnittstelle in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#notifyAll()" title="Klasse oder Schnittstelle in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait()" title="Klasse oder Schnittstelle in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long)" title="Klasse oder Schnittstelle in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="Klasse oder Schnittstelle in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ============ FIELD DETAIL =========== -->
<li>
<section class="field-details" id="field-detail">
<h2>Felddetails</h2>
<ul class="member-list">
<li>
<section class="detail" id="screenGraph">
<h3>screenGraph</h3>
<div class="member-signature"><span class="modifiers">private</span>&nbsp;<span class="return-type"><a href="../visualizationElements/Graph.html" title="Klasse in visualizationElements">Graph</a></span>&nbsp;<span class="element-name">screenGraph</span></div>
</section>
</li>
<li>
<section class="detail" id="logList">
<h3>logList</h3>
<div class="member-signature"><span class="modifiers">private</span>&nbsp;<span class="return-type"><a href="../logging/LogElementList.html" title="Klasse in logging">LogElementList</a>&lt;<a href="../OurApplication/OurLogElement.html" title="Klasse in OurApplication">OurLogElement</a>&gt;</span>&nbsp;<span class="element-name">logList</span></div>
</section>
</li>
</ul>
</section>
</li>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Konstruktordetails</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;()">
<h3>DirectedGraph</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">DirectedGraph</span>()</div>
<div class="block">Constructs an empty directed graph.</div>
</section>
</li>
<li>
<section class="detail" id="&lt;init&gt;(java.lang.String)">
<h3>DirectedGraph</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name">DirectedGraph</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="Klasse oder Schnittstelle in java.lang" class="external-link">String</a>&nbsp;s)</span></div>
<div class="block">Constructs a directed graph from a string representation.</div>
<dl class="notes">
<dt>Parameter:</dt>
<dd><code>s</code> - the string representation of the graph</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Methodendetails</h2>
<ul class="member-list">
<li>
<section class="detail" id="getScreenGraph()">
<h3>getScreenGraph</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="../visualizationElements/Graph.html" title="Klasse in visualizationElements">Graph</a></span>&nbsp;<span class="element-name">getScreenGraph</span>()</div>
<div class="block">Returns the screen graph associated with this directed graph.</div>
<dl class="notes">
<dt>Angegeben von:</dt>
<dd><code><a href="Graph.html#getScreenGraph()">getScreenGraph</a></code>&nbsp;in Klasse&nbsp;<code><a href="Graph.html" title="Klasse in graph">Graph</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a> extends <a href="VertexMarking.html" title="Klasse in graph">VertexMarking</a>,<wbr><a href="DirectedGraph.html" title="Typparameter in DirectedGraph">U</a> extends <a href="EdgeMarking.html" title="Klasse in graph">EdgeMarking</a>&gt;</code></dd>
<dt>Gibt zurück:</dt>
<dd>the screen graph</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getScreenGraphCopy()">
<h3>getScreenGraphCopy</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="../visualizationElements/Graph.html" title="Klasse in visualizationElements">Graph</a></span>&nbsp;<span class="element-name">getScreenGraphCopy</span>()</div>
<div class="block">Returns a copy of the screen graph associated with this directed graph.</div>
<dl class="notes">
<dt>Gibt zurück:</dt>
<dd>a copy of the screen graph</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getLogList()">
<h3>getLogList</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="../logging/LogElementList.html" title="Klasse in logging">LogElementList</a>&lt;<a href="../OurApplication/OurLogElement.html" title="Klasse in OurApplication">OurLogElement</a>&gt;</span>&nbsp;<span class="element-name">getLogList</span>()</div>
<div class="block">Returns the log list associated with this directed graph.</div>
<dl class="notes">
<dt>Angegeben von:</dt>
<dd><code><a href="Graph.html#getLogList()">getLogList</a></code>&nbsp;in Klasse&nbsp;<code><a href="Graph.html" title="Klasse in graph">Graph</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a> extends <a href="VertexMarking.html" title="Klasse in graph">VertexMarking</a>,<wbr><a href="DirectedGraph.html" title="Typparameter in DirectedGraph">U</a> extends <a href="EdgeMarking.html" title="Klasse in graph">EdgeMarking</a>&gt;</code></dd>
<dt>Gibt zurück:</dt>
<dd>the log list</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="addEdge(graph.MarkedEdge)">
<h3>addEdge</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">addEdge</span><wbr><span class="parameters">(<a href="MarkedEdge.html" title="Klasse in graph">MarkedEdge</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">U</a>&gt;&nbsp;e)</span></div>
<div class="block">Adds an edge to the graph.</div>
<dl class="notes">
<dt>Setzt außer Kraft:</dt>
<dd><code><a href="Graph.html#addEdge(graph.MarkedEdge)">addEdge</a></code>&nbsp;in Klasse&nbsp;<code><a href="Graph.html" title="Klasse in graph">Graph</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a> extends <a href="VertexMarking.html" title="Klasse in graph">VertexMarking</a>,<wbr><a href="DirectedGraph.html" title="Typparameter in DirectedGraph">U</a> extends <a href="EdgeMarking.html" title="Klasse in graph">EdgeMarking</a>&gt;</code></dd>
<dt>Parameter:</dt>
<dd><code>e</code> - the edge to be added</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="addVertex(graph.MarkedVertex)">
<h3>addVertex</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">addVertex</span><wbr><span class="parameters">(<a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n)</span></div>
<div class="block">Adds a vertex to the graph.</div>
<dl class="notes">
<dt>Setzt außer Kraft:</dt>
<dd><code><a href="Graph.html#addVertex(graph.MarkedVertex)">addVertex</a></code>&nbsp;in Klasse&nbsp;<code><a href="Graph.html" title="Klasse in graph">Graph</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a> extends <a href="VertexMarking.html" title="Klasse in graph">VertexMarking</a>,<wbr><a href="DirectedGraph.html" title="Typparameter in DirectedGraph">U</a> extends <a href="EdgeMarking.html" title="Klasse in graph">EdgeMarking</a>&gt;</code></dd>
<dt>Parameter:</dt>
<dd><code>n</code> - the vertex to be added</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="removeEdge(graph.MarkedEdge)">
<h3>removeEdge</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">removeEdge</span><wbr><span class="parameters">(<a href="MarkedEdge.html" title="Klasse in graph">MarkedEdge</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">U</a>&gt;&nbsp;e)</span></div>
<div class="block">Removes an edge from the graph.</div>
<dl class="notes">
<dt>Setzt außer Kraft:</dt>
<dd><code><a href="Graph.html#removeEdge(graph.MarkedEdge)">removeEdge</a></code>&nbsp;in Klasse&nbsp;<code><a href="Graph.html" title="Klasse in graph">Graph</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a> extends <a href="VertexMarking.html" title="Klasse in graph">VertexMarking</a>,<wbr><a href="DirectedGraph.html" title="Typparameter in DirectedGraph">U</a> extends <a href="EdgeMarking.html" title="Klasse in graph">EdgeMarking</a>&gt;</code></dd>
<dt>Parameter:</dt>
<dd><code>e</code> - the edge to be removed</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="removeVertex(graph.MarkedVertex)">
<h3>removeVertex</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name">removeVertex</span><wbr><span class="parameters">(<a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n)</span></div>
<div class="block">Removes a vertex from the graph.</div>
<dl class="notes">
<dt>Setzt außer Kraft:</dt>
<dd><code><a href="Graph.html#removeVertex(graph.MarkedVertex)">removeVertex</a></code>&nbsp;in Klasse&nbsp;<code><a href="Graph.html" title="Klasse in graph">Graph</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a> extends <a href="VertexMarking.html" title="Klasse in graph">VertexMarking</a>,<wbr><a href="DirectedGraph.html" title="Typparameter in DirectedGraph">U</a> extends <a href="EdgeMarking.html" title="Klasse in graph">EdgeMarking</a>&gt;</code></dd>
<dt>Parameter:</dt>
<dd><code>n</code> - the vertex to be removed</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="areStrongAdjacent(graph.MarkedVertex,graph.MarkedVertex)">
<h3>areStrongAdjacent</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">areStrongAdjacent</span><wbr><span class="parameters">(<a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n1,
 <a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n2)</span></div>
<div class="block">Checks if two vertices are strongly adjacent (i.e., there is a bidirectional edge between them).</div>
<dl class="notes">
<dt>Parameter:</dt>
<dd><code>n1</code> - the first vertex</dd>
<dd><code>n2</code> - the second vertex</dd>
<dt>Gibt zurück:</dt>
<dd>true if the vertices are strongly adjacent, false otherwise</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="areStrongAdjacent(java.lang.String,java.lang.String)">
<h3>areStrongAdjacent</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name">areStrongAdjacent</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="Klasse oder Schnittstelle in java.lang" class="external-link">String</a>&nbsp;s1,
 <a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="Klasse oder Schnittstelle in java.lang" class="external-link">String</a>&nbsp;s2)</span>
                          throws <span class="exceptions"><a href="NameDoesNotExistException.html" title="Klasse in graph">NameDoesNotExistException</a></span></div>
<div class="block">Checks if two vertices are strongly adjacent (i.e., there is a bidirectional edge between them) by their names.</div>
<dl class="notes">
<dt>Parameter:</dt>
<dd><code>s1</code> - the name of the first vertex</dd>
<dd><code>s2</code> - the name of the second vertex</dd>
<dt>Gibt zurück:</dt>
<dd>true if the vertices are strongly adjacent, false otherwise</dd>
<dt>Löst aus:</dt>
<dd><code><a href="NameDoesNotExistException.html" title="Klasse in graph">NameDoesNotExistException</a></code> - if one of the vertices does not exist</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="inDegree(graph.MarkedVertex)">
<h3>inDegree</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">inDegree</span><wbr><span class="parameters">(<a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n)</span></div>
<div class="block">Returns the in-degree of a vertex (i.e., the number of edges directed towards the vertex).</div>
<dl class="notes">
<dt>Parameter:</dt>
<dd><code>n</code> - the vertex</dd>
<dt>Gibt zurück:</dt>
<dd>the in-degree of the vertex</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="inDegree(java.lang.String)">
<h3>inDegree</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">inDegree</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="Klasse oder Schnittstelle in java.lang" class="external-link">String</a>&nbsp;s)</span>
             throws <span class="exceptions"><a href="NameDoesNotExistException.html" title="Klasse in graph">NameDoesNotExistException</a></span></div>
<div class="block">Returns the in-degree of a vertex by its name.</div>
<dl class="notes">
<dt>Parameter:</dt>
<dd><code>s</code> - the name of the vertex</dd>
<dt>Gibt zurück:</dt>
<dd>the in-degree of the vertex</dd>
<dt>Löst aus:</dt>
<dd><code><a href="NameDoesNotExistException.html" title="Klasse in graph">NameDoesNotExistException</a></code> - if the vertex does not exist</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="outDegree(graph.MarkedVertex)">
<h3>outDegree</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">outDegree</span><wbr><span class="parameters">(<a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n)</span></div>
<div class="block">Returns the out-degree of a vertex (i.e., the number of edges directed away from the vertex).</div>
<dl class="notes">
<dt>Parameter:</dt>
<dd><code>n</code> - the vertex</dd>
<dt>Gibt zurück:</dt>
<dd>the out-degree of the vertex</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="outDegree(java.lang.String)">
<h3>outDegree</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">outDegree</span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/lang/String.html" title="Klasse oder Schnittstelle in java.lang" class="external-link">String</a>&nbsp;s)</span>
              throws <span class="exceptions"><a href="NameDoesNotExistException.html" title="Klasse in graph">NameDoesNotExistException</a></span></div>
<div class="block">Returns the out-degree of a vertex by its name.</div>
<dl class="notes">
<dt>Parameter:</dt>
<dd><code>s</code> - the name of the vertex</dd>
<dt>Gibt zurück:</dt>
<dd>the out-degree of the vertex</dd>
<dt>Löst aus:</dt>
<dd><code><a href="NameDoesNotExistException.html" title="Klasse in graph">NameDoesNotExistException</a></code> - if the vertex does not exist</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getPredecessors(graph.MarkedVertex)">
<h3>getPredecessors</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Vector.html" title="Klasse oder Schnittstelle in java.util" class="external-link">Vector</a>&lt;<a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&gt;</span>&nbsp;<span class="element-name">getPredecessors</span><wbr><span class="parameters">(<a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n)</span></div>
<div class="block">Returns a vector of predecessor vertices (i.e., vertices with edges directed towards the specified vertex).</div>
<dl class="notes">
<dt>Parameter:</dt>
<dd><code>n</code> - the vertex</dd>
<dt>Gibt zurück:</dt>
<dd>a vector of predecessor vertices</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getSuccessors(graph.MarkedVertex)">
<h3>getSuccessors</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/21/docs/api/java.base/java/util/Vector.html" title="Klasse oder Schnittstelle in java.util" class="external-link">Vector</a>&lt;<a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&gt;</span>&nbsp;<span class="element-name">getSuccessors</span><wbr><span class="parameters">(<a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n)</span></div>
<div class="block">Returns a vector of successor vertices (i.e., vertices with edges directed away from the specified vertex).</div>
<dl class="notes">
<dt>Parameter:</dt>
<dd><code>n</code> - the vertex</dd>
<dt>Gibt zurück:</dt>
<dd>a vector of successor vertices</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getShortestPathDijkstra(graph.MarkedVertex,graph.MarkedVertex)">
<h3>getShortestPathDijkstra</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name">getShortestPathDijkstra</span><wbr><span class="parameters">(<a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n1,
 <a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n2)</span></div>
<div class="block">Finds the shortest path between two vertices using Dijkstra's algorithm.</div>
<dl class="notes">
<dt>Angegeben von:</dt>
<dd><code><a href="Graph.html#getShortestPathDijkstra(graph.MarkedVertex,graph.MarkedVertex)">getShortestPathDijkstra</a></code>&nbsp;in Klasse&nbsp;<code><a href="Graph.html" title="Klasse in graph">Graph</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a> extends <a href="VertexMarking.html" title="Klasse in graph">VertexMarking</a>,<wbr><a href="DirectedGraph.html" title="Typparameter in DirectedGraph">U</a> extends <a href="EdgeMarking.html" title="Klasse in graph">EdgeMarking</a>&gt;</code></dd>
<dt>Parameter:</dt>
<dd><code>n1</code> - the starting vertex</dd>
<dd><code>n2</code> - the ending vertex</dd>
<dt>Gibt zurück:</dt>
<dd>the shortest distance from n1 to n2, or -1 if no path is found</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getShortestPathAStar(graph.MarkedVertex,graph.MarkedVertex)">
<h3>getShortestPathAStar</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">double</span>&nbsp;<span class="element-name">getShortestPathAStar</span><wbr><span class="parameters">(<a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n1,
 <a href="MarkedVertex.html" title="Klasse in graph">MarkedVertex</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a>&gt;&nbsp;n2)</span></div>
<div class="block">Finds the shortest path between two vertices using the A* algorithm.</div>
<dl class="notes">
<dt>Angegeben von:</dt>
<dd><code><a href="Graph.html#getShortestPathAStar(graph.MarkedVertex,graph.MarkedVertex)">getShortestPathAStar</a></code>&nbsp;in Klasse&nbsp;<code><a href="Graph.html" title="Klasse in graph">Graph</a>&lt;<a href="DirectedGraph.html" title="Typparameter in DirectedGraph">T</a> extends <a href="VertexMarking.html" title="Klasse in graph">VertexMarking</a>,<wbr><a href="DirectedGraph.html" title="Typparameter in DirectedGraph">U</a> extends <a href="EdgeMarking.html" title="Klasse in graph">EdgeMarking</a>&gt;</code></dd>
<dt>Parameter:</dt>
<dd><code>n1</code> - the starting vertex</dd>
<dd><code>n2</code> - the ending vertex</dd>
<dt>Gibt zurück:</dt>
<dd>the shortest distance from n1 to n2, or -1 if no path is found</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
</div>
</div>
</body>
</html>