Python高斯消除矩阵


Posted in Python onJanuary 02, 2019

高斯消除矩阵

#! /usr/bin/env python
# -*- coding: utf-8 -*-
#
def pprint(A):
  for i in A:
    print(i)
  print("")
data = [
  [1, 2, 1, 2],
  [3, 8, 1, 12],
  [0, 4, 1, 2]
]
n = len(data)
print("输入数据")
pprint(data)
for i in range(n):
  print("第{}次操作".format(i))
  maxE = abs(data[i][i])
  # 最大值在第几行
  maxRow = i
  for k in range(i + 1, n):
    if abs(data[k][i] > maxE):
      maxE = abs(data[k][i])
      maxRow = k
  # 当前行交换最大的行
  for k in range(i, n + 1):
    data[maxRow][k], data[i][k] = data[i][k], data[maxRow][k]
  print("当前行交换最大的行 交换结果")
  pprint(data)
  # 改0
  for k in range(i + 1, n):
    c = -data[k][i] / data[i][i]
    print(-data[k][i] ,"/", data[i][i])
    for j in range(i, n + 1):
      if i == j:
        data[k][j] = 0
      else:
        data[k][j] += c * data[i][j]
  print("改0结果")
  pprint(data)
# 化简后结果
print("化简结果")
pprint(data)
# 结果计算
result = [0 for i in range(n)]
for i in range(n - 1, -1, -1):
  result[i] = data[i][n] / data[i][i]
  for k in range(i - 1, -1, -1):
    data[k][n] -= data[k][i] * result[i]
print(result)

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Python 相关文章推荐
用python删除java文件头上版权信息的方法
Jul 31 Python
python在windows下实现ping操作并接收返回信息的方法
Mar 20 Python
Python字符串格式化
Jun 15 Python
Python sqlite3事务处理方法实例分析
Jun 19 Python
python 实现多线程下载视频的代码
Nov 15 Python
python内置模块collections知识点总结
Dec 19 Python
django2.2 和 PyMySQL版本兼容问题
Feb 17 Python
推荐8款常用的Python GUI图形界面开发框架
Feb 23 Python
如何在sublime编辑器中安装python
May 20 Python
Python描述数据结构学习之哈夫曼树篇
Sep 07 Python
python爬虫看看虎牙女主播中谁最“顶”步骤详解
Dec 01 Python
一文搞懂如何实现Go 超时控制
Mar 30 Python
python遍历小写英文字母的方法
Jan 02 #Python
Python最小二乘法矩阵
Jan 02 #Python
Centos部署django服务nginx+uwsgi的方法
Jan 02 #Python
Python 一句话生成字母表的方法
Jan 02 #Python
使用python将请求的requests headers参数格式化方法
Jan 02 #Python
浅谈python requests 的put, post 请求参数的问题
Jan 02 #Python
Python中出现IndentationError:unindent does not match any outer indentation level错误的解决方法
Apr 18 #Python
You might like
用Socket发送电子邮件
2006/10/09 PHP
php下正则来匹配dede模板标签的代码
2010/08/21 PHP
迅速确定php多维数组的深度的方法
2014/01/07 PHP
php使用正则过滤js脚本代码实例
2014/05/10 PHP
php提交表单发送邮件的方法
2015/03/20 PHP
PHP、Java des加密解密实例
2015/04/27 PHP
PHP中substr函数字符串截取用法分析
2016/01/07 PHP
JavaScript日历实现代码
2010/09/12 Javascript
JS Range HTML文档/文字内容选中、库及应用介绍
2011/05/12 Javascript
js获取页面description的方法
2015/05/21 Javascript
jquery实现顶部向右伸缩的导航区域代码
2015/09/02 Javascript
js获取form表单所有数据的简单方法
2016/08/18 Javascript
canvas时钟效果
2017/02/16 Javascript
浅谈在vue中用webpack打包之后运行文件的问题以及相关配置方法
2018/02/21 Javascript
bootstrap select2插件用ajax来获取和显示数据的实例
2018/08/09 Javascript
vue项目中使用Svg的方法
2018/10/24 Javascript
解决Vue打包上线之后部分CSS不生效的问题
2019/11/12 Javascript
[06:20]2015国际邀请赛第三日top10
2015/08/08 DOTA
Python爬虫模拟登录带验证码网站
2016/01/22 Python
Python图像灰度变换及图像数组操作
2016/01/27 Python
django站点管理详解
2017/12/12 Python
简单了解python高阶函数map/reduce
2019/06/28 Python
python flask几分钟实现web服务的例子
2019/07/26 Python
python3实现的zip格式压缩文件夹操作示例
2019/08/17 Python
Centos7 下安装最新的python3.8
2019/10/28 Python
Python打印特殊符号及对应编码解析
2020/05/07 Python
自定义html标记替换html5新增元素
2008/10/17 HTML / CSS
英国鞋网:Rubber Sole
2020/03/03 全球购物
数据库的约束含义
2012/09/09 面试题
心得体会范文
2014/01/04 职场文书
小学生安全保证书
2014/02/01 职场文书
中学生自我鉴定
2014/02/04 职场文书
2014年村支部书记四风对照检查材料思想汇报
2014/10/02 职场文书
交通事故协议书范文
2014/10/23 职场文书
西安事变观后感
2015/06/12 职场文书
暂住证明怎么写
2015/06/19 职场文书