自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 EffectiveJava_1_考虑用静态工厂方法代替构造器_示例代码

自己在学习effective java中,附上自己的学习的时候想到的示例代码,算是做一个记录,有人能指正我弄错的地方是最好了。第一条,考虑用静态工厂方法替代构造器示例代码中写了一些方法,但是实际上可能并没有在main函数中去应用,当然也可以应用一些,之所以写出来是为了培养自己的习惯。示例代码:Main.javaimport com.test.*;public class Main {...

2020-05-01 22:46:20 204

原创 java.util.Vector常用的函数

总结几个常用的java.util.Vector的内置函数1.add(addElement)2.remove3.clear4.firstElement5.lastElement6.indexOf7.elements8.size9.capacity具体代码如下:import java.util.Vector;import java.util.Enumeration;publ...

2019-12-03 14:55:07 453

原创 java枚举类

导入代码import java.util.Enumeration;两个重要的内置方法1.hasMoreElements()2.nextElement()import java.util.Vector;import java.util.Enumeration;public class Test{ public static void main(String [] args) ...

2019-12-03 13:36:36 161

原创 Java_Character包装类内置函数学习

Character包装类中的内置函数的学习,具体包括:1.isLetter2.isDigit3.isWhitespace4.isUpperCase5.isLowerCase6.toUpperCase7.toLowerCase8.toString1.isLetter()该函数用于判断一个char类型的输入是否是字母,具体案例如下: public class Test { p...

2019-11-25 16:33:38 316

原创 tf.InteractiveSession和tf.Session的区别

记录一下,方便自己学习回顾tensorflow。区别本质:tf.InteractiveSession会将该回话注册为默认。具体体现:1.看看tf.Session()v1 = tf.constant(1)v2 = tf.constant(2)v3 = tf.add(v1, v2)sess = tf.Session()print(v3.eval())sess.close()这...

2019-09-10 11:27:44 214

原创 牛客网__剑指offer__机器人的运动范围__python

解题思路:利用bfs的思想,不断的向外扩展邻接节点,如果某一步扩展不到新的邻接节点,则停止循环,最后得到所有节点的数量即可。具体代码如下:# -*- coding:utf-8 -*-class Solution: def movingCount(self, threshold, rows, cols): # write code here #bfs思...

2019-08-05 20:57:31 142

原创 牛客网__剑指offer__矩阵中的路径__python

解题思路:利用递归的思想可以解决问题,总体来说,就是超左右前后四个方向的深度优先搜索的问题。具体代码如下:# -*- coding:utf-8 -*-class Solution: def hasPath(self, matrix, rows, cols, path): # write code here #1.左右前后方向中存在下一个字符,则可以考...

2019-08-05 10:55:30 158

原创 牛客网__剑指offer__滑动窗口的最大值__python

解题思路比较简单,具体的就放到代码中了。# -*- coding:utf-8 -*-class Solution: def maxInWindows(self, num, size): #1.直接暴力求解 #2.利用大顶堆来解决问题 #1 res = [] if size == 0: ...

2019-08-04 12:35:39 107

原创 牛客网__剑指offer__二叉搜索树的第k个节点__python

利用深度优先搜索,利用二叉搜索树的性质,我们用中序遍历的结果就是排序好的一个节点的列表,取出第K个即可。具体代码如下:# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# self.righ...

2019-07-31 14:16:01 138

原创 牛客网__剑指offer__序列化二叉树__python

具体思路用到了广度有限搜索的思想,然后对None节点特殊处理一下即可,具体的代码如下:# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# self.right = Noneclass So...

2019-07-31 13:53:09 177

原创 leetcode__二叉树的序列化与反序列化__python

解题思路:1.层层遍历的思路来序列化与反序列化即可,但是需要考虑空节点,以保证序列化与反序列化最终对应的都是同一个树。2.结合先序遍历和中序遍历的结果构成一个字符串同样也可以达到我们需要的效果。具体代码如下:# Definition for a binary tree node.# class TreeNode(object):# def __init__(self, x):...

2019-07-21 16:55:36 424

原创 leetcode__二叉树的最近公共祖先__python

解题思路:按照递归的思想即可解决本题。1.当root为p,q或者为null的时候返回本身;2.递归查找其左右子树;3.根据左右子树的结果,找到规则即可。具体代码如下:# Definition for a binary tree node.# class TreeNode:# def __init__(self, x):# self.val = x# ...

2019-07-20 17:27:00 202 1

原创 leetcode__二叉搜索树中第K小的元素__python

解题思路:深度优先搜索,采用中序遍历的方式,然后找到第k个元素即可。具体代码如下:# Definition for a binary tree node.# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# self.right =...

2019-07-20 15:06:17 169

原创 leetcode__常数时间插入、删除和获取随机元素__python

解题思路:按dict来保存即可在常数时间存取,然后随机返回dict的键值即可。具体代码如下:import randomclass RandomizedSet: def __init__(self): """ Initialize your data structure here. """ self.data = {...

2019-07-20 13:59:08 164

原创 leetcode__四数相加II__python

解题思路:将四个变成两两相加的和的两个集合,第一个集合是A和B的元素两两相加的结果,第二个集合是C和D的元素两两相加的所有结果,然后判断是否相加等于零,统计个数即可。用列表来解题class Solution: def fourSumCount(self, A: List[int], B: List[int], C: List[int], D: List[int]) -> int...

2019-07-20 13:43:13 190

原创 leetcode__Excel列表序号__python

解题思路:这里的思路其实非常简单,就是一种K进制的思路,不过这里是26个字母,所以是26进制。具体代码如下:class Solution: def titleToNumber(self, s: str) -> int: res = 0 for char in s: res = res * 26 + ord(char) - ...

2019-07-20 12:58:58 77

原创 leetcode__奇偶链表__python

解题思路:将奇数位置构成一个新链表,偶数位置的节点也构成一个新链表,然后拼接起来即可。具体代码如下:# Definition for singly-linked list.# class ListNode:# def __init__(self, x):# self.val = x# self.next = Noneclass Soluti...

2019-07-19 17:24:24 146

原创 leetcode__删除链表中的节点__python

解题思路:用下一个节点来替代本该节点即可,只需要做两次赋值即可。具体见如下代码:# Definition for singly-linked list.# class ListNode:# def __init__(self, x):# self.val = x# self.next = Noneclass Solution: de...

2019-07-19 17:01:55 88

原创 leetcode__回文链表__python

解题思路:简单的可以直接把所有数字提出来观察是不是回文即可,我们这里只讲一下进阶解法,可以将该链表切开切成两半,根据是奇数长度还是偶数长度自己微调一下即可,然后将其中的一段翻转,然后与另一端比较,如果依次val都相同,说明是回文,否则不是回文,这样做的时间复杂度是O(n),空间复杂度为O(1)。具体代码如下:# Definition for singly-linked list.# cla...

2019-07-19 16:51:03 118

原创 leetcode__反转链表__python

解题思路:比较简单,具体可以看代码,借助一些中间变量,做一个遍历就可以达到效果。具体代码如下:# Definition for singly-linked list.# class ListNode(object):# def __init__(self, x):# self.val = x# self.next = Noneclass S...

2019-07-19 16:19:47 245

原创 leetcoe__相交链表__python

解题思路:先得到两个链表的长度,假设长的为长度为a,# Definition for singly-linked list.# class ListNode(object):# def __init__(self, x):# self.val = x# self.next = Noneclass Solution(object): d...

2019-07-19 16:08:35 76

原创 leetcode__排序链表__python

解题思路:利用归并排序的思想,不过这里排序的不是列表,是一个链表。具体代码如下:# Definition for singly-linked list.# class ListNode(object):# def __init__(self, x):# self.val = x# self.next = Noneclass Solution...

2019-07-19 15:57:00 90

原创 leetcode__环形链表__python

解题思路:快慢指针的方法,当fast_ptr为None的时候,返回false,当fast_ptr等于slow_ptr的时候,返回True。具体代码如下:# Definition for singly-linked list.# class ListNode(object):# def __init__(self, x):# self.val = x# ...

2019-07-19 12:06:09 69

原创 leetcode__复制带随机指针的链表__python

解题思路:这道题可以用O(n)的解法来做,具体步骤如下:1.将每一个节点都复制一遍,并且将复制的节点紧跟着对应的节点之后,也就是说本来是123,就变成了112233。2.由于复制的时候,我们的复制节点的random节点都指向的是原始节点,我们也应该指向对应的复制节点,就将每个复制节点的现有random节点往后移动一次,就能完成校准。3.将原始链表和复制链表分离,112233变成123和12...

2019-07-19 11:50:10 91

原创 leetcode__逆波兰表达式求值__python

解题思路:利用栈的思想,遇到数字就push进去,遇到运算符号,将栈顶的两个元素拿来运算得到对应的值,pop掉两个运算的值,push进得到的值。注意:leetcode内置的int函数和我们平时的int函数有区别,所以在进行除法求值的时候我们需要修改一下,然后才能得到正确的值,细节可以看代码。具体代码如下:class Solution(object): def evalRPN(sel...

2019-07-18 19:36:41 152

原创 leetcode__扁平化嵌套列表迭代器__python

解题思路:这里需要注意,初始化的时候输入的nestedList里面的元素是上面的注释的定义的类别的实例。注意调用其中的方法,其余的就比较简单了。具体代码如下:# """# This is the interface that allows for creating nested lists.# You should not implement it, or speculate about...

2019-07-18 18:50:31 180

原创 leetcode__基本计算器II__python

解题思路:按照两个栈的思路去导入数字和数学操作,然后根据先乘除后加减的法则,找到第一个操作数和第二操作数即可。具体代码如下:class Solution: def calculate(self, s: str) -> int: string = '' for char in s: if char != ' ': ...

2019-07-18 18:03:37 439

原创 leetcode__滑动窗口最大值__python

解题思路:如果只是想做大这件事件非常简单,在每一段都取max即可,但是显然这样当k=n/2的时候不符合线性时间复杂度的要求,所以我们维护一个列表,放其中的k个数字,然后没加入一个新的数字的时候都对其做一定的判断,将不满足条件的元素变为false,然后pop掉最前面的元素以及前面的所有false,然后非常容易可以找到最大值。具体代码如下:class Solution: def max...

2019-07-17 19:17:46 249

原创 leetcode__前k个高频元素__python

解题思路:先对每个数字统计词频,然后根据词频来找到最大几个数字即可,在这里,k如果是不固定的,我们可以用极小堆来解决这个问题来得到最大的k个频数。具体代码如下:class Solution: def topKFrequent(self, nums: List[int], k: int) -> List[int]: my_dict = {} for...

2019-07-17 15:20:06 351 2

原创 leetcode__有序矩阵中第K小的元素__python

解题思路1:直接将所有的元素合成一个列表,排序后取出第k小的元素即可。具体代码如下:class Solution: def kthSmallest(self, matrix: List[List[int]], k: int) -> int: my_list = [] for tmp in matrix: my_list +...

2019-07-17 12:25:18 324

原创 leetcode__数组中的第K个最大元素__python

解题思路:1.如果是追求简洁代码,那直接sorted之后再取对应位置的值即可,这样做的时间复杂度是O(n*log(n))。class Solution: def findKthLargest(self, nums: List[int], k: int) -> int: return sorted(nums)[len(nums) - k]2.如果追求时间复杂度,...

2019-07-14 13:06:47 239

原创 leetcode__最小栈__python

解题思路:栈的功能的实现,在实现的过程中维持一个最小值的变量即可。具体代码如下:class MinStack: def __init__(self): """ initialize your data structure here. """ self.data = [] self.min = '#' ...

2019-07-14 12:57:26 142

原创 leetcode__除自身以外数组的乘积__python

解题思路:先正向保存累乘结果,再反向保存累乘结果,再将对应的值乘起来能得到最终的结果,append到res中即可。具体代码如下:class Solution: def productExceptSelf(self, nums: List[int]) -> List[int]: forward = [] backward = [] ...

2019-07-14 12:36:01 121

原创 leetcode__搜索二维矩阵II__python

解题思路:利用好排序信息,从右上角开始检查,做O(n+m)次判断即可找到是否含有对应的target。具体代码如下:class Solution: def searchMatrix(self, matrix, target): """ :type matrix: List[List[int]] :type target: int ...

2019-07-14 12:18:27 65

原创 leetcode__递增的三元子序列__python

解题思路:由于是要求的O(n)的时间复杂度,所以暴力解法一定是不可以的,但是如果利用好中间状态,就能解决好这道题。保存一个first作为我们现在认为比较小的数字,一个second作为我们任务比较小的第二个数字,当遇到一个比first更小的数字的时候我们不能立马就去将其代替first,所以我们需要将其保存下来,放到_first中以作备用,当遇到满足条件的下一个数字的时候,就可以用_first和对应...

2019-07-14 12:12:02 132

原创 leetcode__两个数组的交集II__python

解题思路:统计每个单词出现的个数,然后再将其在两个列表中出现的最少的次数找出来,放入这么多个此数字到res中,最后输出结果即可,时间复杂度为O(n)。具体代码如下:class Solution: def intersect(self, nums1: List[int], nums2: List[int]) -> List[int]: dict_one = {}...

2019-07-14 11:25:50 86

原创 leetcode__打乱数组__python

解题思路:直接利用random的shuffle函数即可。具体代码如下:import randomclass Solution: def __init__(self, nums: List[int]): self.original = nums[:] self.data = nums def reset(self) -> List...

2019-07-14 11:08:43 85

原创 leetcode__移动零__python

解题思路:这道题可以用O(n)的时间复杂度来解决,只需要利用两个指针即可,第一个指针用来记录需要插入新的非零值的位置,第二个指针用来找到需要插入的值的位置即可,然后对第二个指针做一次遍历,遍历的过程中第一个指针累加即可。具体代码如下:class Solution: def moveZeroes(self, nums: List[int]) -> None: ""...

2019-07-13 17:14:34 72

原创 leetcode__存在重复元素__python

解题思路:遍历一次即可,遍历的过程中,利用字典保存一个状态,如果一个字符在之前出现过,则返回True,最后如果没找到的话,返回False。具体代码如下:class Solution: def containsDuplicate(self, nums: List[int]) -> bool: my_dict = {} for num in nums...

2019-07-13 16:59:27 215

原创 leetcode__旋转数组__python

解题思路:这也是一道简单题,先处理玩旋转次数,然后再根据旋转次数给数组分段,然后分别赋值就好了;具体代码如下:class Solution: def rotate(self, nums: List[int], k: int) -> None: """ Do not return anything, modify nums in-place ins...

2019-07-13 15:52:38 128

网易新闻数据,用于中文文本分类,已经打好标签且预处理好了

有24000条新闻,共六个类别,直接用python3的pickle.load()该文件即可,是一个24000个元素的list,list的每个元素是一个tuple,tuple的第一个元素是与处理好的文本,第二个元素是对应的标签。

2019-04-12

effective c++.mobi,可直接用于kindle

mobi文件,可以直接放到kindle中阅读,也可以通过发送到个人的kindle邮箱中进行阅读,亲测可用,非常不错!

2019-03-14

空空如也

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

TA关注的人

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