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实现的多线程http压力测试代码
Feb 08 Python
详解重置Django migration的常见方式
Feb 15 Python
PIL图像处理模块paste方法简单使用详解
Jul 17 Python
python使用sklearn实现决策树的方法示例
Sep 12 Python
Python语法之精妙的十个知识点(装B语法)
Jan 18 Python
基于Python实现人脸自动戴口罩系统
Feb 06 Python
记一次pyinstaller打包pygame项目为exe的过程(带图片)
Mar 02 Python
Python脚本去除文件的只读性操作
Mar 05 Python
Keras设置以及获取权重的实现
Jun 19 Python
Pycharm2020最新激活码|永久激活(附最新激活码和插件的详细教程)
Sep 29 Python
Python爬虫之Selenium鼠标事件的实现
Dec 04 Python
如何通过一篇文章了解Python中的生成器
Apr 02 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
CPU步进是什么意思?i3-9100F B0步进和U0步进区别知识科普
2020/03/17 数码科技
php开发工具有哪五款
2015/11/09 PHP
php设计模式之适配器模式原理、用法及注意事项详解
2019/09/24 PHP
javascript 面向对象编程基础:继承
2009/08/21 Javascript
仿新浪微博返回顶部的jquery实现代码
2012/10/01 Javascript
javascript重复绑定事件造成的后果说明
2013/03/02 Javascript
jQuery 获取URL的GET参数值的小例子
2013/04/18 Javascript
Javascript Objects详解
2014/09/04 Javascript
轻松创建nodejs服务器(3):代码模块化
2014/12/18 NodeJs
浅析JavaScript动画
2015/06/10 Javascript
JavaScript+canvas实现七色板效果实例
2016/02/18 Javascript
jquery分页插件jquery.pagination.js使用方法解析
2016/04/01 Javascript
jQuery CSS3自定义美化Checkbox实现代码
2016/05/12 Javascript
jQuery中$.ajax()方法参数解析
2016/10/22 Javascript
BootStrap框架个人总结(bootstrap框架、导航条、下拉菜单、轮播广告carousel、栅格系统布局、标签页tabs、模态框、菜单定位)
2016/12/01 Javascript
Nodejs高扩展性的模板引擎 functmpl简介
2017/02/13 NodeJs
Vue中的v-cloak使用解读
2017/03/27 Javascript
element-ui组件table实现自定义筛选功能的示例代码
2019/03/15 Javascript
Vue+elementUI实现多图片上传与回显功能(含回显后继续上传或删除)
2020/03/23 Javascript
Python解析excel文件存入sqlite数据库的方法
2016/11/15 Python
在 Python 应用中使用 MongoDB的方法
2017/01/05 Python
教大家玩转Python字符串处理的七种技巧
2017/03/31 Python
浅谈用Python实现一个大数据搜索引擎
2017/11/28 Python
python自动重试第三方包retrying模块的方法
2018/04/24 Python
python3处理含有中文的url方法
2018/05/10 Python
django输出html内容的实例
2018/05/27 Python
详解如何在Apache中运行Python WSGI应用
2019/01/02 Python
python 利用pandas将arff文件转csv文件的方法
2019/02/12 Python
如何在Python中实现goto语句的方法
2019/05/18 Python
Python MongoDB 插入数据时已存在则不执行,不存在则插入的解决方法
2019/09/24 Python
Top Villas美国:豪华别墅出租和度假屋
2018/07/10 全球购物
英国家用电器折扣网站:Electrical Discount UK
2018/09/17 全球购物
我的珠宝盒:Ma boîte à bijoux
2019/08/27 全球购物
语文教学随笔感言
2014/02/18 职场文书
逃课上网检讨书
2014/02/20 职场文书
借款民事起诉状范文
2015/05/19 职场文书