- 博客(3)
- 收藏
- 关注
原创 算法学习之KMP算法,包你学会!
两个迭代器初始时刻一个指向第一个字符,一个指向第二个字符,求next[j]只需比较两个迭代器指向的字符,如果相等则next[j]=next[i]+1,再分别增加两个迭代器。如果不相等,则令第一个迭代器指向第next[i]个字符,再进行比较,相等则next[j]=next[next[i]]+1。如果不相等,则继续令第一个迭代器指向第next[next[i]]个字符……直到相等再分别增加两个迭代器。(其实就是反复使用KMP算法精髓)
2023-10-12 17:59:19
93
2
原创 用C解决八皇后问题——二维数组解法
最近做了下八皇后问题,作为一个小白,这个问题困扰了我许久,自然地想到来csdn上看看大佬们的解析,但惊讶的发现大佬们都用一维数组的解法。于是我先放弃了还在写的二维数组解法,来钻研一维数组解法,但是看不懂->动手失败->找解析->看不懂的循环包围了我,迫使我只能放弃一维数组而来尝试二维数组。其实我觉得二维数组的解法也挺适合新手的(毕竟我都做出来了,大家一定也行),敲代码不易,欢迎指正(我觉得还挺好懂?
2022-10-27 09:24:42
772
1
原创 大数的存储问题
问题如下:编程计算并输出1-40之间的所有数的阶乘。 作为一个小白,这个问题让我思考了好久,边看别人的答案边琢磨终于琢磨出来了,说下我的思路吧: 首先,我们需要用到两个数组,一个用来进行乘法的计算,一个用来做进位数的存储。需要用到2个循环控制变量,一个用来控制乘法的次数,一个用来控制进行乘法运算的数组下标,我称之为最高位。第一个数组好处理,只需要进行乘法运算,但第二个就有点麻烦,因为阶乘一旦大起来,存储的进位就可能大于10,100,所以对进位数也要进行处理,这里一开始我用的while循环,
2022-10-05 17:37:41
426
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人