深度优先算法(搜索算法的一种)

假设初始状态是图中所有顶点都未被访问,则其方法的步骤是: 1)选取图中某一顶点Vi为出发点,访问并标记该顶点; 2)以Vi为当前顶点,依次搜索Vi的每个邻接点Vj,若Vj未被访问过,则访问和标记邻接点Vj,若Vj已被访问过,则搜索Vi的下一个邻接点; 3)以Vj为当前顶点,重复步骤2),直到图中和Vi有路径相通的顶点都被访问为止; 4)若图中尚有顶点未被访问过(非连通的情况下),则可任取图中的一个未被访问的顶点作为出发点,重复上述过程,直至图中所有顶点都被访问。 例1.迷宫问题编辑 问题 ...
默认分类 | 2015-12-05 10:49 | 阅读 2557 次 | 评论 0 条

白文白鸡问题

#include<stdio.h> int main() { int x, y, z, M, N, a, b; int c = 0; scanf("%d %d", &amp;M, &amp;N); a = M/5; b = M/3; for (x = a; x >= 0; x--) { for (y = b; y >= 0; y--) { for (z = N-1; z >=1; z--) { if ((5*x+3*y+z/3==M)&amp;&amp;(x+y+z==N)) { if (z%3 =...
默认分类 | 2015-10-25 17:03 | 阅读 2230 次 | 评论 0 条

化简分数题(C语言)

#include<stdio.h> int main() { int a, b, c, m, n, f, h, gcd; scanf("%d %d", &amp;a, &amp;b); if (0 <= a &amp;&amp; a <= 10000, 0 <= b &amp;&amp; b <= 10000) { m = a; n = b; f = m/gcd; h = n/gcd; if (a < b) a ^= b ^= a ^= b; while (b != 0) { c = a%b; a = b;...
默认分类 | 2015-10-22 20:12 | 阅读 5083 次 | 评论 0 条

编程笔记三

题一:简单几何题 数学课上,老师出了一道简单的关于三角形几何题,题目内容是:给出三个数字分别代表三条边,首先请判断利用这三条边是否可以组成一个三角形;如果可以,请计算三角形的周长和面积;否则,输出提示信息说明不能组成三角形。你可以用编程实现这道题的求解吗? Input: 输入三个整数,a, b, c。 Output: 如果3边可以组成三角形,则输出为两行。 第一行为:”the perimeter of this triangle is: 周长!” 第二行为...
默认分类 | 2015-10-14 22:31 | 阅读 1678 次 | 评论 0 条

总结最近常犯的C语言错误

例题:如何判断一个数是不是素数 算法:步骤一:如果所需判断的数为2,则输出是素数,算法结束,否则转步骤二。 步骤二:令t = 2, n = 所需要判断数的平方根。 步骤三:如果该数能被t整除则输出该数不是素数,算法结束,否则转到步骤四。 步骤四:如果t大于n则输出该数是素数,否则将t加一,再转到步骤三。 代码:(标准答案) #include<stdio.h> #include<m...
默认分类 | 2015-10-13 22:25 | 阅读 1953 次 | 评论 0 条

最基础的c语言hello world

#include<stdio.h> int main(){ printf("Hello World!"); return 0; }
默认分类 | 2015-10-13 17:06 | 阅读 1795 次 | 评论 2 条
浏览15657次
文章分类