#-*- coding: UTF-8 -*- #求两个集合的交集class Solution(object):    def intersection(self, nums1, nums2):       resultList=list(set(nums1).intersection(set(nums2)))       return resultListsol=Solution()print sol.intersection(nums1=[1, 2, 2, 1], nums2=[2,2])…
#-*- coding: UTF-8 -*- #既然不能使用加法和减法,那么就用位操作.下面以计算5+4的例子说明如何用位操作实现加法:#1. 用二进制表示两个加数,a=5=0101,b=4=0100:#2. 用and(&)操作得到所有位上的进位carry=0100;#3. 用xor(^)操作找到a和b不同的位,赋值给a,a=0001:#4. 将进位carry左移一位,赋值给b,b=1000:#5. 循环直到进位carry为0,此时得到a=1001,即最后的sum.#!!!!!!关于负数的运算.…
#-*- coding: UTF-8 -*- class Solution(object):    def intersect(self, nums1, nums2):                if len(nums1)<len(nums2):            tmp=nums1            nums1=nums2            nums2=tmp               tmpdic={}               for num in nums1:    …
#-*- coding: UTF-8 -*- #两种方法#方法1:#计算出A和B两个链表的长度分别为m.n;#长度长的链表先走m-n步,之后再一次遍历寻找#方法2:#先走到一个链表的尾部,从尾部开始走:#跳到另一个链表的头部#如果相遇,则相遇点为重合节点class Solution(object):    def getLinkLenth(self,head):        lenth=0        while head!=None:            lenth+=1        …
#-*- coding: UTF-8 -*- #AC源码[意外惊喜,还以为会超时]class Solution(object):    def twoSum(self, nums, target):        """        :type nums: List[int]        :type target: int        :rtype: List[int]        """         for i in xrange(…
#-*- coding: UTF-8 -*-#利用strip函数去掉字符串去除空格(其实是去除两边[左边和右边]空格)#利用split分离字符串成列表class Solution(object):    def lengthOfLastWord(self, s):        """        :type s: str        :rtype: int        """        if s==None:return 0     …
#-*- coding: UTF-8 -*-#需要考虑多种情况#以下几种是可以返回的数值#1.以0开头的字符串,如01201215#2.以正负号开头的字符串,如'+121215':'-1215489'#3.1和2和空格混合形式[顺序只能是正负号-0,空格位置可以随意]的:'+00121515'#4.正数小于2147483647,负数大于-2147483648的数字#其他的情况都是返回0,因此在判断 是把上述可能出现的情况列出来,其他的返回0#AC源码如下class Solution(object…
Write a program to find the node at which the intersection of two singly linked lists begins. For example, the following two linked lists: A: a1 → a2 ↘ c1 → c2 → c3 ↗ B: b1 → b2 → b3 begin to intersect at node c1. 题意: 给两个可能相交的链表,求出其交点位置. 思路: 1.将其中一条链…
#-*- coding: UTF-8 -*-class Solution(object):    def compareVersion(self, version1, version2):        """        :type version1: str        :type version2: str        :rtype: int        """        versionl1=version1.split('.'…
class Solution(object):    def convertToTitle(self, n):        """        :type n: int        :rtype: str        """        res=''        while n>0:            tmp=n            n=(n-1)/26            res+=chr(65+(tmp-1)%26)…