您的位置:首 页 > 言情小说 > AI时代:码农的涅盘重生 > AI时代:码农的涅盘重生目录 > 第121章 T厂技术一面(第2页/共3页)
返回目录 | 加入书签 | 推荐本书 | 收藏本页

AI时代:码农的涅盘重生 第121章 T厂技术一面(第2页/共3页)


****3*6*0**小**说**阅**读**网**欢**迎**您****

请用户自行鉴定本站广告的真实性及其合法性,本站对于广告内容不承担任何责任。

这道题要用最小堆(优先队列)加BFS的思路。他从边界开始,将最低的柱子作为“水桶”的短板,向内推进。

    思路清晰后,他再次开始编码。这次花了些时间,约八分钟。

    import heapq

    def trapRainWater(heightMap):

    if not heightMap:

    return 0

    m, n = len(heightMap), len(heightMap[0])

    if m < 3 or n < 3:

    return 0

    visited = [[False] * n for _ in range(m)]

    heap = []

    # 将边界加入堆

    for i in range(m):

    heapq.heappush(heap, (heightMap[i][0], i, 0))

    heapq.heappush(heap, (heightMap[i][n-1], i, n-1))

    visited[i][0] = visited[i][n-1] = True

    for j in range(1, n-1):

    heapq.heappush(heap, (heightMap[0][j], 0, j))

    heapq.heappush(heap, (heightMap[m-1][j], m-1, j))

    visited[0][j] = visited[m-1][j] = True

    directions = [(0,1),(0,-1),(1,0),(-1,0)]

    water = 0

    while heap:

    height, x, y = heapq.heappop(heap)

    for dx, dy in directions:

    nx, ny = x + dx, y + dy

    if 0 <= nx < m and 0 <= ny < n and not visited[nx][ny]:

    visited[nx][ny] = True

    # 如果相邻格子比当前边界矮,可以接水

    water += max(0, height - heightMap[nx][ny])

    # 新边界的高度是 max(当前边界高度, 相邻格子高度)

    heapq.heappush(heap, (max(height, heightMap[nx][ny]), nx, ny))

    return water

    运行,再次AC。

    王磊看着结果,沉默了几秒。然后他抬起头,笑容更明显了些:“两道Hard题,全部一次AC,而且时间控制得很好。林先生,你的算法功底比很多科班出身的候选人还要扎实”。

    “谢谢”。林晨松了口气,但不敢放松——他知道,算法只是门槛,真正的重点在后面。

    果然,王磊将iPad放到一边,身体前倾:“那我们聊聊项目吧。你简历上写的这个‘智能量化投资系统’,我挺感兴趣的。一个做了十年跨境电商的人,怎么想到做这个”?

    林晨知道,展示价值的时刻到了。

    他打开自己带来的笔记本电脑,调出系统的架构图:“其实逻辑是相通的。跨境电商要做库存预测、价格优化、用户行为分析,本质也是数据驱动决策。我失业后开始学AI,就想能不能把机器学习用在投资上”。

    他切换到系统界面——这是他自己开发的Web端,简洁的深色主题,左侧是菜单栏,中间是K线图和策略信号。

    “系统分为几个模块”。林晨开始讲解,“数据层,我从多个数据源获取A股、基金、期货、外汇的实时和历史数据,用PySpark做清洗和预处理。特征工程部分,我提取了上百个技术指标,包括均线、MACD、RSI、布林带,还有一些自己设计的因子”。

    王磊认真听着,偶尔点头。

    “模型层,我用了集成学习。基础模型包括LSTM、GRU这些时序模型,还有XGBoost和LightGBM。但不是简单堆叠,我设计了一个元学习器,动态评估每个子模型在不同市场状态下的表现,分配权重”。

    “怎么评估市场状态”?王磊问。

    “我用无监督学习做了聚类”。林晨切换到另一张图,“根据波动率、成交量、行业轮动速度等维度,把市场分为震荡市、单边上涨、单边下跌、高波动四种状态。每种状态下,不同策略的
>>>点击查看《AI时代:码农的涅盘重生》最新章节