您当前位置: 首页 »

数学

分类目录归档: 数学

一些代码优化中的小技巧(表达式优化部分)

奇偶数判断优化

一般情况下判断奇偶数都是用

if (0 == a % 2)

但可以优化为:

if (0 == a & 1)

取偶与取奇

有时候需要对一些数进行取偶,那么代码可以优化为:

取偶:a += a&1
取奇:a += 1-(a&1)

2021-05-13 | | [奇葩类]求上进系列, 数学, 数据结构 & 算法, 编码技巧

一些代码优化中的小技巧(表达式优化部分)已关闭评论

【线性代数、分块矩阵】用图形的方法间接理解分块矩阵的转置

如图,左边的是分块矩阵(转置前),右边是分块矩阵转置后。之所以可以这样写,是因为矩阵关于的行数和列数中最大值的对角线进行互换元素。因此对于子矩阵这些个体来说,他们就可以写成右边的形式,但至于右边的形式展开后是否真的就等于左边的转置。其实理解起来也很简单。

首先,对于每个子矩阵来说,他们的转置方式(或性质)都和母矩阵A一样。即,没有一个子矩阵均是关于同一个平行的对角线互换元素。如果把母矩阵中的每个元素抽象成点,由此最外围的点构成的四边形进行折叠,即可得出形为A转置后将元素抽象成点的图像。证明下图中右边的式子就是A的转置。

 

 

img_20161003_150002

2016-10-03 | | 思考, 数学, 线性代数

【线性代数、分块矩阵】用图形的方法间接理解分块矩阵的转置已关闭评论

【线性代数、逆矩阵、困惑、笔记】逆矩阵变换的知其然不知其所以然

再看高教版线性代数中的逆矩阵变换的证明,突然看到了一个困惑点实在不知道如何想明白。

如下图红框框部分。如何能够证明,在矩阵两端左乘一个矩阵以后还能保持等号的意义?

如果通过设   Y1=A* AX (均为矩阵)      的方式去证明,似乎能够说明红框框中公式左乘的意义。但那又会不会有不成立的情况呢?

这本线性代数,看到这里时,我又反复回顾前面的一些例证:除了通过推到明确证明的公式或定理外,对于一些用归纳法证明的定理和公式“投机取巧”的成分很大,看来后面看完这本书,要找一本讲的相对清楚的补一下。

 

3

2016-10-03 | | 思考, 数学, 线性代数

【线性代数、逆矩阵、困惑、笔记】逆矩阵变换的知其然不知其所以然已关闭评论

【有向图、迭代、抽象、线性代数、数学】有向图用矩阵理论化计算可能路径

在数据结构和数学中,都有着有向图的理论路径计算和迭代。一下是线性代数中对有向图的一个抽象。

 

 

%e6%9c%89%e5%90%91%e5%9b%be

%e6%9c%89%e5%90%91%e5%9b%be1

 

 

 

 

可见, 如果需要枚举出某个断点到另一个断点的可能路径的话,那就是对A矩阵进行做幂计算。例如计算1号端点到4号断点4次中转以内的可能路径,那么只需要对A矩阵做四次幂运算(1,2,3,4),然后求和4种幂运算中的a14,即可得到可能的路径数。

2016-09-26 | | 思考, 数学, 数据结构 & 算法, 算法导论, 线性代数

【有向图、迭代、抽象、线性代数、数学】有向图用矩阵理论化计算可能路径已关闭评论