数据结构实验之数组三:快速转置

题目描述



转置运算是一种最简单的矩阵运算,对于一个m*n的矩阵M( 1 = < m < = 10000,1 = < n < = 10000 ),它的转置矩阵T是一个n*m的矩阵,且T( i , j )=M( j , i )。显然,一个稀疏矩阵的转置仍然是稀疏矩阵。你的任务是对给定一个m*n的稀疏矩阵( m , n < = 10000 ),求该矩阵的转置矩阵并输出。矩阵M和转置后的矩阵T如下图示例所示。
   
   稀疏矩阵M                             稀疏矩阵T

输入

连续输入多组数据,每组数据的第一行是三个整数mu, nu, tu(tu <= 50),分别表示稀疏矩阵的行数、列数和矩阵中非零元素的个数,随后tu行输入稀疏矩阵的非零元素所在的行、列值和非零元素的值,同一行数据之间用空格间隔。(矩阵以行序为主序)

输出

输出转置后的稀疏矩阵的三元组顺序表表示。

示例输入

3 5 51 2 141 5 -52 2 -73 1 363 4 28

示例输出

1 3 362 1 142 2 -74 3 285 1 -5

提示


#include <iostream>
#include<bits/stdc++.h>
using namespace std;
struct node
{
    int x,y,k;
}p[10001],t;
int main()
{
    int i,mu,nu,tu;
    while(cin>>mu>>nu>>tu)
    {
        for(i=0;i<tu;i++)
        {
            cin>>p[i].x>>p[i].y>>p[i].k;
        }
        for(i=0;i<tu-1;i++)//冒泡排序;
            for(int j=0;j<tu-1-i;j++)
               {
                   if(p[j].y>p[j+1].y)
                  {
                     t=p[j];p[j]=p[j+1];
                        p[j+1]=t;
                  }
                   if(p[j].y==p[j+1].y)
                   {
                       if(p[j].x>p[j+1].x)
                       {
                           t=p[j];
                           p[j]=p[j+1];
                           p[j+1]=t;
                       }
                   }
               }
        for(i=0;i<tu;i++)
        {
            cout<<p[i].y<<" "<<p[i].x<<" "<<p[i].k<<endl;//输出流;
        }
    }
    return 0;
}


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

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

相关文章

Mybatis输入映射和输出映射

Mapper.xml映射文件中定义了操作数据库的sql&#xff0c;每个sql是一个statement&#xff0c;映射文件是mybatis的核心。输入参数映射parameterType(输入类型)传递简单类型&#xff1a;如&#xff1a;<select id"queryUserById" parameterType"Integer"…

Mybatis动态sql的使用

通过mybatis提供的各种标签方法实现动态拼接sql。 为什么用if标签? UserMapper.xml配置sql&#xff0c;如下&#xff1a; <!-- 根据条件查询用户 --> <select id"queryUserByWhere" parameterType"user" resultType"user">SELEC…

面向对象设计之CRC卡片

1.什么是 CRC card&#xff1f; CRC (Class-Responsibility-Collaborator) Card是目前比较流行的面向对象分析建模方法。在CRC建模中&#xff0c;用户、设计者、开发人员都有参与&#xff0c;完成对整个面向对象工程的设计。 CRC卡是一个标准索引卡集合&#xff0c;包括三个部分…

Mybatis整合spring

整合思路 1、SqlSessionFactory对象应该放到spring容器中作为单例存在。 2、传统dao的开发方式中&#xff0c;应该从spring容器中获得sqlsession对象。 3、Mapper代理形式中&#xff0c;应该从spring容器中直接获得mapper的代理对象。 4、数据库的连接以及数据库连接池事务…

云计算的理解

原文&#xff1a;http://www.chinacloud.cn/show.aspx?id15917&cid17 老叟发现&#xff0c;即使是一些搞计算机的人&#xff0c;也不了解“云”是什么。于是&#xff0c;俺卖车之余就写了一篇科普&#xff1a; 到底什么是云(云计算) 有很多关于云的介绍。然而&#xff0c;…

什么是Springmvc以及如果编写第一个入门程序

Spring web mvc和Struts2都属于表现层的框架,它是Spring框架的一部分,我们可以从Spring的整体结构中看得出来,如下图&#xff1a; Springmvc处理流程 入门程序 创建web工程 springMVC是表现层框架&#xff0c;需要搭建web工程开发。 如下图创建动态web工程&#xff1a; 输入…

Springmvc架构详解

框架结构 框架结构如下图&#xff1a; 架构流程 1、 用户发送请求至前端控制器DispatcherServlet 2、 DispatcherServlet收到请求调用HandlerMapping处理器映射器。 3、 处理器映射器根据请求url找到具体的处理器&#xff0c;生成处理器对象及处理器拦截器(如果有则生成)一…

Win10下VS2015(WDK10)驱动开发环境配置

1、 概述 微软在”WDK7600“以后就不再提供独立的内核驱动开发包了&#xff0c;而是必须首先安装微软集成开发环境VisualStudio&#xff0c;然后再从微软官网下载集成的WDK开发包、或者离线安装包&#xff0c;但是安装后Visual Studio就集驱动程序开发&#xff0c;编译&…

jquery添加div实现消息聊天框

上代码 <% page language"java" contentType"text/html; charsetUTF-8"pageEncoding"UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> &l…

VS调试启动编辑并继续功能

在VS调试的过程中&#xff0c;可能需要进行源代码的修改&#xff0c;一般的做法是先停止当前的调试&#xff0c;然后重新编译再进行调试&#xff0c;哪怕做的一点点小的改动&#xff0c;这样做很浪费时间&#xff0c;尤其是当项目比较大&#xff0c;程序的启动和初始化需要较长…

张小龙:如何把产品做简单

今天从一个小故事开始讲&#xff1a;为什么苹果的手机只有一个按钮&#xff1f; &#xff08;台下&#xff1a;我觉得对于用户来说&#xff0c;只有一个按钮不会有太多的干扰&#xff0c;只要从这里开始&#xff0c;其它的菜单都在这里面了&#xff0c;这是我个人的一些想法。&…

聊天机器人调用API实现

后端调用API&#xff1a; package com.mychat.servlet;import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.HttpURLConnection; import java.net.URL; import java.net.URLEncoder;…

Dump文件

1. Dump文件 1. Dump文件介绍 Dump文件(Dump File)&#xff0c;也叫转储文件&#xff0c;以.DMP为文件后缀。dump文件是进程在内存中的镜像文件&#xff0c;通过转换然后存储成以.DMP后缀的文件。dump文件根据存储时的选项不同&#xff0c;会生成不同大小的文件&#xff0c;其中…

web聊天室实现

后端&#xff1a; package com.jsx.chat;import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; import java.util.Map; import java.util.concurrent.CopyOnWriteArraySet;import javax.websocket.OnClose; imp…

一对一聊天ajax实现

前端页面&#xff1a; 好友列表&#xff1a; 好友列表代码&#xff1a; <% page language"java" contentType"text/html; charsetUTF-8"pageEncoding"UTF-8"%> <% page import"java.util.Random" %> <% taglib ur…

“模块计算机类型“x64”与目标计算机类型“X86”冲突解决方案

最近在编译一款开源软件的时候&#xff0c;遇到了“模块计算机类型“x64”与目标计算机类型“X86”冲突的问题&#xff0c;网上查了好多资料&#xff0c;都是配置“链接器-》高级-》目标计算机”和选择X64平台编译器&#xff0c;可是怎么试都不行&#xff0c;最后发现是“命令行…

windows稀疏文件

稀疏文件(Sparse File), 指的是文件中出现大量的0数据&#xff0c;这些数据对我们用处不大&#xff0c;但是却一样的占用我们的空间&#xff0c;针对此&#xff0c;WINNT 3.51中的NTFS文件系统对此进行了优化&#xff0c;那些无用的0字节被用一定的算法压缩起来&#xff0c;使得…

选夫婿1

Problem Description 倾国倾城的大家闺秀潘小姐要选夫婿啦&#xff01;武林中各门各派&#xff0c;武林外各大户人家&#xff0c;闻讯纷纷前来&#xff0c;强势围观。前来参与竞选的男生藏龙卧虎&#xff0c;高手云集&#xff0c;才子遍布&#xff0c;帅哥纷纭&#xff0c;更不…