本文整理了Java中com.google.common.graph.Network.outEdges()
方法的一些代码示例,展示了Network.outEdges()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Network.outEdges()
方法的具体详情如下:
包路径:com.google.common.graph.Network
类名称:Network
方法名:outEdges
[英]Returns all edges in this network which can be traversed in the direction (if any) of the edge starting from node.
In a directed network, an outgoing edge's EndpointPair#source() equals node.
In an undirected network, this is equivalent to #incidentEdges(Object).
[中]返回此网络中可以从节点开始沿边的方向(如果有)遍历的所有边。
在有向网络中,传出边缘的端点对#source()等于node。
在无向网络中,这相当于#意外边(对象)。
代码示例来源:origin: google/guava
@Override
public Set<E> outEdges(N node) {
return network.outEdges(node);
}
代码示例来源:origin: google/guava
@Override
public Set<E> inEdges(N node) {
return delegate().outEdges(node); // transpose
}
代码示例来源:origin: google/guava
@Override
public Set<E> outEdges(N node) {
return delegate().outEdges(node);
}
代码示例来源:origin: google/j2objc
@Override
public Set<E> inEdges(N node) {
return delegate().outEdges(node); // transpose
}
代码示例来源:origin: google/j2objc
@Override
public Set<E> outEdges(N node) {
return delegate().outEdges(node);
}
代码示例来源:origin: wildfly/wildfly
@Override
public Set<E> outEdges(N node) {
return delegate().outEdges(node);
}
代码示例来源:origin: wildfly/wildfly
@Override
public Set<E> inEdges(N node) {
return delegate().outEdges(node); // transpose
}
代码示例来源:origin: google/guava
/**
* Returns the subgraph of {@code network} induced by {@code nodes}. This subgraph is a new graph
* that contains all of the nodes in {@code nodes}, and all of the {@link Network#edges() edges}
* from {@code network} for which the {@link Network#incidentNodes(Object) incident nodes} are
* both contained by {@code nodes}.
*
* @throws IllegalArgumentException if any element in {@code nodes} is not a node in the graph
*/
public static <N, E> MutableNetwork<N, E> inducedSubgraph(
Network<N, E> network, Iterable<? extends N> nodes) {
MutableNetwork<N, E> subgraph =
(nodes instanceof Collection)
? NetworkBuilder.from(network).expectedNodeCount(((Collection) nodes).size()).build()
: NetworkBuilder.from(network).build();
for (N node : nodes) {
subgraph.addNode(node);
}
for (N node : subgraph.nodes()) {
for (E edge : network.outEdges(node)) {
N successorNode = network.incidentNodes(edge).adjacentNode(node);
if (subgraph.nodes().contains(successorNode)) {
subgraph.addEdge(node, successorNode, edge);
}
}
}
return subgraph;
}
代码示例来源:origin: google/guava
private static <N, E> NetworkConnections<N, E> connectionsOf(Network<N, E> network, N node) {
if (network.isDirected()) {
Map<E, N> inEdgeMap = Maps.asMap(network.inEdges(node), sourceNodeFn(network));
Map<E, N> outEdgeMap = Maps.asMap(network.outEdges(node), targetNodeFn(network));
int selfLoopCount = network.edgesConnecting(node, node).size();
return network.allowsParallelEdges()
? DirectedMultiNetworkConnections.ofImmutable(inEdgeMap, outEdgeMap, selfLoopCount)
: DirectedNetworkConnections.ofImmutable(inEdgeMap, outEdgeMap, selfLoopCount);
} else {
Map<E, N> incidentEdgeMap =
Maps.asMap(network.incidentEdges(node), adjacentNodeFn(network, node));
return network.allowsParallelEdges()
? UndirectedMultiNetworkConnections.ofImmutable(incidentEdgeMap)
: UndirectedNetworkConnections.ofImmutable(incidentEdgeMap);
}
}
代码示例来源:origin: wildfly/wildfly
/**
* Returns the subgraph of {@code network} induced by {@code nodes}. This subgraph is a new graph
* that contains all of the nodes in {@code nodes}, and all of the {@link Network#edges() edges}
* from {@code network} for which the {@link Network#incidentNodes(Object) incident nodes} are
* both contained by {@code nodes}.
*
* @throws IllegalArgumentException if any element in {@code nodes} is not a node in the graph
*/
public static <N, E> MutableNetwork<N, E> inducedSubgraph(
Network<N, E> network, Iterable<? extends N> nodes) {
MutableNetwork<N, E> subgraph =
(nodes instanceof Collection)
? NetworkBuilder.from(network).expectedNodeCount(((Collection) nodes).size()).build()
: NetworkBuilder.from(network).build();
for (N node : nodes) {
subgraph.addNode(node);
}
for (N node : subgraph.nodes()) {
for (E edge : network.outEdges(node)) {
N successorNode = network.incidentNodes(edge).adjacentNode(node);
if (subgraph.nodes().contains(successorNode)) {
subgraph.addEdge(node, successorNode, edge);
}
}
}
return subgraph;
}
代码示例来源:origin: google/j2objc
private static class TransposedNetwork<N, E> extends ForwardingNetwork<N, E> {
private final Network<N, E> network;
TransposedNetwork(Network<N, E> network) {
this.network = network;
}
@Override
protected Network<N, E> delegate() {
return network;
}
@Override
public Set<N> predecessors(N node) {
return delegate().successors(node); // transpose
}
@Override
public Set<N> successors(N node) {
return delegate().predecessors(node); // transpose
}
@Override
public int inDegree(N node) {
return delegate().outDegree(node); // transpose
}
@Override
public int outDegree(N node) {
return delegate().inDegree(node); // transpose
代码示例来源:origin: google/j2objc
private static <N, E> NetworkConnections<N, E> connectionsOf(Network<N, E> network, N node) {
if (network.isDirected()) {
Map<E, N> inEdgeMap = Maps.asMap(network.inEdges(node), sourceNodeFn(network));
Map<E, N> outEdgeMap = Maps.asMap(network.outEdges(node), targetNodeFn(network));
int selfLoopCount = network.edgesConnecting(node, node).size();
return network.allowsParallelEdges()
? DirectedMultiNetworkConnections.ofImmutable(inEdgeMap, outEdgeMap, selfLoopCount)
: DirectedNetworkConnections.ofImmutable(inEdgeMap, outEdgeMap, selfLoopCount);
} else {
Map<E, N> incidentEdgeMap =
Maps.asMap(network.incidentEdges(node), adjacentNodeFn(network, node));
return network.allowsParallelEdges()
? UndirectedMultiNetworkConnections.ofImmutable(incidentEdgeMap)
: UndirectedNetworkConnections.ofImmutable(incidentEdgeMap);
}
}
代码示例来源:origin: wildfly/wildfly
private static <N, E> NetworkConnections<N, E> connectionsOf(Network<N, E> network, N node) {
if (network.isDirected()) {
Map<E, N> inEdgeMap = Maps.asMap(network.inEdges(node), sourceNodeFn(network));
Map<E, N> outEdgeMap = Maps.asMap(network.outEdges(node), targetNodeFn(network));
int selfLoopCount = network.edgesConnecting(node, node).size();
return network.allowsParallelEdges()
? DirectedMultiNetworkConnections.ofImmutable(inEdgeMap, outEdgeMap, selfLoopCount)
: DirectedNetworkConnections.ofImmutable(inEdgeMap, outEdgeMap, selfLoopCount);
} else {
Map<E, N> incidentEdgeMap =
Maps.asMap(network.incidentEdges(node), adjacentNodeFn(network, node));
return network.allowsParallelEdges()
? UndirectedMultiNetworkConnections.ofImmutable(incidentEdgeMap)
: UndirectedNetworkConnections.ofImmutable(incidentEdgeMap);
}
}
代码示例来源:origin: google/guava
assertThat(network.successors(nodeU)).contains(nodeV);
assertThat(network.adjacentNodes(nodeU)).contains(nodeV);
assertThat(network.outEdges(nodeU)).contains(edge);
assertThat(network.incidentEdges(nodeU)).contains(edge);
assertThat(network.predecessors(nodeV)).contains(nodeU);
.isEqualTo(network.inDegree(node) + network.outDegree(node));
assertThat(network.inEdges(node)).hasSize(network.inDegree(node));
assertThat(network.outEdges(node)).hasSize(network.outDegree(node));
} else {
assertThat(network.predecessors(node)).isEqualTo(network.adjacentNodes(node));
assertThat(network.successors(node)).isEqualTo(network.adjacentNodes(node));
assertThat(network.inEdges(node)).isEqualTo(network.incidentEdges(node));
assertThat(network.outEdges(node)).isEqualTo(network.incidentEdges(node));
assertThat(network.inDegree(node)).isEqualTo(network.degree(node));
assertThat(network.outDegree(node)).isEqualTo(network.degree(node));
if (network.isDirected() || !isSelfLoop) {
assertThat(edgesConnecting)
.isEqualTo(Sets.intersection(network.outEdges(node), network.inEdges(otherNode)));
assertThat(network.incidentNodes(edge))
.isEqualTo(EndpointPair.of(network, node, otherNode));
assertThat(network.outEdges(node)).contains(edge);
assertThat(network.inEdges(otherNode)).contains(edge);
assertTrue(
network.inEdges(node).contains(incidentEdge)
|| network.outEdges(node).contains(incidentEdge));
代码示例来源:origin: com.io7m.jgrapht/jgrapht-guava
@Override
public Set<E> outgoingEdgesOf(V vertex)
{
return network.outEdges(vertex);
}
代码示例来源:origin: com.google.guava/guava-tests
@Override
public Set<E> outEdges(N node) {
return network.outEdges(node);
}
代码示例来源:origin: org.jboss.eap/wildfly-client-all
@Override
public Set<E> inEdges(N node) {
return delegate().outEdges(node); // transpose
}
代码示例来源:origin: org.kill-bill.billing/killbill-platform-osgi-bundles-logger
@Override
public Set<E> inEdges(N node) {
return delegate().outEdges(node); // transpose
}
代码示例来源:origin: org.jboss.eap/wildfly-client-all
@Override
public Set<E> outEdges(N node) {
return delegate().outEdges(node);
}
代码示例来源:origin: org.kill-bill.billing/killbill-platform-osgi-bundles-logger
@Override
public Set<E> outEdges(N node) {
return delegate().outEdges(node);
}
内容来源于网络,如有侵权,请联系作者删除!