摘要:
字符串查找算法在于其效率的高低,单个字符的一次比较从头到尾遍历一遍肯定能找出来,但这样效率太低。比较著名的算法有KMP和BM(KMP看着烦躁),但个人来说,Sunday算法是我最能理解且效率不错的算法(而且代码很简单啊)。sunday算法关注的是模式串的下一个字符的匹配情况(因为字符串不匹配的话,模... 阅读全文
摘要:
字符串的操作多用用就行了。在字符串相关操作中,进行字面值的处理需要用库函数,"="操作的是存储字符串的地址(基本类型)。1、C中字符串的赋值2、C中字符串长度和大小比较3、C中字符串拼接4、C中字符串的拆分4、C中字符串与其他类型转化 sprintf()->其他格式转成字符串 和 sscanf()-... 阅读全文
摘要:
这个也是回溯算法的经典案例。跟八皇后一起加深对回溯的理解。骑士巡游问题构造解的思路相比八皇后要简单些:int knight[N][N]={0}; //这里用0表示该位置未走过,走过的话该位置置1;为了打印出路径,将走过的位置依次值+1;static int dir_col[8]={-2,-1,1,... 阅读全文
摘要:
这个问题其实想好了怎么表示解就很好做了。static int g_eightqueen[8]={};//这里用g_eightqueen[i]=n; 表示棋盘上第i行第n列为一个解(位置可用);static int g_count = 0;建立解的表示之后,就能比较轻松的写出代码了。八皇后算法是经典的... 阅读全文
摘要:
下面的程序myMalloc是没有返回值的!用一级指针同样可以实现程序2,但需要返回值。总结:二级指针做形参时,操作的对象指向的是一级指针的地址,这个地址不是副本;而一级指针操作的是临时变量。===================================程序1: void myMalloc(c... 阅读全文