C语言实现算法
Master Chicken
精通编写hello world
展开
-
埃拉托色尼筛法.c
如果自然数i为素数,则设a[i]为1,否则设为0.首先把数组中的所有元素设为1,以表明没有任何数已被证明是非素数。然后,把数组中所对应索引处已证明是非素数(已知素数的倍数)的元素设为0.如果所有更小素数的倍数都已经设为0,a[i]仍然为1,则可知它是素数。 因为程序中所用的数组由最简单的元素类型—0和1组成的数组,所以直接由位组成的数组比整数组成的数组更省空间。另外,如果N值过大,某些编程环境可能...原创 2020-04-12 21:57:28 · 465 阅读 · 0 评论 -
两个基本的搜索算法.c
顺序搜索(sequential search) 这个函数检查数v是否在一个事先存储的数的集合a[l],a[l+1],...,a[r]a[l],a[l+1],...,a[r]a[l],a[l+1],...,a[r]中。从第一个元素开始,顺序比较每个元素。如果达到末尾而未找到所要找的数,那么返回值为-1.否则,返回这个数所在数组位置处的下标。 int search(int a[],int v,int ...原创 2020-04-11 21:59:20 · 224 阅读 · 1 评论 -
连通问题的几种算法.c
连通问题(connectivity problem)是一种图论问题.在可以把问题归结为建立两元素间联系的数学问题中,思维图的运算可以归结为安插新的结点和边,最终完成包含表示这两元素结点的一个连通图。 程序1.1 连通问题的快速查找算法 这个程序从标准输入读取小于N的非负整数对序列(对p-q表示“把对象B连接到q”),并且输出还未联通的输入对。程序中使用数组id,每个元素代表一个对象,且具有以下性质...原创 2020-04-11 21:43:07 · 341 阅读 · 0 评论