- 博客(11)
- 收藏
- 关注
原创 tst12_4
根据eg12_3 的写法,会不停的push() pop(), 最后达到终点时整个stack 完全是空的。我个人写法里并未直接弹出,但是stack内的元素都是,完全连续的,不需要指针跳转。既然stack里面没有元素,怎么用指针成员获取前趋点呢?从上到下,从左到右,累计右多少个节点,即为最少需要的空间。为什么12.3 的例题 不能用一个指针成员表示前置?先附上图,很直接的可以计算出queue需要多少的空间。也就是和最短路径,以及分岔路的数量有关。
2023-03-21 16:04:47
123
原创 tst12_5_1
因为探索完A层即可弹出探索下一层B, 只需要最宽一层满足,其他层级都满足。环形队列的最少元素数量,即为时序上最宽出元素数量即可。环形队列的检测和空队、满队的测试警告用数量标记法。为了检验该想发,编写程序验证即可。全程没有警告,OK成功。
2023-03-21 16:03:13
126
原创 test_11_6
由于 n % 2 只有两种结果,当n%2 == 1 时,power(x, 1) = 1, 当 n % 2 == 0 时, power(x, 0) = 1;, 并且需要n 越来越小, 那么就可以需要 n = n / 2, 复原时用 mypow(x, n/2) * mypow(x,n/2)即可。很明显是发生了倒序导致的,循环会把先出来的值一点点左移进位,而余数实际上是从低位到高位出来的,所以发生了错误,, 思考一下如果n不是2的正整数幂该怎么办, 并分别用循环和递归实现该算法。, 以此类推该算法的复杂度为。
2023-03-15 11:29:08
171
原创 test_8_3_2
递归等价于循环,所以必须有个base case,也就是说递归必须有个输入作为判断条件.将当前正在经行交换的序号 n 作为输入,如果没到最后一个,就挨个交换,到了最后一个就直接打印数组,返回即可。这个题目咋一看,确实写不来,但是没关系吗,可以换个简单思路再去试一试、理论上递归与循环是等价的,用循环的方式先试一试。很明显依旧有影响,目标是打印后接触者一层的交换,保留更上的递归层不变,所以采用递归交换后反向交换。开始,中间的交换过程对最终产生了影响,所有要消除这个问题,即在打印后要将数据复原,
2023-03-15 11:28:33
105
原创 test_12_3_3
问题就出在回溯的最后一步,他会把死区入口点也当作死区,导致这个问题的源头在于我手动将死区终点赋值为1,打断了递归,相当于在死区内又用另外一个递归。这个地图比较奇怪的一点是走到了死区终点,居然在整个大死区内还有一个未访问点,安装前进与回溯的要求,回溯部分区域后会再次访问未访问点。设置这个迷宫图是因为死区终点情况最复制,可以从4个方向返回,但是为了包装回溯的正确性,必须是。只有当前这点为0,周围要么到了边界,要么非0,那么就置当前点为死路顶点。,同时得到的第二个信息,前进是顺时针,回溯就是逆时针。
2023-03-15 11:20:56
99
原创 WSL2+python下各种折腾
wsl2 + cuda + cudnn+ wxpython + pyQt5 + + pytorch-gpu + tensorflow-fgpu + jaxgpu
2022-10-10 17:29:58
2119
5
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人