数据结构知识点总结-特殊矩阵-矩阵的压缩存储

特殊矩阵

定义

        矩阵在计算机图形学中占有很重要的地位。在数据结构中我们不研究矩阵的运算,而是侧重于如何将矩阵高效的存储在内存中,并能方便的提取矩阵中的元素。

数组的概念

        数组是由n(n>=0)个相同类型的数据元素构成的有限序列,每个数据元素称为一个数组元素,每个元素在n个元素中线性关系的序号称为该元素的下标。

        数组是线性表的推广,一维数组就是一个线性表,二维数组可视为元素是定长线性表的线性表。大多数语言都提供了数组类型,在各语言中比如C、C++、Java,数组下标都是动0开始的。

        以一维数组A[0,1,…,n-1]为例,其存储结构关系式为:

  LOC(ai) = LOC(a0) + i*L (0 <= i < n),其中L为一个元素的存储长度。

        对于多维数组,有两种映射方法,按行优先和按列优先。以二维数组为例,按行优先存储的基本思想是,先行后列,先存储行号较小的元素,行号相等先存储列号较小的元素。设二维数组的行下标和列下标的范围为[0,h1]与[0,h2],则存储结构关系式为:

LOC(ai,j) = LOC(a0,0) + [i*(h2+1) + j]*L (0 <= i <n)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/705050.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于smilehappiness-framework-base,快速集成ShardingSphere JDBC

文章目录 1 前言2 分库分表2.1 什么是分库分表2.2 垂直分库2.3 水平分表 3 如何集成使用分库分表3.1 添加maven依赖3.2 添加 shardingSphere 数据源3.2 添加 sharding jdbc 配置3.2.1 分表配置示例3.2.2 分库且分表配置示例 1 前言 为什么使用分库分表&#xff1f;随着业务量的…

【Fastadmin】动态下拉(SelectPage)

目录 1.常规用法: 2.常用属性: 3.联动用法:三级分类为例 FastAdmin中的动态下拉列表使用的是优秀强大的Selectpage插件,FastAdmin对其进行了二次开发。 1.常规用法: <input id="c-name" data-rule="required" data-source="category/sele…

vue3_父组件调用子组件的某个方法

父组件&#xff1a; <template><div class"father"><el-button click"handle">触发子组件事件</el-button><child ref"children"/></div> </template><script setup lang"ts"> impo…

C# OpenCvSharp 颜色反转

目录 效果 灰度图 黑白色反转 彩色反转 项目 代码 下载 效果 灰度图 黑白色反转 彩色反转 项目 代码 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Te…

电机应用中的大功率电阻器?

在这篇文章中&#xff0c;我们将考虑电机应用中的电阻器。 交流、直流和专用电机用于广泛的应用。一些电机应用相对简单&#xff0c;唯一需要关注的是电机的启动和关闭。在这里&#xff0c;成本、简单性和可靠性是主要问题&#xff0c;而电机控制电阻器是常见的解决方案。 在…

【数据结构】B树,B+树,B*树

文章目录 一、B树1.B树的定义2.B树的插入3.B树的中序遍历 二、B树和B*树1.B树的定义2.B树的插入3.B*树的定义4.B树系列总结 三、B树与B树的应用 一、B树 1.B树的定义 1. 在内存中搜索效率高的数据结构有AVL树&#xff0c;红黑树&#xff0c;哈希表等&#xff0c;但这是在内存…

解决:selenium web browser 的版本适配问题

文章目录 解决方案&#xff1a;使用 webdriver manager 自动适配驱动 使用 selenium 操控浏览器的时候报错&#xff1a; The chromedriver version (114.0.5735.90) detected in PATH at /opt/homebrew/bin/chromedriver might not be compatible with the detected chrome ve…

IK分词器

下载 elasticsearch&#xff1a;https://www.elastic.co/cn/elasticsearch elasticsearch-analysis-ik&#xff1a;https://github.com/medcl/elasticsearch-analysis-ik 启动 elasticsearch&#xff1a;elasticsearch\bin\elasticsearch.bat http://localhost:9200 启动 kiban…

AutoSAR(基础入门篇)11.5-服务映射(自顶向下)

目录 一、配置Service Needs 二、配置Cfg同步 我们在下一节的实验课中讲解这里的具体配置流程,本节主要讲一下这些配置的大致流程和配置项的作用。NvBlockSwComponents是一个可选项, 我们这里开始不使用NvBlockSwComponents,将我们的Application SWC直接和NvM通过C/S连接起…

C++面试宝典第32题:零钱兑换

题目 给定不同面额的硬币coins和一个总金额amount,编写一个函数来计算可以凑成总金额所需的最少的硬币个数。如果没有任何一种硬币组合能组成总金额,则返回-1。说明:你可以认为每种硬币的数量是无限的。 示例1: 输入:coins = [1, 2, 5], amount = 11 输出:3 解释:11 = …

golang 函数式编程库samber/mo使用: Either

golang 函数式编程库samber/mo使用&#xff1a; Either 如果您不了解samber/mo库&#xff0c; 请先阅读第一篇 Option 结构定义 有时候我们不确定值的类型&#xff0c; 一个值可能是int&#xff0c; 也可能是string&#xff0c; 这时候我们可以使用Either类型。 Either类型是…

SQL-Labs靶场“29-31”关通关教程

君衍. 一、二十九关 基于错误的WAF单引号注入1、源码分析2、HTTP参数污染3、联合查询注入4、updatexml报错注入 二、三十关 基于错误的WAF双引号注入1、源码分析2、联合查询注入3、updatexml报错注入 三、三十一关 基于错误的WAF双引号括号注入1、源码分析2、联合查询注入3、up…

【JavaEE】_前端使用GET请求的queryString向后端传参

目录 1. GET请求的query string 2. 关于query string的urlencode 1. GET请求的query string 1. 在HttpServletRequest请求中&#xff0c;getParameter方法用于在服务器这边获取到请求中的参数&#xff0c;主要在query string中&#xff1b; query string中的键值对都是程序…

C#中的关键字params的用法

C#中有一个关键字params&#xff0c;它相对于一些主要关键字来说&#xff0c;还算是较为低频的&#xff0c;但也会用到。我们可以了解和学习下。 一、定义及约束 params关键字的作用在于可以让方法参数的数目可变。 params的参数类型必须是一维数组。 一旦在方法加入了para…

C++ list详解以及模拟实现

目录 1.list的使用 1.1list的定义 1.2list的使用 1.3list iterator使用 1.4list capacity 1.5list element access 1.6list增删查改 2.list迭代器失效问题 3.list的模拟实现 1.list的使用 1.1list的定义 1. list是可以在常数范围内在任意位置进行插入和删除的序列式容…

Redis之Sentinel模式安装文档

下载 官网地址 http://download.redis.io/releases/ 1、环境: 127.0.0.1 127.0.0.2 127.0.0.3 2、创建目录,创建redis用户,解压Redis安装包 mkdir -p /u01/redisgroupadd redisuseradd -g redis redis chown -R redis:redis /u01/redis/ su - redis tar -zxvf redis-5…

【深度学习笔记】4_4 自定义层

注&#xff1a;本文为《动手学深度学习》开源内容&#xff0c;部分标注了个人理解&#xff0c;仅为个人学习记录&#xff0c;无抄袭搬运意图 4.4 自定义层 深度学习的一个魅力在于神经网络中各式各样的层&#xff0c;例如全连接层和后面章节中将要介绍的卷积层、池化层与循环层…

240Hz高刷电竞显示器 - HKC VG253KM

&#x1f389;&#x1f389;&#x1f389; 各位电竞爱好者们&#xff0c;今天给大家带来一款神秘武器&#xff0c;一款能够让你在游戏中大展拳脚的高刷电竞显示器 - HKC VG253KM&#xff01;&#x1f525;&#x1f525;&#x1f525; 这款显示器&#xff0c;哎呀&#xff0c;真…

10分钟快速开始SkyWalking结合Springboot项目

10分钟快速开始SkyWalking结合Springboot项目 实习期间&#xff0c;公司让我去学习一下链路追踪如何集成到Springboot项目中。 为此有两个方案&#xff1a; 1.opentelementryjaegerprometheus opentelementry 收集器收集线上的metrics和traces&#xff0c;然后发送给jaeger和p…

IP对讲终端SV-6002(防水)

SV-6002&#xff08;防水&#xff09;是一款IP对讲终端&#xff0c;具有10/100M以太网接口&#xff0c;其接收网络的音频数据&#xff0c;解码后播放&#xff0c;外部DC12~24V电源供电端子&#xff0c;提供单路2W的音频输出。基于TCP/IP网络通信协议和数字音频技术&#xff0c;…