Leetcode 60题了

该视频教程详细讲解了LeetCode中的核心算法,包括双指针技巧在不同场景的应用,如同向双指针、对撞双指针和快慢双指针;深入浅出地解析了二分查找法,并展示了如何在Python中实现;此外,还介绍了优化循环的滑动窗口方法,适用于数组中的定长问题。视频内容生动,适合Python初学者和进阶者提升算法能力。
摘要由CSDN通过智能技术生成

2021/12/14 

 Leetcode力扣必备算法知识和练习题|手画图解版【持续更新ing】_哔哩哔哩_bilibili

B站的一个视频,感觉讲的挺好的

是用python的代码写的

双链表:

 普通双指针:同向

对撞双指针: 有序链表

快慢双指针

二分查找:

class Solution:
    def search(self, nums: List[int], target: int) -> int:
        if not nums:
            return -1

        def median(a, b):
            return (a+b)//2
        
        
        left = 0
        right = len(nums)-1
        i = median(left, right)

        while left <= right:
            if nums[i] == target:
                return i
            if nums[i] < target:
                left = i + 1
                i = median(left, right)
            if nums[i] > target:
                right = i - 1
                i = median(left, right)
            

        return -1

滑动窗口:

减少while循环

数组中定长问题

递归:

递归: 翻转链表 真的nb。。。

回溯

深度优先

分治法 : 归并排序 169 53 215

大步迈向100题!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值