22 5月 2020

leetcode第四题

原题https://leetcode.com/problems/median-of-two-sorted-arrays/

内容为两个排序好的非空列表,求这两个表之间的中位数。难点在对时间复杂度有要求。

class Solution:
    def findMedianSortedArrays(self, nums1: List[int], nums2: List[int]) -> float:
        lis=nums1+nums2
        lis=sorted(lis)
        return lis[int(len(lis)/2)] if (len(lis)%2)!=0 else (lis[int(len(lis)/2)-1]+lis[int(len(lis)/2)])/2
        
21 5月 2020

leetcode第三题

原题https://leetcode.com/problems/longest-substring-without-repeating-characters/submissions/

经典题 最长子窜长度

class Solution:
    def lengthOfLongestSubstring(self, s: str) -> int:
        if s=="":
            return 0
        
        max1 = 1
        for i in range(0,len(s)-1):
            b=[]
            b.append(s[i])
            for j in range(i+1,len(s)) :
            
                if s[j] not in b:
                    b.append(s[j])
                else:
                    max1=(len(b) if len(b)>max1 else max1)#遇到重复立马打断循环 计数
                    break
                #print(b)
            max1=(len(b) if len(b)>max1 else max1)#没有遇到任何重复 计数
            
        
        
        return max1
        
        
21 5月 2020

leetcode第一题解法1

原题https://leetcode.com/problems/two-sum/submissions/

题目内容 寻找列表两个数之和为指定数字的位置

 

class Solution:
    def twoSum(self, nums: List[int], target: int) -> List[int]:
        b=[]
        for i,val in enumerate(nums):
            tmp=nums[i+1:]
            if (target-val) in tmp:
                b.append(i)
                b.append(i+1+tmp.index(target-val))
        return b
21 5月 2020

leetcode第二题解法1

题目:https://leetcode.com/problems/add-two-numbers/

两个单链表相加,输出一个单链表

# Definition for singly-linked list.
# class ListNode:
#     def __init__(self, val=0, next=None):
#         self.val = val
#         self.next = next
class Solution:
    def backNode(self,node:ListNode)->int:
        back =0
        if node is None:
            return back
        cur = node
        cnt=-1
        while cur is not None:
            cnt+=1
            back+=cur.val*(10**cnt)
            cur = cur.next
        return back
    
    def genNode(self,l1:list)->ListNode:
        
        head = ListNode(l1[0])
        p=head
        
        for i in range(1,len(l1)):
            
            p.next=ListNode(l1[i])
            p=p.next
        return head
            
            
    
    def addTwoNumbers(self, l1: ListNode, l2: ListNode) -> ListNode:
        print (self.backNode(l1))
        print (self.backNode(l2))
        sum=self.backNode(l1)+self.backNode(l2)
        list1=[int(x) for x in str(sum)]
        print (list1[::-1])
        list2=list1[::-1]
        
        
        return self.genNode(list2)
10 4月 2020

windows恢复u盘启动器的分区

之前玩各种固件,所以刷了很多u盘启动器,现在想恢复还得折腾下,下面记录个比较简单的方式。

1.打开cmd

2.输入 diskpart #进入磁盘管理工具

3.继续输入 lis dis #查看当前磁盘分区

4.输入 sel dis 1 #选择要恢复的磁盘

5.输入 clean #清除磁盘

6.输入 create partition primary #新建主分区

7.直接在我的电脑里格式化就可以正常使用了

09 4月 2020

MAC快速制作u盘启动器

适合将iso或者img镜像写入到u盘等介质中。

1.diskutil list #查看当前磁盘分区

2.diskutil unmountDisk /dev/disk2 #卸载要写的介质

3.sudo dd if=lubuntu-16.04.dmg of=/dev/rdisk2 bs=4m #快速写入镜像

4.iostat -w 2 #新开一个终端,查看第3步的镜像写入进度

5.diskutil eject /dev/disk2 #弹出介质