自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 资源 (2)
  • 收藏
  • 关注

原创 LeetCode # 861 行/列翻转矩阵,使各行代表的二进制数之和最大

行翻转和列翻转的顺序其实不影响最后结果,因此可以先考虑所有行都翻完,再翻转所有列;为了使最后相加的结果最大,显然应该使每一行都是尽量最高位为1,以加出最大的2的幂次方,根据翻转的规则,至少可以保证第一列全部翻为1(不是1的行做一下翻转即可),因此先进行行翻转把所有行的第一个值翻为1;剩下的列为了使他们总的加给结果的增益最大,显然应该从第二列往后,每列都是尽量使1最多,这可以通过对每列进行列翻转实现(如果这一列的0个数比1多,翻转该列即可)。为了提高效率,其实可以直接统计每列的1个数,然后取count.

2020-12-07 10:51:58 254

原创 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 219

原创 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 137

原创 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 420

原创 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 264

原创 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 658

转载 【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 1424

原创 图像处理之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 5891

原创 Python的异常检测:try-except

Python中检测处理异常是非常重要的,这可以增加代码的健壮性,我们在写python程序的时候,会可能会遇到一些不可预料的情况,一旦遇到这些情况,运行时程序便可能会崩溃。比如:读写文件时候文件打开错误或者文件写入错误,写爬虫时网络请求失败,返回错误404.再或者函数处理一些不确定参数时候,都可以用到异常捕获。异常可以通过 try 语句来检测. 任何在 try 语句块里的代码都会被监测, 检查有...

2020-02-19 19:18:26 2901

原创 jar包和war包的介绍和区别

做Java开发,jar包和war包接触的挺多的,有必要对它们做一个深入的了解,特总结整理如下:1.jar包的介绍JAR(Java Archive,Java 归档文件)是与平台无关的文件格式,它允许将许多文件组合成一个压缩文件。JavaSE程序可以打包成Jar包(J其实可以理解为Java了)。JAR 文件格式以流行的 ZIP 文件格式为基础。与 ZIP 文件不同的是,JAR 文件不仅用于压缩和...

2020-02-19 08:08:14 62

原创 LeetCode #53 求数组的最大子序列

题目分析:首先,要求的最大子序并没有规定长度,它的取值范围可以是1~len(num)。如果认为一段和为正值的子序列会对最终的最大子序产生增益效果,那和为非正值的子序列对最大和就没有任何增益。用sum记录当前的子序的和,依次考虑是否将后一个新的数值num加到sum上:如果加上新的数后sum>0,说明它对最大和ans是有增益效果的,那就可以把新的数字加上;如果加上新的数后sum<=0了,...

2020-02-11 22:24:30 107

数据结构李秀坤-2线性表

哈尔滨工业大学李秀坤老师主讲的数据结构,可以搭配爱课程上的网课一起使用。

2018-10-09

数据结构李秀坤-1绪论

哈尔滨工业大学李秀坤老师主讲的数据结构,可以搭配爱课程上的网课一起使用。

2018-10-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除