iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >[LeetCode Python3]5
  • 947
分享到

[LeetCode Python3]5

LeetCode 2023-01-31 08:01:48 947人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

在MATLAB中,有一个非常有用的函数 reshape,它可以将一个矩阵重塑为另一个大小不同的新矩阵,但保留其原始数据。 给出一个由二维数组表示的矩阵,以及两个正整数r和c,分别表示想要的重构的矩阵的行数和列数。 重构后的矩阵需要将原始矩

在MATLAB中,有一个非常有用的函数 reshape,它可以将一个矩阵重塑为另一个大小不同的新矩阵,但保留其原始数据。

给出一个由二维数组表示的矩阵,以及两个正整数rc,分别表示想要的重构的矩阵的行数和列数。

重构后的矩阵需要将原始矩阵的所有元素以相同的行遍历顺序填充。

如果具有给定参数的reshape操作是可行且合理的,则输出新的重塑矩阵;否则,输出原始矩阵。

示例 1:

输入: 
nums = 
[[1,2],
 [3,4]]
r = 1, c = 4
输出: 
[[1,2,3,4]]
解释:
行遍历nums的结果是 [1,2,3,4]。新的矩阵是 1 * 4 矩阵, 用之前的元素值一行一行填充新矩阵。

示例 2:

输入: 
nums = 
[[1,2],
 [3,4]]
r = 2, c = 4
输出: 
[[1,2],
 [3,4]]
解释:
没有办法将 2 * 2 矩阵转化为 2 * 4 矩阵。 所以输出原矩阵。

注意:

  1. 给定矩阵的宽和高范围在 [1, 100]。
  2. 给定的 r 和 c 都是正数。

思路:重塑矩阵前后元素个数相同,下面是python解题代码。

class Solution:
    def matrixReshape(self, nums, r, c):
        """
        :type nums: List[List[int]]
        :type r: int
        :type c: int
        :rtype: List[List[int]]
        """
        rr = len(nums)
        cc = len(nums[0])
        retl = []
        if rr * cc < r * c:
            return nums
        else:
            t = []
            for i in range(rr):
                for j in range(cc):
                    t.append(nums[i][j])
            m = 0
            for i in range(r):
                retl.append(t[m:m + c])
                m += c
        return retl

--结束END--

本文标题: [LeetCode Python3]5

本文链接: https://www.lsjlt.com/news/193463.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • [LeetCode Python3]5
    在MATLAB中,有一个非常有用的函数 reshape,它可以将一个矩阵重塑为另一个大小不同的新矩阵,但保留其原始数据。 给出一个由二维数组表示的矩阵,以及两个正整数r和c,分别表示想要的重构的矩阵的行数和列数。 重构后的矩阵需要将原始矩...
    99+
    2023-01-31
    LeetCode
  • Python3教程——5、Python3
            一、Pycharm常用快捷键 有颜色的为很常用,或不易发现   编辑类: Ctrl + Space 基本的代码完成(类、方法、属性) Ctrl + Alt + Space 类名完成 Ctrl + Shift + Ent...
    99+
    2023-01-31
    教程
  • python3 基础(5)-模块(1)-
    模块介绍补充:通过os模块获取各种路径(目录)import osprint(__file__)   #返回程序的相对路径print(os.path.abspath(__file__))   #返回程序的绝对路径print(os.path.d...
    99+
    2023-01-31
    模块 基础
  • 5. Python3源码—字符串(st
    5.1. 字符串对象 字符串对象是“变长对象”。 5.1.1. Python中的创建 Python中字符串(strs)对象最重要的创建方法为PyUnicode_DecodeUTF8Stateful,如下Python语句最终会调用到PyUn...
    99+
    2023-01-31
    字符串 源码 st
  • Python3网络爬虫实战-5、Web库
    Web 想必我们都不陌生,我们现在日常访问的网站都是 Web 服务程序搭建而成的,Python 同样不例外也有一些这样的 Web 服务程序,比如 Flask、Django 等,我们可以拿它来开发网站,开发接口等等。 在本书中,我们主要要用到...
    99+
    2023-01-31
    爬虫 实战 网络
  • C++实现LeetCode(5.最长回文子串)
    [LeetCode] 5. Longest Palindromic Substring 最长回文子串 Given a string s, find the longest ...
    99+
    2024-04-02
  • python3:装饰器的5大用法总结
    装饰器,顾名思义,就是给函数作装饰作用的,相当于只是给函数化了一个装,并没有给他添加额外的代码,但是却增加了新功能,就如同我们在冬天很冷的情况下,想要变暖和(添加新功能),但是我们不是生活在武侠小说里有内功,肿么办?我们可以穿一件羽绒服来...
    99+
    2023-01-31
  • Python3中最常用的5种线程锁的应用
    本篇内容主要讲解“Python3中最常用的5种线程锁的应用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python3中最常用的5种线程锁的应用”吧!目录前言线程安全锁的作用Lock() 同步锁...
    99+
    2023-06-20
  • Python3中最常用的5种线程锁实例总结
    目录前言线程安全锁的作用Lock() 同步锁基本介绍使用方式死锁现象with语句RLock() 递归锁基本介绍使用方式with语句Condition() 条件锁基本介绍使用方式wit...
    99+
    2024-04-02
  • [JDK.5 入门].Beginning.Java.2,.JDK.5.Edition
    [JDK.5 入门].Beginning.Java.2,.JDK.5.Edition: Detail:[JDK.5 入门].Beginning.Java.2,.JDK.5.Edition[@more@]...
    99+
    2023-06-03
  • leetCode
    two sum Given an array of integers, return indices of the two numbers such that they add up to a specific target. You m...
    99+
    2023-01-31
    leetCode
  • 计算2/1+3/2+5/3+8/5+..
    #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> int main() {  double a = 1.0;  double b = 1.0;  double Sn = 0;  ...
    99+
    2023-01-31
  • leepcode - 5-16
    给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。 注意空字符串可被认为是有效字符串。 示例 1: 输...
    99+
    2023-01-31
    leepcode
  • eclipse + JBoss 5 +
    有时客户端程序(如JSP、Servlet)会和EJB组件运行在同一个JVM上,如在同一个J2EE服务器(JBoss、Weblogic等)中运行。这时就没必要再通过远程(remote)接口访问Session Bean了,因为客户端和sessi...
    99+
    2023-01-31
    eclipse JBoss
  • python如何输出一个5×5矩阵
    可以使用嵌套的列表来表示一个5×5的矩阵,然后使用循环来输出每个元素。```pythonmatrix = [[0, 0, 0, 0,...
    99+
    2023-09-26
    python
  • python3 __name__
    我们经常会在各种代码中见到一个__name__ == '__main__', 这究竟是什么意思呢 当一个python文件是被当做一个脚本运行的时候, 它的__name__就为__main__, 比如以下代码 >>>...
    99+
    2023-01-31
  • Python3 isinstance()
    描述 isinstance() 函数来判断一个对象是否是一个已知的类型,类似 type()。 isinstance() 与 type() 区别: type() 不会认为子类是一种父类类型,不考虑继承关系。 isinstance(...
    99+
    2023-01-31
    isinstance
  • raid0、1、3、5
    Redundant Array of Inexpensive Disks,简称RAID, RAID将普通硬盘组成一个磁盘阵列,在主机写入数据,RAID控制器把主机要写入的数据分解为多个数据块,然后并行写入磁盘阵列;主机读取数据时,RAID控...
    99+
    2023-01-31
  • python3 GUI
    用python3创建窗口并显示 修改窗口的名字 在窗口中加入标签 在窗口中加入按钮 使按钮有实际意义 添加可编辑文本框 用Tkinter实现一个简单的GUI程序,单击click按钮时会在终端打印出’hello world’...
    99+
    2023-01-31
    GUI
  • Python3 urllib.parse
    1、获取url参数。>>> from urllib import parse >>> url = r'https://docs.python.org/3.5/search.htmlq=parse&...
    99+
    2023-01-31
    urllib parse
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作