[Python]OD算法在OD实际运用转化参考清单

OD算法清单

算法 你的掌握程度 ADAS应用场景
合并区间 熟练 传感器视野重叠区合并、时间戳对齐区间合并
打家劫舍(环形DP) 熟练 AEB分级决策、路径规划的奖励最大化
最大子数组和 熟练 信号质量评估、连续帧置信度累积
岛屿数量(DFS/BFS) 熟练 障碍物聚类、可行驶区域分割
括号匹配递归版 熟练 嵌套协议的解析(如CAN FD的包结构)
螺旋矩阵III 熟悉 传感器扫描轨迹、路径覆盖规划
字符串交替提取 熟悉 多路传感器数据流交织解析
十进制转二进制 熟悉 信号编码/解码、状态位映射
字母异位词分组 熟悉 传感器ID归一化、同义信号归类

学习路线(分三个阶段)

第一阶段:直接映射(你最熟悉的算法 → 最直接的ADAS应用)

**目标:**​ 让你立刻看到算法在ADAS中的用途,建立信心。

周次 算法 ADAS应用 具体产出
第1周 合并区间 多传感器视野重叠区计算 写一个函数,输入多个雷达/摄像头的视野范围(区间),输出它们的重叠区域
第2周 打家劫舍 AEB分级决策 用DP决定"是否刹车"以及"刹多大力度",使安全收益最大
第3周 最大子数组和 信号质量评估 分析一段时间的传感器信号,找出最稳定的连续片段
第4周 岛屿数量 障碍物聚类 用DFS把激光雷达点云聚类成独立的障碍物

第二阶段:深入应用(需要一点领域知识的算法)

**目标:**​ 结合ADAS的专业场景,提升深度。

周次 算法 ADAS应用 具体产出
第5-6周 DFS/BFS 可行驶区域搜索、泊车路径规划 在栅格地图上找出一条可行路径
第7-8周 螺旋矩阵 传感器扫描轨迹模拟 模拟激光雷达的螺旋扫描模式
第9-10周 位运算 CAN信号解析 从CAN帧中提取车速、转速等信号(就是我们之前那道题)

第三阶段:综合实战(多个算法组合解决一个完整问题)

**目标:**​ 把多个算法串联成一个完整的ADAS功能模块。

周次 项目 涉及的算法 具体产出
第11-12周 简易AEB系统 合并区间 + 打家劫舍 + 最大子数组和 输入模拟传感器数据,输出刹车决策和置信度
第13-14周 障碍物检测与跟踪 岛屿数量 + DFS + 合并区间 输入点云数据,输出障碍物列表和轨迹
第15-16周 综合Demo 以上全部 一个完整的ADAS感知-决策流水线

本周任务(第1周):合并区间 → 传感器视野重叠区计算

问题描述

假设一辆车上有3个传感器:

  • 前置摄像头:视野范围 -30°, 30°(相对于车头方向)
  • 左前角雷达:视野范围 10°, 70°
  • 右前角雷达:视野范围 -70°, -10°

问:哪些角度范围被至少两个传感器覆盖?

这就是典型的合并区间问题变体------不是合并所有区间,而是找出重叠次数 ≥ 2 的区域。

解法思路

  1. 将所有区间的端点标记为"起点"或"终点"

  2. 排序后遍历,用一个计数器记录当前被多少个传感器覆盖

  3. 当计数器 ≥ 2 时,记录当前区间

    def find_overlap_zones(intervals):
    events = []
    for start, end in intervals:
    events.append((start, 1)) # 起点,覆盖数+1
    events.append((end, -1)) # 终点,覆盖数-1
    events.sort() # 按位置排序

    复制代码
     count = 0
     overlap_start = None
     result = []
     
     for pos, delta in events:
         if count >= 2 and overlap_start is not None:
             result.append((overlap_start, pos))
             overlap_start = None
         count += delta
         if count >= 2 and overlap_start is None:
             overlap_start = pos
     
     return result

    sensors = [(-30, 30), (10, 70), (-70, -10)]
    print(find_overlap_zones(sensors))

    输出:[(-30, -10), (10, 30)]

相关推荐
用户956256254293 小时前
跟做:Firecrawl 单页转 Markdown 再丢进沙箱总结
python·api
威哥爱编程4 小时前
模拟面试智能体开发实战 02:回答等半分钟,谁还愿意练?把服务端和流式输出搭起来
python·agent·harmonyos
威哥爱编程4 小时前
模拟面试智能体开发实战 01:面试挂了都不知道挂在哪?用 Python 给自己造一个随叫随到的 AI 面试官
python·agent·harmonyos
2601_967980114 小时前
Python行情API量化 02:顺序拉 20 要 2 秒?并发批量把时间压到 0.5 秒
python·api·限流·并发·量化
伞伞悦读4 小时前
【第81期】特征缩放怎么选:标准化、MinMax 与 Robust 的原理、泄漏对照和完整实验
人工智能·python·深度学习·机器学习
新*5 小时前
从一段 WebSocket 代码聊开:bytes 不是 zlib、binaryType 决定一切,15MB 大消息的零拷贝优化
javascript·python·websocket·性能优化·blob·zlib·arraybuffer
武子康5 小时前
驾驶轨迹换个坐标,就能给移动机器人用吗?
人工智能·算法·机器学习
David猪大卫6 小时前
【C++修炼】map 和 set 的使用
c语言·开发语言·数据结构·c++·经验分享·笔记·学习
卷无止境7 小时前
mathmodel-figure-templates 以及两个上手案例
后端·python