![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
方法论
文章平均质量分 93
papaofdoudou
我的藏经阁
展开
-
初等数论中整除性规律证明
依稀记的学习初等数学整数性质的时候,只学到了能够被2,3,5整除的整数的特点,但是根据网上搜索到的资料,似乎这个规则可扩充到除了7之外的所有十以内的自然数,下面这些规则可以用于检验一个整数是否能够被另一个整数整除,以及帮助我们找到一些特殊的整数。简单证明一下,需要用到四个引理,如下:引理1:假设有两个整数a和b,以及除数c,那么说:这句话的意思是,两个整数的积对一个数取模,等于这两个数字分别对这个数取模结果的积,再对这个数取模。原创 2023-04-16 23:19:02 · 1622 阅读 · 0 评论 -
数学体操之牛顿数值法解方程的程序和图解
牛顿法的主要优点是,它在每次迭代中都收敛在的非常快,在实践中被证明比其他迭代方法更快,但是它也有缺点:1,就像例子中看到的,当函数具有多个局部零点时,算法的初始值可能导致收敛到错误的根。2.算法需要有解析式表达的导数计算方法。3.可能会发生根跳转,得不到预期的结果。4.在局部极值附近可能会发生振荡导致收敛变慢,无法跳脱。5.拐点可能导致算法实效。解方程是一种近似数学,虽然有的时候能够获得方程的解析式,但大多数的时候(5次及以上的普通方程)是没有解析式的,这个时候只能通过数值解法得到近似解。原创 2023-04-16 13:59:49 · 800 阅读 · 0 评论 -
代码重构的原则以及要考虑的问题(持续更新)
0.重复代码是万恶之源,消除重复代码。1.软件开发的时候会持续面对两类问题,重构和新功能开发,保证这两个行为的互斥性,在功能开发的时候,不要重构,通过升级测试用例衡量你的功能开发进度。在重构的时候,只管改变程序结构,不要添加新的功能,并锁定你的测试用例,重构的结果是在相同的用例集上对齐之前的测试结论,而不是让测试结果变得更好(更好,说明代码原本存在不确定性因素)或者更差(说明重构导致回归了)。原创 2023-04-04 21:01:52 · 922 阅读 · 0 评论 -
图论之毕克定理证明
毕克定理是指一个计算点阵中顶点在格点上的多边形面积公式,该公式可以表示为S=N+L÷2-1,其中N表示多边形内部的点数,L表示多边形落在格点边界上的点数,S表示多边形的面积。公式默认一个小正方形边长为1,即面积为1,若一个格点正方形边长为2(面积为4)时,需要在原有公式的基础上乘4.1.定理大概描述:给定一个网格,每个格子由边长为1的单位正方形组成。原创 2023-04-02 23:44:36 · 7688 阅读 · 0 评论 -
zlramfs模块实现
参考ramfs实现一个Linux ramfs内核模块,作为Linux文件系统分析的一个脚手架。编译:加载:/proc/filesystems查看文件系统注册信息:zlramfs的后端设备为NONE,说明这个文件系统不需要后端磁盘作为介质。原创 2023-04-02 20:12:23 · 197 阅读 · 0 评论 -
The Kernel Newbie Corner: Kernel and Module Debugging with gdb
This week, we’re going to demonstrate how to do some very basic debugging of both your running kernel and a loaded module using the gdb debugger running in user space. But before you get too involved here, you must review last week’s column so that, by转载 2023-02-16 22:30:50 · 145 阅读 · 0 评论 -
分析和解决问题的心得总结
如果从外延的角度来分析系统API的定义,你会发现和我们通常看到的软件栈层次结构恰恰相反。越高层的靠近应用的API,其包含的场景内容语义内涵越丰富,相应外延越小,只能适用于特定场景。或者说,所有的应用高层API都是基于底层API实现的,但是底层API可以实现多种应用场景的高层API,并不局限于一种,逻辑结构欧拉图如下图所示:逻辑有些类似于生物学分类按照:界-门-纲-目-科-属-种 将生命类群进行命名和划分。原创 2023-01-09 23:28:21 · 1962 阅读 · 0 评论