学习日记day37

Day37_1127

专注时间:6H17min

每日任务:计算机网络50分钟( 66 分钟),搜广推90分钟~上不封顶+手撕目录里的算法(0),二刷hot100算法题2道(完成 2 道),刑法实务考试复习50分钟( 125min,最后一次课认真听了,真是好课啊,自己喜欢,而且不用打卡签到点名互动

学习内容: 如上

总结与心得: 专注时长破纪录,这就是周四的强度,主要是课上时间没浪费,但是REC学的还是特别少啊,没动力学他,不能这样,而且总是放到最后去学。晚上再复习刑法PPT吧,弄完别的就去REC。

《11.盛水最多的容器》

AC

python 复制代码
class Solution(object):
    def maxArea(self, height):
        """
        :type height: List[int]
        :rtype: int
        """
        i,j = 0,len(height)-1
        res = 0
        while i<j:
            h = min(height[i],height[j])
            res = max(res,h*(j-i))
            if height[i]<=height[j]:
                i+=1
            else:
                j-=1
        return res

超时:

python 复制代码
class Solution(object):
    def maxArea(self, height):
        """
        :type height: List[int]
        :rtype: int
        """
        n = len(height)
        res = 0
        for i in range(n):
            for j in range(i+1,n):
                h = min(height[i],height[j])
                res = max(res,h*(j-i))
        return res

《15.三数之和》

超时代码,暴力

python 复制代码
class Solution(object):
    def threeSum(self, nums):
        """
        :type nums: List[int]
        :rtype: List[List[int]]
        """
        res = []
        n = len(nums)
        if n < 3:
            return res
        nums.sort()
        for i in range(n):
            if i>0 and nums[i]==nums[i-1]:
                continue
            for j in range(i+1,n):
                if j>i+1 and nums[j]==nums[j-1]:
                    continue
                for k in range(j+1,n):
                    if k>j+1 and nums[k]==nums[k-1]:
                        continue
                    if nums[i]+nums[j]+nums[k]==0:
                        short_res = []
                        short_res.append(nums[i])
                        short_res.append(nums[j])
                        short_res.append(nums[k])
                        res.append(short_res)
        return res
        

AC:

python 复制代码
class Solution(object):
    def threeSum(self, nums):
        """
        :type nums: List[int]
        :rtype: List[List[int]]
        """
        n = len(nums)
        if not nums or n<3:
            return []
        res = []
        nums.sort()
        for i in range(n):
            if nums[i]>0:
                return res
            if i>0 and nums[i]==nums[i-1]:
                continue
            l,r = i+1,n-1
            while l<r:
                if nums[i]+nums[l]+nums[r] == 0 :
                    res.append([nums[i],nums[l],nums[r]])
                    while l<r and nums[l]==nums[l+1]:
                        l+=1
                    while l<r and nums[r]==nums[r-1]:
                        r-=1
                    l+=1
                    r-=1
                elif nums[i]+nums[l]+nums[r]>0:
                    r-=1
                else:
                    l+=1
        return res
                
相关推荐
西岸行者4 天前
学习笔记:SKILLS 能帮助更好的vibe coding
笔记·学习
悠哉悠哉愿意4 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
别催小唐敲代码4 天前
嵌入式学习路线
学习
毛小茛4 天前
计算机系统概论——校验码
学习
babe小鑫4 天前
大专经济信息管理专业学习数据分析的必要性
学习·数据挖掘·数据分析
winfreedoms4 天前
ROS2知识大白话
笔记·学习·ros2
在这habit之下4 天前
Linux Virtual Server(LVS)学习总结
linux·学习·lvs
我想我不够好。4 天前
2026.2.25监控学习
学习
im_AMBER4 天前
Leetcode 127 删除有序数组中的重复项 | 删除有序数组中的重复项 II
数据结构·学习·算法·leetcode
CodeJourney_J4 天前
从“Hello World“ 开始 C++
c语言·c++·学习