力扣刷题 day42:10-12

news2024/11/19 4:36:39

1.最大正方形

在一个由 '0' 和 '1' 组成的二维矩阵内,找到只包含 '1' 的最大正方形,并返回其面积。

方法一:动态规划 

#方法一:动态规划
def maximalSquar(matrix):
    dp=[[0]*(len(matrix[0])+1) for i in range(len(matrix)+1)] #dp[i][j] 表示以该位置为右下角的能构成的最大正方形
    res=0
    for i in range(len(matrix)):
        for j in range(len(matrix[i])):
            if matrix[i][j]=='1':
                dp[i][j]=min(dp[i-1][j-1],dp[i-1][j],dp[i][j-1])+1 #状态转移方程,求可能的最大边长,要考虑限制条件
            res=max(res,dp[i][j])
    return res*res

2.为运算表达式设计优先级 

给你一个由数字和运算符组成的字符串 expression ,按不同优先级组合数字和运算符,计算并返回所有可能组合的结果。你可以 按任意顺序 返回答案。

生成的测试用例满足其对应输出值符合 32 位整数范围,不同结果的数量不超过 104 。

方法一:递归+分冶 

#方法一:递归+分冶
def diffWaysToCompute(expression):
    if expression.isdigit():
        return [int(expression)] #是数字则返回数字
    res=[] #保存结果
    for i in range(len(expression)):
        if expression[i] in ['+','-','*']: 
            left=diffWaysToCompute(expression[:i]) #递归,分成左右两边求解两边可能的结果
            right = diffWaysToCompute(expression[i + 1: ])
            for l in left:
                for r in right:
                    if expression[i]=='+':
                        res.append(l+r)
                    elif expression[i]=='-':
                        res.append(l-r)
                    elif expression[i]=='*':
                        res.append(l*r) #两边可能的组合
    return res

3.丑数 II 

给你一个整数 n ,请你找出并返回第 n 个 丑数 。

丑数 就是只包含质因数 2、3 和/或 5 的正整数。

方法一:三指针 

#方法一:三指针
def nthUglyNumber(n):
    res,a,b,c=[1 for i in range(n)],0,0,0
    for i in range(1,n):
        x1,x2,x3=res[a]*2,res[b]*3,res[c]*5  #等于前面的丑数*2/3/5
        res[i]=min(x1,x2,x3)      #当前位置的丑数比前一个丑数大的最小的丑数
        if res[i]==x1:
            a+=1    #指针移动,避免重复
        if res[i]==x2:
            b += 1
        if res[i]==x3:
            c+=1
    return res[-1]

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

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

相关文章

十三、【画笔工具组】

文章目录 画笔工具铅笔工具颜色替换工具混合器画笔工具 画笔工具跟混合器画笔工具,是我们平时使用频率较高的两款工具: 画笔工具 可以把画笔工具看成我们用的毛笔,使用时可以在拾色器里边选择我们需要的画笔颜色,可以把拾色器当做我们画画时用的一个颜料盘&#xf…

健效达海豚妈妈儿保项目推介会盛大启幕,聚焦互联网+精准医疗

2023年10月12日,由上海健启星科技发展有限公司和北京安智因生物技术有限公司联合主办的“2023互联网精准医学平台助力基层医疗|海豚妈妈儿保项目推介会”在中国苏州盛大启幕。 本次项目推介会得到国内行业专家、权威学者、国内知名三甲名医教授、头部企业、学术大咖…

grafana接入OpenTSDB设置大盘语法

目录 1、filter过滤语法1.1 精准匹配1.2 正则匹配1.3 通配符匹配 完整示例1、 展示应用app的CPU利用率监控2)展示应用app的在线核数 1、filter过滤语法 1.1 精准匹配 literal_or : tagv的过滤规则: 精确匹配多项迭代值,多项迭代值以’|分隔&a…

【面试经典150 | 哈希表】两数之和

文章目录 Tag题目来源题目解读解题思路方法一:暴力枚举方法二:哈希表 写在最后 Tag 【哈希表】【数组】 题目来源 1. 两数之和 题目解读 给定一个下标从 1 开始按照 非递减顺序排列 的整数数组 numbers,找出两数之和等于 target 的两个数&…

软件测试学习(五)

报告发现的问题 设法修复软件缺陷 ●没有足够的时间。在任何一个项目中,通常是软件功能太多,而代码编写人员和软件测试人员太少,而且进度中没有留出足够的空间来完成项目。假如你正在制作税务处理程序,4月15日 (赶在应付税务检查…

计算机毕业设计选什么题目好?springboot 高校学生综合测评管理系统

✍✍计算机编程指导师 ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡ Java实战 |…

枚举探秘:Java中的神奇力量!

在 Java 枚举出现之前,通常会使用常量类来表示一组固定的常量值,直到Java 1.5之后推出了枚举,那么枚举类型有哪些特点,它比常量类又好在哪里呢。 本文将分析一下枚举的特点及用法。 一、什么是枚举 Java 枚举(Enum&a…

leetcode 75. 颜色分类

2023.10.13 题目不让用sort方法&#xff0c;所以先用冒泡排序做了一下&#xff1a; 冒泡排序 class Solution {public void sortColors(int[] nums) {for(int i0; i<nums.length-1; i){for(int j0; j<nums.length-1; j){if(nums[j] > nums[j1]){int temp nums[j];n…

嵌入式实训室建设方案

嵌入式实训室概述 随着物联网和人工智能的快速发展,嵌入式技术迎来了发展机遇的同时,也给高校的嵌入式系统课程带来了挑战。嵌入式系统具有体积小、功能强、可靠性高等特点,已经广泛应用于各个领域,深入人们生活方方面面,对应培养多样化、高端化人才的需求。因此,越来越多高校…

信号弹图像立体匹配算法研究

目录 摘 要............................................. 3 第一章 绪论................................... 6 1.1 研究课题背景.......................... 6 1.2 立体匹配技术国内外发展现状............ 7 1.3 课题研究的目的...............…

代码随想录算法训练营第天十九天丨 二叉树part06

654.最大二叉树 思路 最大二叉树的构建过程如下&#xff1a; 对于这道题&#xff0c;思路整体模仿的是昨天的 根据中后序遍历构造二叉树 的解题思路。 直接看代码&#xff1a; class Solution {//用于快速查找private Map<Integer,Integer> map;public TreeNode cons…

3.6 空值的处理

思维导图&#xff1a; **3.6 空值的处理** 在前面的章节中&#xff0c;我们已经多次接触到了空值&#xff08;NULL&#xff09;的概念及其处理方式。在这一节中&#xff0c;我们将系统性地深入探讨空值的问题。 **定义&#xff1a;** 空值表示“不知道”、“不存在”或“无意…

云计算是什么?学习云计算能做什么工作?

很多人经常会问云计算是什么&#xff1f;云计算能干什么&#xff1f;学习云计算能做什么工作&#xff1f;其实我们有很多人并不知道云计算是什么&#xff0c;小知今天来给大家讲讲学习云计算能做什么。 中国的云计算行业目前正处于快速发展阶段&#xff0c;随着互联网和数字化…

介绍使用Photoshop制作ico图标

文章目录 说在前面安装制作插件制作ico 说在前面 Photoshop可以通过ICOFormat.8bi插件生成ico&#xff0c;但需要我们自行安装&#xff0c;安装过程很简单。 安装制作插件 下载地址&#xff1a; http://www.telegraphics.net/sw/ 下载完后解压文件得到下面这样的文件&#…

MySQL数据库的基本操作一

目录 什么是MySQL数据库? 数据库的基本操作 数据库操作 表操作 MySQL的增删改查 插入操作 查找操作 修改操作 删除操作 什么是MySQL数据库? MySQL 是一个关系型数据库管理系统&#xff0c;由瑞典 MySQL AB 公司开发&#xff0c;目前属于 Oracle 公司。MySQL 是一种关…

Zalo是什么?海外推广怎么做?

zalo是一款海外流行的通讯软件&#xff0c;2012年正式发布&#xff0c;至今已经拥有约2亿的用户&#xff0c;分别在越南、美国、缅甸、日本、台湾、泰国、韩国、马来西亚、沙乌地阿拉伯、安哥拉、斯里兰卡、捷克、俄罗斯地区上架。 zalo的越南用户数量很多&#xff0c;是越南地…

实操指南|如何用 OpenTiny Vue 组件库从 Vue 2 升级到 Vue 3

前言 根据 Vue 官网文档的说明&#xff0c;Vue2 的终止支持时间是 2023 年 12 月 31 日&#xff0c;这意味着从明年开始&#xff1a; Vue2 将不再更新和升级新版本&#xff0c;不再增加新特性&#xff0c;不再修复缺陷 虽然 Vue3 正式版本已经发布快3年了&#xff0c;但据我了…

c++视觉处理---直方图均衡化

直方图均衡化 直方图均衡化是一种用于增强图像对比度的图像处理技术。它通过重新分布图像的像素值&#xff0c;以使图像的直方图变得更均匀&#xff0c;从而提高图像的视觉质量。在OpenCV中&#xff0c;您可以使用 cv::equalizeHist 函数来执行直方图均衡化。以下是 cv::equal…

Xcode 14.3.1build 报错整理

1、Command PhaseScriptExecution failed with a nonzero exit code 2、In /Users/XX/XX/XX/fayuan-mediator-app-rn/ios/Pods/CocoaLibEvent/lib/libevent.a(buffer.o), building for iOS Simulator, but linking in object file built for iOS, file /Users/XX/XX/XX/fayuan…

ASAN入门参考

目录 Asan 是什么&#xff1f; Asan 功能 缓冲区溢出 悬空指针&#xff08;引用&#xff09; 非法释放 内存泄漏 如何使用 实验环境 内存泄露检查 demo1 demo2 堆缓冲区溢出 栈缓冲区溢出 使用悬空指针 使用栈上返回的变量 使用退出作用域的变量/内存 重复释放…