python矩阵乘法分治算法_算法笔记_003:矩阵相乘问题【分治法】

本文介绍了使用分治法实现Python矩阵乘法的详细步骤,包括初始化随机矩阵、蛮力法求解和分治法求解的实现过程。通过分治策略,将大矩阵乘法问题分解为更小的子问题,提高了计算效率。
摘要由CSDN通过智能技术生成

packagecom.liuzhen.dac;public classMatrix {//初始化一个随机nxn阶矩阵

public static int[][] initializationMatrix(intn){int[][] result = new int[n][n];for(int i = 0;i < n;i++){for(int j = 0;j < n;j++){

result[i][j]= (int)(Math.random()*10); //采用随机函数随机生成1~10之间的数

}

}returnresult;

}//蛮力法求解两个nxn和nxn阶矩阵相乘

public static int[][] BruteForce(int[][] p,int[][] q,intn){int[][] result = new int[n][n];for(int i=0;i

result[i][j]= 0;for(int k=0;k

result[i][j]+= p[i][k]*q[k][j];

}

}

}returnresult;

}//分治法求解两个nxn和nxn阶矩阵相乘

public static int[][] DivideAndConquer(int[][] p,int[][] q,intn){int[][] result = new int[n][n];//当n为2时,返回矩阵相乘结果

if(n == 2){

result=BruteForce(p,q,n);returnresult;

}//当n大于3时,采用采用分治法,递归求最终结果

if(n >

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值