第 1 章 线性方程组与消元法
线性方程组是线性代数的重要研究对象, 消元法是求解线性方程组最基本的方
法. 学习线性代数, 首先从消元法开始.
1.1 线性方程组简介
所谓线性方程是指未知量的次数都是一次的方程, 线性方程组就是有限个线性方
程的群组, 如
8>
>>><>
>>>:
2x1 + 3x2 + 4x3 = 5;
1
2x1 +
1
4x3 =
1
5;
8x1 . 2x2 + 7x3 = 6;
( 3x + 4y + 5z = 6;
6x . 8y + 9z = 0:
一般的n 元线性方程组可表示为
8>
>>><>
>>>:
a11x1 + a12x2 +¢ ¢ ¢+ a1nxn = b1;
a21x1 + a22x2 +¢ ¢ ¢+ a2nxn = b2;
¢ ¢ ¢ ¢ ¢ ¢
am1x1 +am2x2 +¢ ¢ ¢+amnxn =bm;
(I)
其中 x1; x2; ¢ ¢ ¢ ; xn 是未知量, aij 和 bi 都是数, 称 aij 是 xj 的系数, b1;b2; ¢ ¢ ¢ ; bm 是
常数项.
m 可以等于 n, 也可以大于或小于 n. 我们约定:系数为 0 的项可以不写.
一组数 (c1; c2; ¢ ¢ ¢ ; cn) 称为线性方程组 (I) 的解, 如果用 x1 = c1; x2 = c2; ¢¢ ¢ ;
xn = cn 代入 (I), 则 (I) 的每个式子都成为恒等式.
例如, (.18; 0; 12) 是线性方程组
( 3x1 + 4x2 + 5x3 = 6;
6x1 + 8x2 + 9x3 = 0
的一个解.
一个线性方程组可以有解, 也可以没有解, 可能只有一个解, 也可能有无穷多个
解. 例如, 线性方程组
(2x + 3y = 1;
2x + 3y = 2
显然没有解, 而线性方程组
(2x + 3y = 1;
4x + 6y = 2
则有无穷多个解, 因为, 对任意数 c, μ1 . 3c
2 ; c. 都是它的解.
称两个线性方程组是同解的, 如果它们的解的集合相等. 求解线性方程组的过程
就是逐步找出与之同解的且更易于求解的线性方程组的过程. 显然, 最容易求解的线
性方程组是 8>
>>><>
>>>:
x1 =c1;
x2 =c2;
¢ ¢ ¢ ¢ ¢ ¢
xn =cn;
它有唯一解 (c1; c2; ¢ ¢ ¢ ; cn). 稍微复杂一点的下列形式的线性方程组也是容易求解的:
8>
>>><>
>>>:
a11x1 + a12x2 + ¢ ¢ ¢ + a1nxn = b1;
a22x2 + ¢ ¢ ¢ + a2nxn = b2;
¢ ¢ ¢ ¢ ¢ ¢
annxn = bn;
其中 aii 6= 0; i = 1; 2; ¢ ¢ ¢ ; n, 由最后一个方程解得 xn = bn
ann
, 代入倒数第二个方程解
得 xn.1 = bn.1
an.1;n.1 .
an.1;nbn
an.1;n.1ann
, 如此继续下去即可求得方程组的唯一解. 更一般
地, 下面的称为阶梯形的线性方程组也是立即可以知道其解的情况的:
8>
>>>>>>>>>>>>><>
>>>>>>>>>>>>>:
a11x1+a12x2 + ¢ ¢ ¢ + a1nxn =b1;
a22x2 + ¢ ¢ ¢ + a2nxn =b2;
¢ ¢ ¢ ¢ ¢ ¢
arrxr + ¢ ¢ ¢ + arnxn =br;
0=br+1;
0=0;
¢ ¢ ¢ ¢ ¢ ¢
0=0;
(II)
其中 aii 6= 0; i = 1; 2; ¢ ¢ ¢ ; r, 其解的情况为:
(1) 方程组 (II) 有解的充分必要条件是 br+1 = 0;
(2) 方程组 (II) 有唯一解的充分必要条件是 br+1 = 0 且 r = n, 此时, 其唯一解由
上面的形式给出;
(3) 方程组 (II) 有无穷多个解的充分必要条件是 br+1 = 0 且 r < n, 此时, 当未知
量 xr+1; ¢ ¢ ¢ ; xn 任取一组数 (cr+1; ¢ ¢ ¢ ; cn) 时, 代入 (II) 即可唯一地解出x1; x2; ¢ ¢ ¢ ; xr.
所以, 称 xr+1; ¢ ¢ ¢ ; xn 为自由未知量. 这样的解的表达式称为方程组 (II) 的一般解.
上面的阶梯形方程组 (II) 是以最后 n . r 个未知量 xr+1; ¢ ¢ ¢ ; xn 为自由未知量,
有时自由未知量不一定出现在最后, 这样的方程组也称为是阶梯形的, 例如, 下面的
线性方程组也是阶梯形的, x2 是自由未知量:
( 2x1 + 3x2 + x3 = 1;
x3 = 1:
也就是说, 方程组 (II) 的每个台阶都是一步, 而一般的阶梯形的台阶可能不止一步, 只
要认清自由未知量, 一般的阶梯形的线性方程组的解的情况与方程组 (II) 的解的情况
是类似的.
但是, 为了书写简单, 我们一般都假设阶梯形方程组的自由未知量都出现在最后.
由于阶梯形线性方程组总是可以求解的, 所以我们的问题是, 如何把一个线性方
程组化成一个与之同解的阶梯形线性方程组. 1.2 节的高斯消元法提供了一个有效的
方法.
1.2 线性方程组的初等变换与高斯消元法
线性方程组的初等变换是可以把线性方程组变成同解的线性方程组的一种变换,
是求解线性方程组的一个基本的、有效的方法.
线性方程组的初等变换是指下列三类变换:
(1) 用一个非零数乘方程组中的某一个方程;
(2) 交换方程组中的某两个方程;
(3) 把方程组中的一个方程的某个倍数加到另一个方程上去.
定理 1.2.1 对线性方程组作初等变换后得到的方程组与原方程组同解.
证明 设线性方程组为
8>
>>><>
>>>:
a11x1+ a12x2 + ¢ ¢ ¢ + a1nxn =b1;
a21x1+ a22x2 + ¢ ¢ ¢ + a2nxn =b2;
¢ ¢ ¢ ¢ ¢ ¢
am1x1+am2x2 + ¢ ¢ ¢ + amnxn =bm:
(I)
(1) 用一个非零数 c 乘方程组 (I) 中的某一个方程, 例如乘第一个方程, 得方程组
8>
>>>><>
>>>>:
ca11x1+ca12x2 + ¢ ¢ ¢+ca1nxn = cb1;
a21x1+ a22x2 + ¢ ¢ ¢+ a2nxn = b2;
¢ ¢ ¢ ¢ ¢ ¢
am1x1+ am2x2 + ¢ ¢ ¢+ amnxn = bm:
(II)
显然 (I) 与 (II) 同解.
(2) 交换方程组 (I) 中的某两个方程的位置, 不妨设交换前两个方程的位置, 得方
程组
8>
>>>>>>>><>
>>>>>>>>:
a21x1+ a22x2 + ¢ ¢ ¢+ a2nxn = b2;
a11x1+ a12x2 + ¢ ¢ ¢+ a1nxn = b1;
a31x1+ a32x2 + ¢ ¢ ¢+ a3nxn = b3;
¢ ¢ ¢ ¢ ¢ ¢
am1x1+am2x2 + ¢ ¢ ¢+amnxn = bm:
(III)
易见 (I) 与 (III) 也同解.
(3) 把方程组 (I) 中的一个方程的某个倍数加到另一个方程上去. 交换方程的位
置, 不妨设, 把第二个方程的 d 倍加到第一个方程上去, 得方程组
8>
>>>><>
>>>>:
(da21 + a11)x1+(da22 + a12)x2 +¢ ¢ ¢ + (da2n + a1n)xn = db2 +b1;
a21x1 +a22x2 + ¢ ¢ ¢ +a2nxn = b2;
¢ ¢ ¢ ¢ ¢ ¢
am1x1 +am2x2 + ¢ ¢ ¢ +amnxn = bm:
(IV)
易见 (I) 的解一定是 (IV) 的解. 由于 (I) 可以由 (IV) 把其第二个方程的 .d 倍加到第
一个方程上去来得到, 所以类似地得到 (IV) 的解也一定是 (I) 的解, 因而 (I) 与 (IV)
同解. *
有了这个定理的保证, 我们知道了, 对线性方程组作初等变换既不会丢掉解, 也
不会增加解.
我们的一个直觉是, 线性方程组的变元越少, 这个方程组越好解. 这里的变元少
是指未知量 x1; x2; ¢ ¢ ¢ ; xn 出现在方程组中的总次数少. 事实上, 一个未知量在某个线
性方程组中是否出现是看其系数是否为零. 高斯消元法的基本思想是通过线性方程
组的初等变换把一些系数变成零, 从而使变元减少, 最终化成阶梯形线性方程组.
下面, 我们来写出高斯消元法解线性方程组的步骤.
设线性方程组为
8>
>>><>
>>>:
a11x1+ a12x2 + ¢ ¢ ¢+ a1nxn = b1;
a21x1+ a22x2 + ¢ ¢ ¢+ a2nxn = b2;
¢ ¢ ¢ ¢ ¢ ¢
am1x1+am2x2 + ¢ ¢ ¢+amnxn = bm:
交换方程的位置, 不妨设 a11 6= 0. 分别用第一个方程的 .
a21
a11
倍, ¢ ¢ ¢ ;.
am1
a11
倍
加到第二个方程, ¢ ¢ ¢ , 第 m 个方程上去, 得方程组
8>
>>><>
>>>:
a11x1+ a12x2+ a13x3 + ¢ ¢ ¢+ a1nxn = b1;
a022x2+ a023x3 + ¢ ¢ ¢+ a02nxn = b02;
¢ ¢ ¢ ¢ ¢ ¢
a0m2x2+a0m3x3 + ¢ ¢ ¢+a0mnxn = b0m:
若 a022; ¢ ¢ ¢ ; a0m2 都为零, 则依次看 a023; ¢ ¢ ¢ ; a0m3 是否都为零. 如果a022; ¢ ¢ ¢ ; a0m2 不全
为零, 则交换方程的顺序, 不妨设 a022 6= 0. 类似上面的讨论, 如此继续下去, 最后得到
一个阶梯形的线性方程组, 从而可以求得原线性方程组的解.
现在, 来看两个用高斯消元法解线性方程组的例子.
例 1 解下列线性方程组:
8>
><>
>:
x1 +2x2 + x3 = .1; ①
x1 +3x2 = 3; ②
2x1 +5x2 + x3 = 2; ③
解 ① £ (.1) + ②, ① £ (.2) + ③ 得
8>
><>
>:
x1 + 2x2 + x3 =.1; ①
x2 . x3 =4; ④
x2 . x3 =4: ⑤
④ £ (.1) + ⑤ 得
8>
><>
>:
x1 + 2x2 + x3 =.1; ①
x2 . x3 =4; ④
0=0: ⑥
解得 x1 = .3x3 . 9; x2 = x3 + 4, 因而方程组的一般解是
(.3c . 9; c + 4; c); 其中 c 是任意数: *
例 2 解下列线性方程组:
8>
><>
>:
2x1+5x2.x3 = 3; ①
x1+2x2+x3 = 4; ②
3x1+ 7x2 = 8: ③
解 交换 ①, ② 的顺序得
8>
><>
>:
x1+2x2+x3 = 4; ②
2x1+5x2.x3 = 3; ①
3x1+ 7x2 = 8: ③
② £ (.2) + ①, ② £ (.3) + ③ 得
8>
><>
>:
x1+2x2 +x3 = 4; ②
x2. 3x3 = .5; ④
x2. 3x3 = .4: ⑤
④ £ (.1) + ⑤ 得 8>
><>
>:
x1+2x2 +x3 = 4; ②
x2. 3x3 = .5; ④
0= 1: ⑥
所以, 方程组无解.
给定一个线性方程组, 理论上用高斯消元法我们总是可以知道它是否有解, 若有
解还可以求出它的解的. 当未知量的个数不是很多时, 高斯消元法确实是很有效的,
例如在计算机上可以很简单地实现. 但是, 对未知量的个数很多, 很复杂的线性方程
组, 我们往往难以求出它的解, 只可以对它的解的性质进行一些讨论. 这时, 就需要更
高级的工具了.
习题
1. 用消元法解下列线性方程组:
(1) ( 2x .y= 0;
.x+ 2y= 3;
(3)8>
><>
>:
x2 .x3 = 2;
x1 .x2+ 2x3 = .2;
3x1+ 2x2+ 2x3 = 1;
(5)8>
><>
>:
x1+6x2. 4x3 = .1;
2x1 +x3 = 5;
3x1.2x2+ 3x3 = 6;
(2)8>
><>
>:
x1+ 2x2.x3 = 0;
x1 +x2+x3 = 1;
3x1+ 5x2+x3 = 3;
(4)8>><>
>:
x1. 2x2 .x3 = 1;
3x1 .x2. 3x3 = 2;
2x1 +x2. 2x3 = 3;
(6)8>
><>
>:
x1 +x2. 2x3 = 0;
x1. 2x2 +x3 = 0;
.2x1 +x2 +x3 = 0;