
python
IAMIDA
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
LeetCode # 861 行/列翻转矩阵,使各行代表的二进制数之和最大
行翻转和列翻转的顺序其实不影响最后结果,因此可以先考虑所有行都翻完,再翻转所有列;为了使最后相加的结果最大,显然应该使每一行都是尽量最高位为1,以加出最大的2的幂次方,根据翻转的规则,至少可以保证第一列全部翻为1(不是1的行做一下翻转即可),因此先进行行翻转把所有行的第一个值翻为1;剩下的列为了使他们总的加给结果的增益最大,显然应该从第二列往后,每列都是尽量使1最多,这可以通过对每列进行列翻转实现(如果这一列的0个数比1多,翻转该列即可)。为了提高效率,其实可以直接统计每列的1个数,然后取count.原创 2020-12-07 10:51:58 · 387 阅读 · 0 评论 -
LeetCode # 621 任务调度器
题目要求:给定一个任务列表tasks,没有顺序,其中元素为大写字母,各代表一个任务,同一个大写字母表示同一种任务;给定一个int值n,表示两个相同的任务之间必须要隔n个空的时间间隔,例如n=2表示两个任务‘A’间要安排等两个小时;现在要求计算:把这些任务按n个空位隔开,这样安排至少要安排为多长时间。返回一个int值。思想:两个相同任务间要隔n个位置,相当于如果有6个‘A’任务,那要把A任务全部做完,且每个之间相隔n,假设n=2,则至少要安排为:A _ _ A _ _ A _ _ A _ _原创 2020-12-05 16:20:13 · 287 阅读 · 0 评论 -
LeetCode #976 三角形最大周长
思想:组成三角形的充要条件:a+b>c。将A排序后,为了使周长最大,肯定是从后往前取,从最后一位c开始,依次判断前两位的数a, b之和是否比它大,只要满足,那a+c>b和b+c>a又一定成立(c已经大于a/b了),则abc可以构成三角形,且此时周长最大;如果不能满足,就继续往前找,直到找完所有A中元素。class Solution: def largestPerimeter(self, A: List[int]) -> int: res = 0原创 2020-11-29 15:48:50 · 212 阅读 · 0 评论 -
LeetCode # 283 数组里的0全都移到最后,其他保持原顺序
输入: [0, 1, 0, 3, 12]输出: [1, 3, 12, 0, 0]方法一(直接求非零元素的最终位置):用一个变量zero_num记录到目前为止遇到0的个数,当元素为0时就将其加一,然后跳过继续遍历下一个数;如果当前的数字不是0,根据zero_num我们可以知道它的最终位置。比如输入数组中,1之前出现过一个0,把这个0去除,等同于1要往前移一位;又如12之前出现过两个0,把这两个0去除,等同于12最终要往前移两位。所以每个非零数字当前下标减去zero_num就是它最终位置的下标,代表它原创 2020-11-19 10:34:22 · 577 阅读 · 0 评论 -
LeetCode #31 找出字典序下一个排列
字典序也就是从头开始,依次比较每个字符在ASCII码中的排位,例如a的排位在b之前,1的排位在3之前,如果字符相同,就继续往后比较。显然,一个只有数字的list要按字典序排列,以[1, 2, 3, 4]为例,应该为:[1, 2, 3, 4] -> [1, 2, 4, 3] -> [1, 3, 2, 4] -> [1, 3, 4, 2] -> [1, 4, 2, 3] -> [1, 4, 3, 2] -> [2, 1, 3, 4] -> [2, 1, 4, 3] -原创 2020-11-14 11:16:07 · 348 阅读 · 0 评论 -
Leetcode #328 链表奇偶节点分离
首先,链表的节点个数在2以下时(链表为空/只有一个节点/只有奇偶两个点)可以不用排序;题目的要求是让奇数点连成一条链,偶数点连成一条链,然后再把他们连接起来。所以整体思路是:用odd和even两个指针分别指向head和head.next,并奇、偶交替连接隔着的下下个点,即:# “=”左边的.next一般是指odd这个指针里存储的next地址值,右边的.next就是指odd指针指向的下一个节点。odd.next = odd.next.nexteven.next = even.next.next原创 2020-11-13 22:03:03 · 838 阅读 · 0 评论 -
【Python】scipy.misc 模块
Backto Python Index之前一直搞不懂 misc 的含义,后来查了官网,吐了一口老血: misc 是 miscellaneous 的缩写,杂项 的意思。代表没别的合适的地方放了,就放在这里了。官网的介绍是Miscellaneous routines (scipy.misc)Various utilities that don’t have another home.和图像...转载 2020-02-21 09:49:25 · 1640 阅读 · 0 评论 -
图像处理之PIL.Image与numpy.array之间的相互转换
1. PIL image转换成array当使用PIL.Image.open()打开图片后,如果要使用img.shape函数,需要先将image形式转换成array数组img = numpy.array(image)或者 img = np.asarray(image)array和asarray都可将结构数据转换为ndarray类型。但是主要区别就是当数据源是ndarray时,array...原创 2020-02-20 10:20:45 · 7529 阅读 · 0 评论