每日一练
魚香肉丝盖饭
这个作者很懒,什么都没留下…
展开
-
旋转图像问题【python实现】
问题描述:给定一个 n × n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。你必须在 **原地旋转图像,这意味着你需要直接修改输入的二维矩阵。**请不要使用另一个矩阵来旋转图像。示例 1:输入:matrix = [[1,2,3],[4,5,6],[7,8,9]]输出:[[7,4,1],[8,5,2],[9,6,3]]示例 2:输入:matrix = [[5,1,9,11],[2,4,8,10],[13,3,6,7],[15,14,12,16]]输出:[[1.原创 2022-05-14 17:21:29 · 563 阅读 · 0 评论 -
字母异位分组【python实现】
文章目录问题描述:实现方式:result:问题描述:给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。示例:输入:[eat", "tea", "tan", "ate", "nat", "bat"]输出:[[ate","eat","tea"],["nat","tan"],["bat"]]说明:所有输入均为小写字母。不考虑答案输出的顺序。实现方式:挨个拿到text中的单词,并把其字母放到集合中找后面的单词字母生成的集合,是否和当前集合一样若原创 2022-05-09 14:27:46 · 304 阅读 · 0 评论 -
柱状图中最大的矩形【python实现】
文章目录问题描述:实现方式:result:问题描述:给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。求在该柱状图中,能够勾勒出来的矩形的最大面积。以上是柱状图的示例,其中每个柱子的宽度为 1,给定的高度为 [2,1,5,6,2,3]。图中阴影部分为所能勾勒出的最大矩形面积,其面积为 10 个单位。示例:输入: [2,1,5,6,2,3]输出: 10实现方式:遍历每一个柱状图的高度每拿到一个高度,分别向前向后找,下一个是不是比他高,找到原创 2022-05-09 00:40:23 · 203 阅读 · 0 评论 -
编写程序实现素数处理的功能 【python实现】
问题描述:编写Python程序实现素数处理的功能,要求如下:(1)从键盘输入一个整数X,编写一个函数Find(x=100),找出1—X之间的所有的素数(即质数),并将这些素数按照升序存放在列表 prime_list []中。(2)在程序中编写一个函数delete_seven( prime_list),将 prime_list []中个位含有7的素数删除;【程序要求:】(1)有引导用户键盘输入的提示信息,言语要恰当;(2)函数Find(x=100)实现要正确,实现列表 prime_list [].原创 2022-05-08 14:11:48 · 1787 阅读 · 0 评论 -
爬楼梯(斐波那契数列)【python实现】
问题描述:假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?**注意:**给定 n 是一个正整数。示例 1:输入: 2输出: 2解释: 有两种方法可以爬到楼顶。1. 1 阶 + 1 阶2. 2 阶示例 2:输入: 3输出: 3解释: 有三种方法可以爬到楼顶。1. 1 阶 + 1 阶 + 1 阶2. 1 阶 + 2 阶3. 2 阶 + 1 阶实现方式:def climbStairs(n): i.原创 2022-05-08 12:55:32 · 459 阅读 · 0 评论 -
输出整数全排列【python实现】
问题描述:输入整数n(3<=n<=7),编写程序输出1,2,…,n整数的全排列,按字典序输出。例:输入:3输出:123 132 213 231 312 321实现方式:import randomn = int(input("请输入一个3~7之间的整数:"))t = list()t1 = set()count = 1for i in range(1, n + 1): t.append(str(i))for i in range(1, n + 1): c.原创 2022-05-07 12:35:56 · 2438 阅读 · 0 评论 -
最长有效括号【python实现】
文章目录问题描述:实现方式:result:问题描述:给你一个只包含 '(' 和 ')' 的字符串,找出最长有效(格式正确且连续)括号子串的长度。示例 1:输入:s = "(()"输出:2解释:最长有效括号子串是 "()"示例 2:输入:s = ")()())"输出:4解释:最长有效括号子串是 "()()"示例 3:输入:s = ""输出:0实现方式:def theLongestValidBracket(s): flag = 0 element = li原创 2022-05-06 15:13:38 · 553 阅读 · 0 评论 -
以特殊格式处理连续增加的数字【python实现】
文章目录问题描述:实现方式:result:问题描述:给出一串数字, 程序要把数字按照这样的格式输出,把连续增加的数字用 [x-y] 的形式表示,只显示这一组顺序数字的首位两个数字,不连续增加的数字单独列出。例如:输入:1, 2, 3, 4, 5, 8, 10, 11, 12, 13, 20, 21, 22;输出:[1-5] [8] [10-13] [20-22]。实现方式:"""all_list=[tmp0,tmp1,tmp2,tmp3,.....]"""seq = list(ma原创 2022-05-06 10:56:09 · 200 阅读 · 0 评论 -
杨辉三角形问题【python实现】
文章目录问题描述:实现方式:result:学习传送门:问题描述:给定一个非负索引 rowIndex,返回「杨辉三角」的第 rowIndex 行。在「杨辉三角」中,每个数是它左上方和右上方的数的和。示例 1:输入: rowIndex = 3输出: [1,3,3,1]示例 2:输入: rowIndex = 0输出: [1]示例 3:输入: rowIndex = 1输出: [1,1]实现方式:def yanghuiTriangle(rowIndex): if rowInd原创 2022-05-06 10:07:13 · 344 阅读 · 0 评论 -
最长回文串【python实现】
问题描述给你一个字符串 s,找到 s 中最长的回文子串。示例 1:输入:s = “babad”输出:“bab”解释:“aba” 同样是符合题意的答案。示例 2:输入:s = “cbbd”输出:“bb”示例 3:输入:s = “a”输出:“a”示例 4:输入:s = “ac”输出:“a”实现方式def maxPalindromeString(s): maxnum = 0 if len(s) <= 2: return len(s), s.原创 2022-04-30 18:20:28 · 1806 阅读 · 0 评论 -
求其两个正整数之间的偶数和。【python实现】
问题描述输入起始和结束的正整数,求其两个正整数之间的偶数和。例:输入:0 10返回:30(算头尾) 20(不算头尾)实现方式x1 = input("请输入起始数:")x2 = input("请输入结束数:")a = int(x1)b = int(x2)sum1 = 0for i in range(a, b + 1): if i % 2 == 0: sum1 += i else: i += 1sum2 = 0for i in ran.原创 2022-04-26 13:53:26 · 4478 阅读 · 0 评论 -
最大矩形问题【python实现】
问题描述给定一个仅包含 0 和 1 、大小为 rows x cols 的二维二进制矩阵,找出只包含 1 的最大矩形,并返回其面积。示例 1:输入:matrix = [["1","0","1","0","0"],["1","0","1","1","1"],["1","1","1","1","1"],["1","0","0","1","0"]]输出:6解释:最大矩形如上图所示。示例 2:输入:matrix = []输出:0示例 3:输入:matrix = [["0"]]输出:0.原创 2022-04-23 07:36:16 · 953 阅读 · 0 评论 -
生成旋转矩阵【python实现】
文章目录问题描述实现方式result问题描述给你一个正整数 n ,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix 。输入:n = 3输出:[[1,2,3],[8,9,4],[7,6,5]]示例 2:输入:n = 1输出:[[1]]实现方式手动写几个矩阵我们就会发现螺旋矩阵每一层边的特点。例如:3*3,他换向的顺序为,3 2 2 1 1(每换向到一条新的边,边的数有多少,不包含上一条边的重复数)4*4,4 3 3 2 2原创 2022-04-19 16:13:34 · 2081 阅读 · 0 评论 -
最后一个单词的长度【python实现】
问题描述给你一个字符串s,由若干单词组成,单词之间用空格隔开。返回字符串中最后一个单词的长度。如果不存在最后一个单词,请返回 0 。单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。示例 1:输入:s = “Hello World”输出:5示例 2:输入:s = " "输出:0实现方式倒序遍历字符串,找到第一个" "的时候记录下索引id,对原字符串进行切片s[len(s)-index:]def returnLastWordsLength(s): if len(s.原创 2022-04-15 13:11:30 · 1046 阅读 · 0 评论 -
最大公约数和最小公倍数问题【python实现】
文章目录问题描述实现方式result问题描述要求求出两个给定正整数的最大公约数和最小公倍数。例:输入第一个数字: 100输入第二个数字: 1520最大公约数为 20 最小公倍数为 7600实现方式最大公约数最大不会超过两数中的较小数,先比较两数大小,遍历较小数,若是公约数则更新公约数变量,遍历完成,变量中存储的就是最大公约数。最小公倍数能同时整除两个数,且大于等于较大数,比较两数大小,从较大数累加找同时能整除两数的数为最小公倍数。def greatestComDiv(x, y):原创 2022-04-14 21:16:00 · 642 阅读 · 0 评论 -
合并两个有序链表问题【python实现】
问题描述将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例 1:输入:l1 = [1,2,4], l2 = [1,3,4]输出:[1,1,2,3,4,4]示例 2:输入:l1 = [], l2 = []输出:[]示例 3:输入:l1 = [], l2 = [0]输出:[0]实现方法“”"首先设定一个指针p始终指向两个链表中小的那个节点,然后开始遍历两个有序链表,任何一个遍历到结尾则结束。遍历时,谁小p指向谁,然后对应的链表.原创 2022-04-14 13:18:32 · 1128 阅读 · 0 评论 -
滑动窗口最大值问题【python实现】
文章目录问题描述实现方法result问题描述给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。示例 1:输入:nums = [1,3,-1,-3,5,3,6,7], k = 3输出:[3,3,5,5,6,7]解释:滑动窗口的位置 最大值[1 3 -1] -3 5 3 6 7 31 [3 -1 -3]原创 2022-04-13 21:44:29 · 718 阅读 · 0 评论 -
俄罗斯套娃信封问题【python实现】
文章目录问题描述实现方式result:问题描述俄罗斯套娃信封问题给你一个二维整数数组 envelopes ,其中 envelopes[i] = [wi, hi] ,表示第 i 个信封的宽度和高度。当另一个信封的宽度和高度都比这个信封大的时候,这个信封就可以放进另一个信封里,如同俄罗斯套娃一样。请计算 最多能有多少个 信封能组成一组“俄罗斯套娃”信封(即可以把一个信封放到另一个信封里面)。注意:不允许旋转信封。示例 1:输入:envelopes = [[5,4],[6,4],[6,7],[2原创 2022-04-13 15:47:24 · 692 阅读 · 0 评论 -
随机生成车牌号【python实现】
文章目录问题描述实现方式result问题描述某市随机生成车辆号牌的规则是:号牌字头为"某A-","某B-"等(字母为除了C以外的A~H范围内的大写字母),字头后面由5位字符组成,第1位必须是数字;第2、3、4、5位可以是任意数字或不含字母"O"的大写英文字母。程序功能为:调用自己设计的函数license_plate(),随机生成5个车辆号牌,等待输入一个心仪号码的序号选择号牌,并将其打印输出。实现方式import randomdef genrndchar(metachar):原创 2022-04-12 15:37:21 · 5525 阅读 · 0 评论 -
列表重复元素步长检测问题【python实现】
文章目录问题基于面向过程result:问题给定一个整数数组和一个整数 k,判断数组中是否存在两个不同的索引 i 和 j使得 nums [i] = nums [j],并且 i 和 j 的差的 绝对值 至多为 k。示例 1:输入: nums = [1,2,3,1], k = 3输出: true示例 2:输入: nums = [1,0,1,1], k = 1输出: true示例 3:输入: nums = [1,2,3,1,2,3], k = 2输出: false基于面向过程def原创 2022-04-12 15:18:57 · 263 阅读 · 0 评论 -
最大子序和问题【python两种方式实现】
文章目录问题:基于面向过程result:基于面向对象result:问题:给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。例:输入:nums = [-2,1,-3,4,-1,2,1,-5,4]输出:6解释:连续子数组 [4,-1,2,1] 的和最大,为 6 。示例 2:输入:nums = [1]输出:1示例 3:输入:nums = [0]输出:0示例 4:输入:nums = [-1]输出:-1示例 5:输入:nums =原创 2022-04-12 14:41:38 · 619 阅读 · 0 评论 -
基于面向过程的最小路径求和问题【python实现】
问题描述这是CSDN上每日一练的题目,随机生成一个二维矩阵,从左上角走到右下角,只考虑向右和向下无其他方向,求和最短的路径。官方的答案大家纷纷吐槽很狗血,我按照自己的理解写了一个。支持行列数相同的和行列数不同的矩阵,遇到相同值优先右行(后续继续进行优化)。实现方法"""作者:魚香肉丝盖饭日期:2022年04月10日"""import numpy as npsize = (10, 10)# 定义矩阵大小matrixmap = np.random.randint(1, 10,.原创 2022-04-10 15:27:02 · 288 阅读 · 0 评论