
算法
文章平均质量分 84
优快云认证用户
这个作者很懒,什么都没留下…
展开
-
【查找数字x第k为上的数字】
#include#include// 求x用10进制表示时的数位长度 int len(int x){ if(x10) return 1; return len(x/10)+1;} // 取x的第k位数字int f(int x, int k){ if(len(x)-k==0) return x%10; return f(x /原创 2018-05-03 12:35:20 · 160 阅读 · 0 评论 -
【4N魔方阵】
/*4N魔方阵 */#include#include#define N 8int main(void){ int i, j; int square[N+1][N+1] = {0}; for(j = 1; j ){ for(i = 1; i ){ if(j%4 == i%4 ||原创 2018-05-03 12:34:36 · 458 阅读 · 0 评论 -
【奇数魔方阵】
/*奇数魔方阵 */#include#include#define N 5int main(void){ int i, j, key; int square[N+1][N+1] = {0}; i = 0; j = (N+1) / 2; for(key = 1; key ){原创 2018-05-03 12:34:39 · 415 阅读 · 0 评论 -
【上三角下三角对称矩阵】
/*上三角下三角对称矩阵说明:上三角矩阵是矩阵在对角线以下的元素均为0,即A ij = 0,i > j,例如:1 2 3 4 5 0 6 7 8 90 0 10 11 120 0 0 13 140 0 0 0 15下三角矩阵是矩阵在对角线以上的元素均为0,即A ij = 0,i原创 2018-05-03 12:34:41 · 4847 阅读 · 0 评论 -
【稀疏矩阵】
/*稀疏矩阵 说明:如果在矩阵中,多数的元素并没有资料,称此矩阵为稀疏矩阵(sparse matrix ), 由于矩阵在程式中常使用二维阵列表示,二维阵列的大小与使用的记忆体空间成正比,如果多数的元素没有资料 , 则会造成记忆体空间的浪费 , 为 此 , 必须设计稀疏矩阵的阵列储存方式 , 利用较少的记忆体空间储存完整的矩阵资讯。解法:在这边所介绍的方法较为简单,阵列只原创 2018-05-03 12:34:47 · 568 阅读 · 0 评论 -
【老鼠走迷宫二】
/*老鼠走迷宫二 有问题 */ #include #include void visit(int ,int); int maze[9][9] = { {2, 2, 2, 2, 2, 2, 2, 2, 2}, {2, 0, 0, 0, 0, 0, 0, 0, 2}, {2, 0, 2, 2, 0, 2, 2, 0, 2},原创 2018-05-03 12:34:49 · 217 阅读 · 0 评论 -
【字串核对】
/*字串核对说明:今日的一些高阶程式语言对于字串的处理支援越来越强大(例如Java、Perl 等),不过字串搜寻本身仍是个值得探讨的课题,在这边以Boyer- Moore法来说明如何进行字串说明,这个方法快且原理简洁易懂。解法:字串搜寻本身不难,使用暴力法也可以求解,但如何快速搜寻字串就不简单了,传统的字串搜寻是从关键字与字串的开头开始比对,例如 Knuth-Mor原创 2018-05-03 12:34:52 · 215 阅读 · 0 评论 -
【基数排序(桶排序)】
/*桶排序 说明:在之前所介绍过的排序方法 ,都是属于「比较性」的排序法,也就是每次排序时 ,都是比较整个键值的大小以进行排序。这边所要介绍的「基数排序法」(radix sort)则是属于「分配式排序」(distribution sort ),基数排序法又称「桶子法」(bucket sort)或bin sort,顾名思义,它是透过键值的部份资讯,将要排序的元素分配至某些「桶」中原创 2018-05-03 12:34:54 · 243 阅读 · 1 评论 -
【插补搜寻法】
/*有问题 插补搜寻法 说明:如果却搜寻的资料分布平均的话,可以使用插补(Interpolation)搜寻法来进行搜寻,在搜寻的对象大于500时,插补搜寻法会比 二分搜寻法 来的快速。*/#include #include #include #define MAX 10#define SWAP(x,y) {int t; t = x; x = y原创 2018-05-03 12:34:57 · 251 阅读 · 0 评论 -
【费式搜寻法】
/*费式搜寻法 说明:二分搜寻法每次搜寻时,都会将搜寻区间分为一半,所以其搜寻时间为O(log(2)n),log(2)表示以2为底的log值,这边要介绍的费氏搜寻,其利用费氏数列作为间隔来搜寻下一个数,所以区间收敛的速度更快,搜寻时间为O(logn)。*/#include #include #include #define MAX 15#define S原创 2018-05-03 12:35:00 · 292 阅读 · 0 评论 -
【经典算法大全】收集51种经典算法 初学者必备
《经典算法大全》是一款IOS平台的应用。里面收录了51种常用算法,都是一些基础问题。博主觊觎了好久,可悲哀的是博主没有苹果,所以从网上下了老奔的整理版并且每个都手敲了一遍。虽然网上也有博客贴了出来,但是自己写写感觉总是好的。现在分享个大家。代码和运行结果难免有出错的地方,请大家多多包涵。 1.河内之塔(汉诺塔)2.费式数列3.巴斯卡三角形4.三色棋5.老鼠走迷宫(1原创 2018-05-03 12:35:02 · 39570 阅读 · 16 评论 -
【求最大公共子串长度】
#include #include string.h>#define N 256int fun(const char* s1, const char* s2){ int a[N][N]; int len1 = strlen(s1); //字符串s1的长度 int len2 = strlen(s2); //字符串s2的长度原创 2018-05-03 12:35:17 · 201 阅读 · 0 评论 -
【2(2N+1)魔方阵 】
/*2(2N+1)魔方阵 */#include#include#define N 6#define SWAP(x, y) {int t; t = x; x = y; y = t;}void magic_o(int [][N], int);void exchange(int [][N], int);int main(void){ int原创 2018-05-03 12:34:34 · 437 阅读 · 0 评论