当前位置: 首页 > news >正文

Python | Leetcode Python题解之第355题设计推特

题目:

题解:

class Twitter:class Node:def __init__(self):self.followee = set()self.tweet = list()def __init__(self):self.time = 0self.recentMax = 10self.tweetTime = dict()self.user = dict()def postTweet(self, userId: int, tweetId: int) -> None:if userId not in self.user:self.user[userId] = Twitter.Node()self.user[userId].tweet.append(tweetId)self.time += 1self.tweetTime[tweetId] = self.timedef getNewsFeed(self, userId: int) -> List[int]:if userId not in self.user:return list()ans = self.user[userId].tweet[-10:][::-1]for followeeId in self.user[userId].followee:if followeeId in self.user:opt = self.user[followeeId].tweet[-10:][::-1]i, j, combined = 0, 0, list()while i < len(ans) and j < len(opt):if self.tweetTime[ans[i]] > self.tweetTime[opt[j]]:combined.append(ans[i])i += 1else:combined.append(opt[j])j += 1combined.extend(ans[i:])combined.extend(opt[j:])ans = combined[:10]return ansdef follow(self, followerId: int, followeeId: int) -> None:if followerId != followeeId:if followerId not in self.user:self.user[followerId] = Twitter.Node()self.user[followerId].followee.add(followeeId)def unfollow(self, followerId: int, followeeId: int) -> None:if followerId != followeeId:if followerId in self.user:self.user[followerId].followee.discard(followeeId)
http://www.lryc.cn/news/430259.html

相关文章:

  • D. Beard Graph
  • 使用预训练的 ONNX 格式的 YOLOv8n 模型进行目标检测,并在图像上绘制检测结果
  • mac安装xmind
  • MySQL分区表入门
  • StarRocks 存算分离数据回收原理
  • 【运维】Linux中的xargs指令如何使用?
  • 日志审计-graylog ssh登录超过6次告警
  • 4. kafka消息监控客户端工具
  • 鸿蒙环境和模拟器安装
  • 【图文并茂】ant design pro 如何对接后端个人信息接口
  • MySQL运维学习(1):4种日志
  • 代码随想录算法训练营第二十天(二叉树 七)
  • Django 后端架构开发:通用表单视图、组件对接、验证机制和组件开发
  • Cookie和Session是什么?它们的区别是什么?
  • Python正则表达式提取车牌号
  • 视觉引导机械臂学习记录
  • 插屏广告在游戏APP中广告变现的独特优势
  • Python数据分析:数据可视化(Matplotlib、Seaborn)
  • Java CompletableFuture:你真的了解它吗?
  • 5个免费在线 AI 绘画网站推荐,附100+提示词!
  • C++基础语法:while的使用
  • 鹏哥C语言自定义笔记重点(29-)
  • 代码随想录算法训练营第六十天 | dijkstra(堆优化版)、Bellman_ford 算法精讲
  • boost::asio 库版本,C/C++代码编译兼容性
  • 前端开发的项目导入方法与应用
  • C++:模拟实现string
  • 浅谈Kafka(一)
  • Redis7基础篇(八)
  • Tauri简介
  • JavaWeb——MVC架构模式