当前位置: 首页 > wzjs >正文

宜昌商城网站建设北京网络推广

宜昌商城网站建设,北京网络推广,免费软件下载平台,在线客服系统全套源码拓扑排序精讲 关键&#xff1a; 先找到入度为0的节点&#xff0c;把这些节点加入队列/结果&#xff0c;然后依次循环再找。 #include <iostream> #include <vector> #include <queue> #include <unordered_map> using namespace std; int main() {int …

拓扑排序精讲

关键:

先找到入度为0的节点,把这些节点加入队列/结果,然后依次循环再找。

#include <iostream>
#include <vector>
#include <queue>
#include <unordered_map>
using namespace std;
int main() {int m, n, s, t;cin >> n >> m;vector<int> inDegree(n, 0); // 记录每个文件的入度unordered_map<int, vector<int>> umap;// 记录文件依赖关系vector<int> result; // 记录结果while (m--) {// s->t,先有s才能有tcin >> s >> t;inDegree[t]++; // t的入度加一umap[s].push_back(t); // 记录s指向哪些文件}queue<int> que;for (int i = 0; i < n; i++) {// 入度为0的文件,可以作为开头,先加入队列if (inDegree[i] == 0) que.push(i);//cout << inDegree[i] << endl;}// int count = 0;while (que.size()) {int  cur = que.front(); // 当前选中的文件que.pop();//count++;result.push_back(cur);vector<int> files = umap[cur]; //获取该文件指向的文件if (files.size()) { // cur有后续文件for (int i = 0; i < files.size(); i++) {inDegree[files[i]] --; // cur的指向的文件入度-1if(inDegree[files[i]] == 0) que.push(files[i]);}}}if (result.size() == n) {for (int i = 0; i < n - 1; i++) cout << result[i] << " ";cout << result[n - 1];} else cout << -1 << endl;}

dijkstra(朴素版)精讲

不能处理负权重,贪心算法,minDist表示距离原点最近的距离。

跟prim一样

#include <iostream>
#include <vector>
#include <climits>
using namespace std;int main(){int n,m,s,e,v;cin>>n>>m;vector<vector<int>> grid(n+1,vector<int>(n+1, INT_MAX));for(int i=0;i<m;i++){cin>>s>>e>>v;grid[s][e]=v;}vector<bool> visited(n+1, false);vector<int> minDist(n+1, INT_MAX);int start = 1;minDist[start] = 0;for(int i=0;i<n;i++){int cur = -1;int minVal = INT_MAX;//1.选择未到过的且距离起始点最近车站for(int j=1;j<=n;j++){if(!visited[j] && minDist[j]<minVal){cur = j;minVal = minDist[j];}}if(cur == -1) {break;}//2.到达该车站visited[cur] = true;//3.更新minDistfor(int j=1;j<=n;j++){if(!visited[j] && grid[cur][j]!=INT_MAX && minDist[cur]+grid[cur][j]<minDist[j]){minDist[j] = minDist[cur]+grid[cur][j];}}// cout<<"cur="<<cur<<endl;// for(int k=1;k<=n;k++){//     cout<<minDist[k]<<" ";// }// cout<<endl;}int count = 0;for(int i=1;i<=n;i++){if(visited[i]){count++;}}if(count==n){cout<<minDist[n]<<endl;}else{cout<<-1<<endl;}}

http://www.dtcms.com/wzjs/519053.html

相关文章:

  • 创建网站免费注册搜狗站长平台验证不了
  • 殡葬网站建设知乎推广公司
  • 05网站西安网站推广排名
  • 怎样做一个企业的网站建站网络营销包括的主要内容有
  • dz论坛如何做网站地图北京百度竞价托管公司
  • 公司网站建设属于什么职位有趣的网络营销案例
  • 做淘宝客网站多少钱网络营销推广seo
  • 旅游网站建设的总结seo排名赚
  • 口碑好网站建设价格在线优化网站
  • lamp网站开发网站关键词优化代理
  • 自己做网络棋牌网站流程seo推广外包企业
  • 静态网站怎么在网上推销产品
  • 廊坊网站制作公司排名今日新闻热点
  • 合肥网站推广哪家好产品软文案例
  • wordpress打赏可见插件莆田关键词优化报价
  • 网站建设开票开什么内容seo外包公司哪家专业
  • 英文网站建设seo专员招聘
  • wordpress备份 方案百度seo排名优化公司哪家强
  • 代理 指定网站 hostseo研究中心vip教程
  • 河北邢台人品怎么样宁波免费seo排名优化
  • 江苏兴力建设集团有限公司网站自助建站系统源码
  • wordpress微博插件外贸seo网站建设
  • 影院网站怎么做app开发费用一般多少钱
  • php网页制作实例怎么优化网络
  • 教育中介公司网站建设费用seo优化 搜 盈seo公司
  • premium WordPressseo静态页源码
  • 金华建设网站公司百度网站收录
  • 一分钟建站网络营销的发展现状如何
  • 靖江网站定制宁波网站建设与维护
  • 英文网站建设深圳兔子bt搜索