在数学中的矩阵论裡，**置换矩阵**（英語：）是一种系数只由0和1组成的方块矩阵。置换矩阵的每一行和每一列都恰好有一个1，其余元素都是0。在线性代数中，每个*n*阶的置换矩阵都代表了一个对*n*个元素（*n*维空间的基）的置换。当一个矩阵乘上一个置换矩阵时，所得到的是原来矩阵的横行（置换矩阵在左）或纵列（置换矩阵在右）经过置换后得到的矩阵。

严格定义
----

每个*n*元置换都对应着唯一的一个置换矩阵。设π 为一个*n*元置换：

\pi :\lbrace 1,\ldots ,n\rbrace \to \lbrace 1,\ldots ,n\rbrace 
给出其映射图：

{\displaystyle {\begin{bmatrix}1&2&\cdots &n\\\pi (1)&\pi (2)&\cdots &\pi (n)\end{bmatrix}}}
它对应的*n × n*的置换矩阵*P*π是：在第*i*横行只有π(*i*)位置上系数为1，其余为0。即可以写做：

{\displaystyle P\_{\pi }={\begin{bmatrix}\mathbf {e} \_{\pi (1)}\\\mathbf {e} \_{\pi (2)}\\\vdots \\\mathbf {e} \_{\pi (n)}\end{bmatrix}}}
其中每个{\mathbf e}\_{j}表示正则基中的第*j*个，也就是一个左起第*j*个元素为1，其余都是0的*n*元横排数组。

由于单位矩阵是

I={\begin{bmatrix}{\mathbf e}\_{1}\\{\mathbf e}\_{2}\\\vdots \\{\mathbf e}\_{n}\end{bmatrix}}
置换矩阵也可以定义为单位矩阵的某些行和列交换后得到的矩阵。

性质
--

对两个*n*元置换π 和 σ的置换矩阵*P*π 和*P*σ，有

{\displaystyle P\_{\pi }P\_{\sigma }=P\_{\sigma \circ \pi }}
一个置换矩阵*P*π 必然是正交矩阵（即满足P\_{{\pi }}P\_{{\pi }}^{{T}}=I），并且它的逆也是置换矩阵：

P\_{{\pi }}^{{-1}}=P\_{{\pi ^{{-1}}}}=P\_{{\pi }}^{{T}}
用置换矩阵P\_{{\pi }}右乘一个列向量 **g**所得到的是 **g** 的系数经过置换后的向量：

P\_{\pi }{\mathbf {g}}={\begin{bmatrix}{\mathbf {e}}\_{{\pi (1)}}\\{\mathbf {e}}\_{{\pi (2)}}\\\vdots \\{\mathbf {e}}\_{{\pi (n)}}\end{bmatrix}}{\begin{bmatrix}g\_{1}\\g\_{2}\\\vdots \\g\_{n}\end{bmatrix}}={\begin{bmatrix}g\_{{\pi (1)}}\\g\_{{\pi (2)}}\\\vdots \\g\_{{\pi (n)}}\end{bmatrix}}.
用置换矩阵P\_{{\pi }}左乘一个行向量 **h** 所得到的是 **h** 的系数经过置换后的向量：

{\displaystyle \mathbf {h} P\_{\pi }={\begin{bmatrix}h\_{1}\;h\_{2}\;\dots \;h\_{n}\end{bmatrix}}{\begin{bmatrix}\mathbf {e} \_{\pi (1)}\\\mathbf {e} \_{\pi (2)}\\\vdots \\\mathbf {e} \_{\pi (n)}\end{bmatrix}}={\begin{bmatrix}h\_{\pi ^{-1}(1)}\;h\_{\pi ^{-1}(2)}\;\dots \;h\_{\pi ^{-1}(n)}\end{bmatrix}}}

置换矩阵与置换
-------

设*Sn*是n次对称群，由于*n*置换一共有*n*! 个，*n*阶的置换矩阵也有*n*! 个。这*n*! 个置换矩阵构成一个关于矩阵乘法的群。这个群的单位元就是单位矩阵。设*A*是所有*n*阶的置换矩阵的集合。映射*S**n* → A ⊂ GL(*n*, **Z**2)是一个群的忠实表示。

对一个置换σ，其对应的置换矩阵*P*σ是将单位矩阵的横行进行 σ 置换，或者将单位矩阵的横行进行 σ−1 置换得到的矩阵。 

置换矩阵是双随机矩阵的一种。伯克霍夫-冯·诺伊曼定理说明每个双随机矩阵都是同阶的置换矩阵的凸组合，并且所有的置换矩阵构成了双随机矩阵集合的所有端点。

置换矩阵*P*σ的迹数等于相应置换σ的不动点的个数。设 *a*1、*a*2、……、*a**k* 为其不动点的序号，则***e****a*1、***e****a*2、……、***e****a**k* 是*P*σ的特征向量。

由群论可以知道，每个置换都可以写成若干个对换的复合。由此可知，置换矩阵*P*σ都可以写成若干个表示两行交换的初等矩阵的乘积。*P*σ的行列式就等于 σ 的符号差。

例子
--

对应于置换π = (1 4 2 5 3)的置换矩阵*P*π 是

P\_{\pi }={\begin{bmatrix}{\mathbf {e}}\_{{\pi (1)}}\\{\mathbf {e}}\_{{\pi (2)}}\\{\mathbf {e}}\_{{\pi (3)}}\\{\mathbf {e}}\_{{\pi (4)}}\\{\mathbf {e}}\_{{\pi (5)}}\end{bmatrix}}={\begin{bmatrix}{\mathbf {e}}\_{{1}}\\{\mathbf {e}}\_{{4}}\\{\mathbf {e}}\_{{2}}\\{\mathbf {e}}\_{{5}}\\{\mathbf {e}}\_{{3}}\end{bmatrix}}={\begin{bmatrix}1&0&0&0&0\\0&0&0&1&0\\0&1&0&0&0\\0&0&0&0&1\\0&0&1&0&0\end{bmatrix}}.
给定一个向量 **g**，

P\_{\pi }{\mathbf {g}}={\begin{bmatrix}{\mathbf {e}}\_{{\pi (1)}}\\{\mathbf {e}}\_{{\pi (2)}}\\{\mathbf {e}}\_{{\pi (3)}}\\{\mathbf {e}}\_{{\pi (4)}}\\{\mathbf {e}}\_{{\pi (5)}}\end{bmatrix}}{\begin{bmatrix}g\_{1}\\g\_{2}\\g\_{3}\\g\_{4}\\g\_{5}\end{bmatrix}}={\begin{bmatrix}g\_{1}\\g\_{4}\\g\_{2}\\g\_{5}\\g\_{3}\end{bmatrix}}.

推广
--

置换矩阵概念的一个推广是将方阵的情况推广到一般矩阵的情况：

一个*m*×*n*的0-1矩阵 *P* 是置换矩阵当且仅当 P\cdot P^{T}=I\_{m}
这时一个0-1矩阵是置换矩阵当且仅当它的每一行恰有一个1，每一列至多有一个1。

置换矩阵概念的另一个推广是将每行的1变为一个非零的实数：

一个*n*阶的方块矩阵 *P* 是置换矩阵当且仅当其每一行与每一列都恰好只有一个系数不为零。
这时的置换矩阵*P*可以看做由0和1组成的置换矩阵*Q*与一个对角矩阵相乘的结果。

参见
--

* 变号矩阵
* 广义置换矩阵

参考资料
----

* 张贤达.. 清华大学出版社. 2004 （中文（中国大陆））.

外部链接
----

* 左光纪，置换矩阵的组合合成及其图表示
* 0-1矩阵与置换矩阵[永久]
* 置换矩阵（英文）
* 置换矩阵介绍（英文）