⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 qykshortestpaths.h

📁 kth算法的实现
💻 H
字号:
// ____________________________________________________________________________////  General Information:////  File Name:      QYKShortestPaths.h//  Author:         Yan Qi//  Project:        KShortestPath////  Description:    Declaration of class(es) CQYKShortestPaths////  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -//  Revision History:////  11/23/2006   Yan   Initial Version////  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -//  Copyright Notice:////  Copyright (c) 2006 Your Company Inc.////  Warning: This computer program is protected by copyright law and //  international treaties.  Unauthorized reproduction or distribution//  of this program, or any portion of it, may result in severe civil and//  criminal penalties, and will be prosecuted to the maximum extent //  possible under the law.//// ____________________________________________________________________________#ifndef _QYKSHORTESTPATHS_H_#define _QYKSHORTESTPATHS_H_#include "QYShortestPath.h"namespace asu_emit_qyan{	using namespace std;	class CQYKShortestPaths  	{	public:		CQYKShortestPaths(const CQYDirectedGraph& rGraph, int nSource, int nTerminal, int nTopk);		virtual ~CQYKShortestPaths();		vector<CQYDirectedPath*> GetTopKShortestPaths();	private: // methods		void _Init();		void _SearchTopKShortestPaths();		void _DetermineCost2Target(vector<int> vertices_list, int deviated_node_id);		void _Restore4CostAjustment(vector<int> vertices_list, int start_node_id, int end_node_id, bool is_deviated_node = false);		void _Update4CostUntilNode(int node_id);		void _ReverseEdgesInGraph(CQYDirectedGraph& g);		bool _EdgeHasBeenUsed(int start_node_id, int end_node_id);	private: // members				int m_nTopK;		int m_nSourceNodeId;		int m_nTargetNodeId;				const CQYDirectedGraph& m_rGraph;		CQYDirectedGraph* m_pIntermediateGraph;		CQYShortestPath* m_pShortestPath4IntermediateGraph;		vector<CQYDirectedPath*> m_vTopShortestPaths;		set<CQYDirectedPath*, CQYDirectedPath::Comparator> m_candidatePathsSet;		map<int, int> m_pathDeviatedNodeMap;	}; }#endif //_QYKSHORTESTPATHS_H_

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -