四阶行列式的计算方法计算

1428人阅读
ACM行列式计算
计算行列式的基本方法就是把矩阵化成上三角或下三角,然后观察对角线的元素,如果其中有个一元素为0则整体为0,否则行列式的值就是对角线上各个元素的乘积。
& & &先说明一下行列式的几个性质:
& & 举个例子
要将此行列式转化成上三角,根据以上行列式的性质,要将2,3,4行的第一列数字转化成0时,分别要加上第一列的-2/3倍,-3/4倍,-2/3倍;
但是我们不想乘上分数,因为计算机计算的时候会造成一定的精度误差。所以我们采用另一种方式,利用最大公约数(gcd)来讲行列式装换成上三角行列式
& & & & 以第一行和第二行为例
3=2*1+1 & ------& &2=1*2+0
如上图前两行,第一步讲3,2根据gcd的3=2*1+1
& ------& &&2=1*2+0
&转化成1,2,此时还没有化成0,继续转化2=1*2+1
& ------& &&1=1*1+0
讲1,2转化成1,0,转化完成;
检查变化次数,根据上面行列式的性质,如果为偶数次,行列式D=D',如果是奇数次D=-D'&
一二行的第一个数转化好之后,就转化1,3行的,一次类推
给出行列式代码以供参考:
#include&iostream&
#include&cstdio&
#include&cmath&
typedef __int64
lld a[205][205];
lld N,MOD;
void solved()
lld ans=1;
for(int i=0;i&N;i++)//当前行
for(int j=i+1;j&N;j++)//当前之后的每一行,因为每一行的当前第一个数要转化成0(想想线性代数中行列式的计算)
int x=i,y=j;
while(a[y][i])//利用gcd的方法,不停地进行辗转相除
lld t=a[x][i]/a[y][i];
for(int k=i;k&N;k++)
a[x][k]=(a[x][k]-a[y][k]*t)%MOD;
swap(x,y);
if(x!=i)//奇数次交换,则D=-D'整行交换
for(int k=0;k&N;k++)
swap(a[i][k],a[x][k]);
if(a[i][i]==0)//斜对角中有一个0,则结果为0
ans=ans*a[i][i]%MOD;
if(sign!=0)
printf(&%I64d\n&,ans);
int main()
scanf(&%d&,&t);
while(t--)
scanf(&%I64d%I64d&,&N,&MOD);
for(int i=0;i&N;i++)
for(int j=0;j&N;j++)
scanf(&%I64d&,&a[i][j]);
贴上一个题目:
时间限制(普通/Java) : 5000 MS/ 10000 MS & & & && 运行内存限制 : 65536 KByte
总提交 : 23 & & & && & 测试通过 : 6&
There are two assignments(# means Rook):
&&&&&&&&*#
&&&&&&&&#*
&&&&&&&&#*
&&&&&&&&*#
First assignment's value is 2*9=18,and there are one Z-Pair,so it's negative.
Second assignment's value is 4*8=32,and there are no Z-pair,so it's positive.
So the total value S= -18 + 32 =14,and S%P=14%10=4
So the total value S= -18 + 32 =14,and S%P=14%10=4
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:18092次
排名:千里之外
原创:26篇
转载:14篇
(1)(1)(3)(3)(2)(2)(6)(2)(1)(1)(4)(1)(1)(2)(2)(1)(1)(4)(3)您的位置: >
> 行列式计算器 v2.0绿色版
行列式计算器 v2.0绿色版
软件大小:71K
软件语言:简体中文
软件类型:国产软件
软件授权:免费软件
更新时间:
软件类别:计算器类
软件官网:
应用平台:Windows7, WinVista, Win2003, WinXP, Win2000
网友评分:7.1分
行列式计算器是一款绿色小巧、简单实用的计算工具,纯绿色版,即下即用,能够用来计算N阶行列式,用户只需输入行列式即可计算出结果。具体使用方法:1、下载解压,双击exe文件打开行列式计算工具;2、在文本框中输入行列式(每行各个元素用空格分隔);3、点击“计算”按纽,在下面的文本框中得到结果。行列式介绍:行列式在数学中,是由解线性方程组产生的一种算式。行列式的特性可以被概括为一个多次交替线性形式,这个本质使得行列式在欧几里德空间中可以成为描述“体积”的函数。
行列式计算器 v2.0绿色版
高速下载通道
其它下载地址
感谢您对多多软件的信任,请把这份信任分享给您的朋友!
您的评论需要经过审核才能显示!
软件排行榜
3.16M / 简体中文 /7.9分
618K / 简体中文 /8分
4.07M / 简体中文 /7.5分
706K / 简体中文 /6分
2.12M / 简体中文 /6分
2.27M / 简体中文 /6分
374K / 简体中文 /7.5分
13M / 简体中文 /6分
920K / 简体中文 /7.8分
137K / 简体中文 /6分
Copyright (C)
. All rights reserved.【图文】行列式的性质与计算_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
评价文档:
行列式的性质与计算
上传于||暂无简介
大小:829.50KB
登录百度文库,专享文档复制特权,财富值每天免费拿!
你可能喜欢}

我要回帖

更多关于 行列式的计算方法例题 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信