对称矩阵的压缩存储、基于压缩矩阵的矩阵乘法

2023-11-15

def disp(A):#输出方阵A
    n=len(A)
    for i in range(n):
        for j in range(n):
            print('%d'%(A[i][j]),end="")
    print()

def compression(A,a):#压缩矩阵A到a中,A是一个对称矩阵
    for i in range(len(A)):
        for j in range(i+1):#这两循环遍历了三角,可以理解为上三角或者是下三角
            k=i*(i+1)//2+j#a中序号与A中序号之间的关系
            a[k]=A[i][j]

def getk(i,j):#求原矩阵中行号为i,列号为j在a中的位置
    if i>=j:
        return(i*(i+1)//2+j)
    else:
        return(j*(j+1)//2+i)

def Mult(a,b,C,n):#矩阵乘法,矩阵乘法的计算机形式的描述可以这样说,ij位置的元素的获得是这样操作的,第i行的所有元素*第j列的所有元素
    for i in range(n):
        for j in range(n):
            s=0
            for k in range(n):#这里是从a中获得相应的数字的
                k1=getk(i,k)
                k2=getk(k,j)
                s+=a[k1]*b[k2]
                C[i][j]=s

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

对称矩阵的压缩存储、基于压缩矩阵的矩阵乘法 的相关文章

随机推荐

  • 使用树莓派Pico、DHT11和SSD1306搭建一个温度湿度计(只使用官方库,以及官方案例代码的错误之处和解决方案)

    最近想树莓派 Pico DHT11 温湿度传感器和 SSD1306 OLED 屏幕做一个温度湿度计 树莓派官方案例也分别有这两个设备的案例 我就想做个简单的温度湿度计作为学习微控制器的开始 结果遇到了一个大坑 所以写本文记录一下整个过程 本
  • steam登不上显示连接服务器错误,steam登陆网络连接错误代码的解决办法

    下面就是为您整理了的steam登陆网络连接错误代码的答案 steam登陆网络连接错误代码内容导航1 steam服务器连接失败 错误代码 118 steam服务器连接失败错误代码 118 解决方法 1 右键单击你电脑的网络连接符号 选择打开网
  • webpack output.library的16 种取值方法示例

    前置准备 在项目开发中使用 webpack 打包前端代码 对 output library 配置项总是不求甚解 只知道将代码打包成 npm 库的时候要配置它 这段时间又要开发组件库 借助这次机会对 output library 求甚解 配置
  • gimp中文版教程_GIMP中详细教程.pdf

    GIMP中详细教程 GIMP 实用系列教程 1文件的打开和存储 概述 打开GIMP软件其初始界面如下 左边是工具 工具箱中每选择一种工具后 通常在其下部会出 现一个与其相配的选项栏一起使用的 因此每选好一种工具 首先要 把选项栏中的有关选项
  • 蓝桥杯python青少年_让孩子参加蓝桥杯大赛好吗

    让孩子参加蓝桥杯大赛好吗 1 小学升初中备简历 该赛能帮孩子锦上添花 近年来 小学升初中的竞争越来越激烈 政策也年年在改变 许多地区的小学升初中甚至开始采取摇号和面试选拔学生 但不管政策怎么变 这其中的竞争力只会越来越大 优质生源决定学校核
  • 前端购物车,创建订单和支付流程

    前端购物车流程 用户在页面上将商品添加到购物车中 用户可以通过购物车页面查看添加的商品列表及其数量 并对其进行修改和删除 用户确认购物车中的商品无误后 点击 结算 按钮 用户填写收货地址 付款方式等相关信息 确认订单信息 系统生成订单并显示
  • flutter_blue + MethodChannel.invokeMethod + java.lang.NullPointerException

    友盟崩溃日志报了这样一个问题 说是扫描蓝牙设备回调时 MethodChannel 为空 java lang NullPointerException Attempt to invoke virtual method void io flut
  • Logrotate日志切分

    logrotate 程序是一个日志文件管理工具 用来把旧的日志文件更名或删除 并创建新的日志文件 我们把它叫做 转储 是个使日志轮替的程序 有了它就不用看着自己的日志体积一天天的变大 而可以根据你自己的需求来设定日志转储 这个工具对于像ng
  • discuz设置伪静态

    discuz设置伪静态 环境为 centos Apache mysql php 操作后台 点击提交 点击右上角的查看规则 复制一段到新建文件 htaccess中 注 WIN主机就另存为httpd ini Linux主机就另存为 htacce
  • python遍历文件夹下的所有子文件夹,并将指定的文件复制到指定目录

    python遍历文件夹下的所有子文件夹 并将指定的文件复制到指定目录 需求 复制单个文件夹 遍历所有子文件夹中的文件 并复制 代码封装 需求 在1文件夹中有1 2两个文件夹 将这两个文件夹中的文件复制到 after copy中 复制单个文件
  • Deathnote

    Deathnote 1 主机发现 arp scan l 2 扫描端口 nmap Pn sV P A 192 168 80 132 开放了80 22端口 3 访问80端口 修改host文件访问80端口时进行了跳转到deathnote vuln
  • Allegro 17.4设置中文界面

    一 Allegro 17 4 中文界面效果 二 Allegro 17 4 中文界面设置方法 2 1 需要打上此时 20210820 最新的S019的升级补丁 2 2 设置环境变量 变量名 intl enabled 变量值 1 要去除中文显示
  • LeetCode刷题-1

    数组 1 两数之和 题目描述 题目样例 Java方法 暴力枚举 思路及算法 代码 执行结果 复杂度 Java方法 哈希表 思路及算法 代码 执行结果 复杂度 题目描述 给定一个整数数组 nums 和一个整数目标值 target 请你在该数组
  • StarCraft开发:用肮脏的技巧解决难题

    http www csdn net article 2013 02 28 2814299 the starcraft path finding hack 摘要 在之前的文章中 Warcraft之父讲述了自己是如何以及为何重启StarCraf
  • Linux中的fork()函数

    Linux中的fork 函数 在Linux中 fork 函数是创建进程的基础 它是一个系统调用 用于创建一个新的进程作为当前进程的副本 新进程将拥有与原进程相同的代码 数据和堆栈 但是拥有不同的进程ID PID 并且它是原进程的子进程 函数
  • 【debug】(0, slice(None, None, None))‘ is an invalid key

    简单介绍 我获取了一个dataframe里的符合条件的多个index 想通过index对dataframe进行筛选 在筛选的时候反馈错误 原始代码为 input index df select df select item input in
  • 【word】如何设置交叉引用标注参考文献

    文章目录 1 定义参考文献编号格式 2 设置交叉引用 插入正文位置 3 修改连续多个参考文献的格式 4 更新正文标注 1 定义参考文献编号格式 开始 gt 编号 gt 定义新编号格式 2 设置交叉引用 插入正文位置 设置好固定的参考文献格式
  • 【vscode,python】pip成功的包却不能导入(import)问题

    第一次遇到这个问题 在网上找了些资料 网上的教程大致上都是需要去修改settings json这个文件 我问了我朋友 然后轻松地解决了这个问题 方法一 关掉编译软件重新打开即可解决问题 方法二 我认为造成这个问题的原因是在另一个新的路径上新
  • 真实GPS转腾讯/高德地图坐标系,百度地图与腾讯/高德地图坐标系转换

    1 获取真实坐标GPS wgs84转为gcj编码方式 positiontransform array manual 定义常量 var GPS PI 3 14159265358979324 x pi 3 14159265358979324 3
  • 对称矩阵的压缩存储、基于压缩矩阵的矩阵乘法

    def disp A 输出方阵A n len A for i in range n for j in range n print d A i j end print def compression A a 压缩矩阵A到a中 A是一个对称矩阵