首页 > 代码库 > 【算法设计与分析基础】16、高斯消元法
【算法设计与分析基础】16、高斯消元法
package cn.xf.algorithm.ch06ChangeRule; import java.util.ArrayList; import java.util.List; import org.junit.Test; import cn.xf.util.GenericPair; /** * * 功能:高斯消元法,也就是多元数据矩阵,依次吧每列的其他行数据消去为0,然后求出一个元的解,然后就可以根据这个数据来递推出其他元的解 * @author xiaofeng * @date 2017年7月1日 * @fileName GaussianEliminationMethod.java * */ public class GaussianEliminationMethod { /** * 这个有缺陷,如果datas.get(i).get(i)为0,那么就会出错 * @param datas */ public void forwardElimination(List<List<Double>> datas) { if(datas.size() <= 0) { return; } //方程式消除数据 for(int i = 0; i < datas.size(); ++i) { //遍历所有行,以这一行,往后消除首项的参数 for(int j = i + 1; j < datas.size(); ++j) { //遍历后面的行,开始遍历 for(int k = datas.get(j).size() - 1; k >= i; --k) { //当前行的最后,往前遍历,然后把每行的对应的第i列的系数消除 double value = http://www.mamicode.com/datas.get(j).get(k) - datas.get(i).get(k) * datas.get(j).get(i) / datas.get(i).get(i);>
结果集:
【算法设计与分析基础】16、高斯消元法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。