Google OR-Tools v9.11
a fast and portable software suite for combinatorial optimization
Loading...
Searching...
No Matches
k_shortest_paths.h File Reference
#include <algorithm>
#include <iterator>
#include <limits>
#include <queue>
#include <tuple>
#include <utility>
#include <vector>
#include "absl/algorithm/container.h"
#include "absl/base/optimization.h"
#include "absl/container/flat_hash_set.h"
#include "absl/log/check.h"
#include "absl/strings/str_join.h"
#include "absl/types/span.h"
#include "ortools/base/logging.h"
#include "ortools/graph/bounded_dijkstra.h"
#include "ortools/graph/ebert_graph.h"
#include "ortools/graph/shortest_paths.h"

Go to the source code of this file.

Classes

struct  operations_research::KShortestPaths
 
class  operations_research::internal::PathWithPriority
 
class  operations_research::internal::UnderlyingContainerAdapter< Container >
 

Namespaces

namespace  operations_research
 In SWIG mode, we don't want anything besides these top-level includes.
 
namespace  operations_research::internal
 End of the interface. Below is the implementation.
 

Functions

template<class GraphType >
KShortestPaths operations_research::YenKShortestPaths (const GraphType &graph, const std::vector< PathDistance > &arc_lengths, NodeIndex source, NodeIndex destination, unsigned k)
 
template<class GraphType >
ArcIndex operations_research::internal::FindArcIndex (const GraphType &graph, const NodeIndex source, const NodeIndex destination)
 
template<class GraphType >
std::tuple< std::vector< NodeIndex >, PathDistanceoperations_research::internal::ComputeShortestPath (const GraphType &graph, const std::vector< PathDistance > &arc_lengths, const NodeIndex source, const NodeIndex destination)
 
template<class GraphType >
PathDistance operations_research::internal::ComputePathLength (const GraphType &graph, const absl::Span< const PathDistance > arc_lengths, const absl::Span< const NodeIndex > path)
 Computes the total length of a path.
 

Variables

const PathDistance operations_research::internal::kMaxDistance = std::numeric_limits<PathDistance>::max() - 1
 
const PathDistance operations_research::internal::kDisconnectedDistance