自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 leetcode之Find the Difference

这题是找出2个字符串不同的部分,只是多了一个字母。注意顺序有可能会错乱。使用collections包里面的Counter模块轻松搞定。from collections import Counterclass Solution(object): def findTheDifference(self, s, t): """ :type s: str

2016-08-30 00:13:15 575

原创 leetcode之First Unique Character in a String

恩,这题的难度分类是easy,的确也是这个难度。这题要求找出第一个非重复的字母的位置。我采用的方法是建立了一个dict,key是字母,而value是位置index。如果get(key)没有查到的话,说明这是一个新的字母,我们就把它和它的位置放入dict中,如果能查到说明要重复,则标记一下,将value改为-1,代表这个字母重复了。最后查values里面第一个非负的值就好class Solution(

2016-08-27 21:03:13 608

原创 leetcode之 Kth Smallest Element in a Sorted Matrix

这题是典型的运用堆和2分的题目。首先建立一个k大小的堆,然后用2分查找的方法每次向堆里面插入一个数据,将最后一个数据pop出去,一直保持堆的大小为k,这样的话就ok了,最后返回堆的最后一个数据。所用时间为nlogk。 但是仔细观察发现,如果A点被发现比堆里最后一个元素大,那么图中小正方形里的数据肯定都比堆的最后一个数据大,所以就不用比较了,要比较的是大的正方形减去小正方形的部分。class Sol

2016-08-16 01:42:04 524

原创 leetcode之Shuffle an Array

这题有了random模块的shuffle函数是非常简单的。只不过shuffle是直接改变list,需要先用一个中间的list进行替换,否则就改动了init里面的list。import randomclass Solution(object): def __init__(self, nums): """ :type nums: List[int]

2016-08-14 14:44:35 768

原创 leetcode之Insert Delete GetRandom O(1) - Duplicates allowed

还是用的list来解决。import randomclass RandomizedCollection(object): def __init__(self): """ Initialize your data structure here. """ self.list1 = [] def insert(self, val

2016-08-14 14:06:35 323

原创 leetcode之 Insert Delete GetRandom O(1)

这题也没什么说的,各种增删用list就可以解决了,最后用random.choice从list中随机取一个返回import randomclass RandomizedSet(object): def __init__(self): """ Initialize your data structure here. """ self

2016-08-14 13:42:07 332

原创 leetcode之Linked List Random Node

这题本身来讲是比较简单的。把所有的值放进一个list里,想取哪个取哪个。import random# Definition for singly-linked list.# class ListNode(object):# def __init__(self, x):# self.val = x# self.next = Noneclass Solu

2016-08-14 13:26:50 361

原创 leetcode之Random Note

几天没做,先做道简单的哈。这题就是将第一个string分解,如果第2个string没有相应的字母,或者字母的数量少于第一个,就说明不匹配。用python的collections包来解决。from collections import Counterclass Solution(object): def canConstruct(self, ransomNote, magazine):

2016-08-14 01:20:03 1231

空空如也

空空如也

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

TA关注的人

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