三元组顺序表表示的稀疏矩阵加法_数据结构实验题(三元组顺序表表示的稀疏矩阵转置运算)...
题目描述:
思路:
先用三元顺序表存放稀疏矩阵
typedef struct{ int row, col; int elem;} Elem;typedef struct{ int Row, Col, n; Elem data[10000];} Matrix;
接着行列号互换
T.Row = matrix.Col; T.Col = matrix.Row; T.n = matrix.n;
然后按列号优先的顺序,将原矩阵与转置矩阵T行列元素互换即可
if (T.n) { q = 1; for (j = 0; j < matrix.Col; j++) for (p = 1; p <= matrix.n; p++) if (matrix.data[p].col == j) { T.data[q].row = matrix.data[p].col; T.data[q].col = matrix.data[p].row; T.data[q].elem = matrix.data[p].elem; q++; } }
完整代码如下:
#include #include using namespace std;typedef struct{ int row, col; int elem;} Elem;typedef struct{ int Row, Col, n; Elem data[10000];} Matrix;int main(){ Matrix matrix; cin >> matrix.Row >> matrix.Col >> matrix.n; int N = matrix.n; int i = 1; while (N--) { int r, c, e; cin >> r >> c >> e; matrix.data[i].row = r; matrix.data[i].col = c; matrix.data[i].elem = e; i++; } Matrix T; T.Row = matrix.Col; T.Col = matrix.Row; T.n = matrix.n; int p, q, j; if (T.n) { q = 1; for (j = 0; j < matrix.Col; j++) for (p = 1; p <= matrix.n; p++) if (matrix.data[p].col == j) { T.data[q].row = matrix.data[p].col; T.data[q].col = matrix.data[p].row; T.data[q].elem = matrix.data[p].elem; q++; } } for(i=1;i { cout<" "< } return 0;}
三元组顺序表表示的稀疏矩阵加法_数据结构实验题(三元组顺序表表示的稀疏矩阵转置运算)...相关推荐
- 数据结构实验:哈希表
数据结构实验:哈希表 题目描述 在n个数中,找出出现次数最多那个数字,并且输出出现的次数.如果有多个结果,输出数字最小的那一个. 输入 单组数据,第一行数字n(1<=n<=100000). ...
- rsa算法c语言实现_数据结构与算法之线性表-顺序表实现(C语言版本)
原文托管在Github: https://github.com/shellhub/blog/issues/52 数据结构与算法之线性表-顺序表实现(C语言版本) 前言 数据结构与算法是一个程序员必备的 ...
- 数据结构三元组实验报告_数据结构实验报告
实验一 约瑟夫问题 实验学时: 3 学时 实验类型:设计 实验要求:必修 一.实验目的 熟练掌握线性链表的基础知识: 能够使用 C++ 或其他程序设计语言编程实现线性链表: 能够使用线性链表构造正确而 ...
- python线性表顺序存储实现_数据结构——基于C的线性表的顺序存储结构的基本操作的实现...
/*** *SeqList.c *Copyright (c) 2015, XZG. All rights reserved. *Purpose: * 线性表顺序存储结构的创建.数据插入.数据获取.获取 ...
- c++数据结构中 顺序队列的队首队尾_数据结构与算法—队列详解
前言 栈和队列是一对好兄弟,前面我们介绍过数据结构与算法-栈详解,那么栈的机制相对简单,后入先出,就像进入一个狭小的山洞,山洞只有一个出口,只能后进先出(在外面的先出去).而队列就好比是一个隧道,后面 ...
- 分别用邻接矩阵和邻接表实现图的深度优先遍历和广度优先遍历_数据结构|图的邻接表与深度、广度优先搜索
线性存储元素时,元素的关系也同时确定了.而非线性数据结构就不同了,需要同时考虑存储数据元素和数据元素的关系. 由于图的结构比较复杂,任意两个顶点之间都可能存在联系,因此无法以数据元素在存储区中的物理位 ...
- c++数据结构中 顺序队列的队首队尾_数据结构与算法—队列图文详解
前言 栈和队列是一对好兄弟,前面我们介绍过数据结构与算法-栈详解,那么栈的机制相对简单,后入先出,就像进入一个狭小的山洞,山洞只有一个出口,只能后进先出(在外面的先出去).而队列就好比是一个隧道,后面 ...
- linux如何把mysql表名换成小写_让 MySQL 在 Linux 下表名不区分大小写(实为表名全小写)...
把 Windows 下的应用部署到 Linux 下,使用到了 Quartz 集群的特性,所以建了 MySql 的中间表,一启动看到报错: Invocation of init method faile ...
- c++数据结构中 顺序队列的队首队尾_数据结构 3.3 顺序队
一些废话 光有理论是远远不够的,只有自己亲自敲过代码,做过编程题才能说自己学过数据结构.但被PTA的ds习题折磨了几天之后,我领悟到一个道理: 学习理论时可以用C语言造轮子深入理解. 上机做题时使用C ...
最新文章
- [2DPIC调试笔记]parameter_antenna_radiation1013(3)
- Git之深入解析如何运行自己的Git仓库托管服务器
- kafka集群原理介绍
- 人造卫星为什么会绕着地球转而不是停在太空中或者越飞越远.掉进地球的卫星为什么烧不完....
- java mysql 语句解析器_几种基于Java的SQL解析工具的比较与调用
- 视频领域的Instagram:Viddy用户突破2600万
- 向窗口发送ctrl c复制 消息
- EasyPR源码剖析(4):车牌定位之Sobel算子定位
- 系统如何删除被其它进程占用的文件?
- python文本情感分析代码_6行代码的超简单语言情感分析:由Python的Vader情感库实现,超级,使用,vaderSentiment...
- c语言吧五子棋纯干货注释,请帮我注释下这个五子棋程序
- OpenWrt 路由器过滤广告的N种方法
- 主板检测卡c5_主板检测卡代码(常见)及解决方法
- 郑码输入法 字根记忆表 一般根变通处理
- 周记——20150720
- pip3.7.5安装环境依赖onnxruntime、onnx、numpy、skl2onnx
- centos中文、英文乱码
- AI科普(一):什么是人工智能?
- JZ38* 字符串的排列
- 基于Vue+Vant的旅游WebApp的设计与实现