Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenDocCN
TinySTL
提交
17fd4faf
T
TinySTL
项目概览
OpenDocCN
/
TinySTL
通知
4
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
TinySTL
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
17fd4faf
编写于
2月 11, 2015
作者:
邹
邹晓航
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add
上级
4dd2dfe8
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
60 addition
and
0 deletion
+60
-0
TinySTL/Test/GraphTest.cpp
TinySTL/Test/GraphTest.cpp
+60
-0
未找到文件。
TinySTL/Test/GraphTest.cpp
0 → 100644
浏览文件 @
17fd4faf
#include "GraphTest.h"
namespace
TinySTL
{
namespace
GraphTest
{
void
testCase1
(){
dGraph
<
int
,
int
>
g
;
assert
(
g
.
empty
());
assert
(
g
.
size
()
==
0
);
g
.
add_node
(
g
.
make_node
(
0
,
0
),
g
.
empty_node_set
());
assert
(
!
g
.
empty
());
assert
(
g
.
size
()
==
1
);
assert
(
g
.
is_contained
(
0
));
auto
node
=
g
.
get_node
(
0
);
assert
(
node
.
first
==
0
&&
node
.
second
==
0
);
}
void
testCase2
(){
dGraph
<
int
,
int
>
g
;
dGraph
<
int
,
int
>::
nodes_set_type
set1
,
set2
,
set3
;
set1
.
push_back
(
g
.
make_node
(
1
,
11
));
set1
.
push_back
(
g
.
make_node
(
2
,
22
));
set1
.
push_back
(
g
.
make_node
(
3
,
33
));
g
.
add_node
(
g
.
make_node
(
0
,
0
),
set1
);
set2
.
push_back
(
g
.
make_node
(
5
,
55
));
set2
.
push_back
(
g
.
make_node
(
6
,
66
));
set2
.
push_back
(
g
.
make_node
(
7
,
77
));
g
.
add_node
(
g
.
make_node
(
1
,
11
),
set2
);
set3
.
push_back
(
g
.
make_node
(
12
,
1212
));
set3
.
push_back
(
g
.
make_node
(
13
,
1313
));
set3
.
push_back
(
g
.
make_node
(
14
,
1414
));
g
.
add_node
(
7
,
set3
);
g
.
make_edge
(
12
,
2
);
g
.
make_edge
(
12
,
3
);
g
.
make_edge
(
12
,
0
);
std
::
cout
<<
"graph after add nodes:"
<<
std
::
endl
;
std
::
cout
<<
g
.
to_string
();
auto
func
=
[](
const
dGraph
<
int
,
int
>::
node_type
&
node
){
std
::
cout
<<
"["
<<
node
.
first
<<
","
<<
node
.
second
<<
"]"
<<
std
::
endl
;
};
std
::
cout
<<
"graph DFS from node(1, 11):"
<<
std
::
endl
;
g
.
DFS
(
1
,
func
);
std
::
cout
<<
"graph BFS from node(1, 11):"
<<
std
::
endl
;
g
.
BFS
(
1
,
func
);
std
::
cout
<<
"graph after delete node(7, 77):"
<<
std
::
endl
;
g
.
delete_node
(
dGraph
<
int
,
int
>::
node_type
(
7
,
77
));
std
::
cout
<<
g
.
to_string
();
}
void
testAllCases
(){
testCase1
();
testCase2
();
}
}
}
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录