【图】深度优先算法(DFS)

正文之前

好久没弄C++了,上学期颓废了半学期,这学期开学就搞课程设计快疯了。待会要考试CSP,所以弄点代码储备,待会到了考场说不定能省点功夫!

正文

#include <iostream>
#include<vector>
#define Max 1000;

using namespace std;
struct Graph
{
   int  a[10][10];
};


vector<int> path;
bool visited[10];
int deepth=0;

void DFS(Graph tu,int start)
{
    visited[start]=true;
    for(int i=0;i<10;i++)
    {
        if (visited[i]==false && (tu.a)[start][i]<1000)
        {
            visited[i]=true;
            path[deepth]=i;
            ++deepth;
            DFS(tu,i);
        }
    }
}

// 1 4 1 3 1 5 2 5 2 3 4 5 5 6 5 7 
int main()
{
    Graph tu;
    for(auto &s:tu.a)
        for(auto &x:s)
            x=Max;
    int a,b,s;
    path.push_back(0);
    for(auto &x:visited)
        x=false;
    for(int i=0;i<8;++i)
    {
        cin>>a>>b;
        tu.a[a][b]=tu.a[b][a]=1;
        path.push_back(0);
    }
    path[deepth]=1;
    ++deepth;
    DFS(tu,1);
    cout<<"====~ The Path is ~====="<<endl;
    for(auto &s:path)
        if(s!=0)
            cout<<"\""<<s<<"\""<<" --> ";
    cout<<" | Stop ~ "<<endl;
}

Output:

Last login: Sun Mar 18 11:44:22 on ttys000


= * = * = * = * = * = * = * = * = * = * = * = * = * = * 
✧。٩(ˊᗜˋ)و✧* Hello! Welcome 张照博!!开启愉快的一天吧!
= * = * = * = * = * = * = * = * = * = * = * = * = * = * 


HustWolf:~ zhangzhaobo$ /Users/zhangzhaobo/program/C++/DFS ; exit;
1 4 1 3 1 5 2 5 2 3 4 5 5 6 5 7 
====~ The Path is ~=====
"1" --> "3" --> "2" --> "5" --> "4" --> "6" --> "7" -->  | Stop ~ 
logout
Saving session...
...copying shared history...
...saving history...truncating history files...
...completed.

[进程已完成]

正文之后

祝我好运!发誓这次考试后一定苦学!上学期太飘了。

原文发布于微信公众号 - 工科狗和生物喵(gh_3507b116a1f8)

原文发表时间:2018-05-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏SAP最佳业务实践

SAP最佳业务实践:FI–应收帐款(157)-9 F-28手动过帐客户收款

4.10 F-28手动过帐客户收款** 该活动过帐客户的收款。 未清项目已过帐(如果没有发现未清项目,请先用FB70 过账一张发票)。 角色:应收会计 会计核...

43780
来自专栏安恒信息

黑客新手入侵云服务器仅需4小时

外国媒体发表文章对云服务器的安全性做了剖析,以下为文章内容摘要:入侵云服务器需要多长时间?为了探究这一问题答案,云安全创新企业CloudPassage联接6台...

1K50
来自专栏企鹅号快讯

2017年年度最烂密码排名

据英国《每日邮报》12月20日报道,从雅虎发生数百万用户数据泄露到近期WannaCry和BadRabbit勒索软件攻击用户电脑,2017年已发生了多起重大网络安...

22990
来自专栏云计算D1net

黑客新手4小时入侵云服务器 敲响云安全警钟

一个IT业的新手,只花了4个小时就成功入侵了云服务器,这给云安全敲响了警钟,那么,这个黑客新手是通过什么方法来入侵云服务器的呢?为了确保云安全,应该采取哪些措施...

53460
来自专栏FreeBuf

只用一台笔记本发动DDoS攻击,就能让大型服务器下线

最近有研究人员发现了一种被称为BlackNurse的简单攻击方式,能够让独立入侵者能用有限的资源(一个有15Mbps带宽的笔记本)驱动大规模DDoS攻击,直接将...

278100
来自专栏程序员同行者

python 练习多级菜单思路

12710
来自专栏ChaMd5安全团队

永恒之石,你怕了吗?

永恒之石,你怕了吗? From ChaMd5安全团队核心成员 逍遥自在 这个五月,我们经历了感染了7万5千台电脑的WannaCry,没有了紧急开关的 Wanna...

36980
来自专栏FreeBuf

美国DHS发布《“灰熊草原”网络攻击活动深入分析报告》

近期,美国DHS继续公布了一份《”灰熊草原”网络攻击活动的深入分析》报告(Enhanced Analysis of GRIZZLY STEPPE Activit...

25150
来自专栏汇智网教程

原 EOS主网上线,背后公司Block.

16030
来自专栏域名资讯

品相优! 英文域名Matrix.io近20万元交易

含义好的域名无论在怎样的国别,都能很好的使用,这样一来,其价格肯定也不会低。近日,在海外平台上就有一枚matrix.io域名结拍,价格为30000美...

27090

扫码关注云+社区

领取腾讯云代金券