fifty project算是失败了一半了
成功的那一半在于一定程度上拯救了我的作息和健康,两个月前入职体检的肝有点不健康,昨天复查发现全都回到了健康范围!尿酸也在正常范围!就是体重还是没减下来hhh
失败的一半在于自己很差劲的规划能力依旧差劲,每天还是喜欢根据喜好进行学习,往往就变成了刷题日记了
不管怎么说,经历过就很棒!加油加油加油!

今日完成记录

TimePlan完成情况
17:30 - 19:30🏸
20:00 - 21:30Leetcode

Leetcode

上周完成的周赛少有地拿下了三个题,上了一波大分【和Knight的距离有更近了!】,第四题本来也有机会拿下的QAQ,是既熟悉又陌生的树上倍增算法,这个方法怎么也是写了又写,学了又学,思路也大致都对,就差一丢丢!昨天把那个压轴给复盘了一下,今天重新打开灵神的常用数据结构题单,继续堆部分的题目咯。

今天的刷题感觉收获颇丰! 懒删除堆和字典树计数
滑动窗口中位数:给一个数组,要求计算大小为K的滑动窗口中的中位数
思路:因为是在对顶堆的题目里面,所以上来就有思路了,拿一个最大堆存较小的一半数,拿一个最小堆存较大的一半数,然后每次从堆顶计算中位数。麻烦的地方在于滑动窗口出窗口的数要如何进行删除。我的思路是用两个hashSet记录两个堆存储过的数字的下标,然后利用hashset懒删除【这也算一种比较呆的懒删除吧hhhh】后来学习了灵神的懒删除【用一个hashmap记录堆中数字需要删除的次数,当push数字的时候检查一下是否有删除次数,有的话直接修改删除次数相当于删除了;另外,在每次pop或者peek都得进行一次堆顶的实际删除,也就是检查堆顶元素是否删除次数为0】
灵神的代码将这个堆封装了一层,优雅不少~

含最多k个可被p整除的子数组:给定一个数组以及K和P,要求统计有多少个子数组【数组中任意长度的连续数】,其中包含最多k个可以整除P的数。要求做到O(n^2)
思路:一开始想了个O(n)的解法,但是没注意到不同子数组这一点,就是可能出现两个子数组选取的数下标是不同的但是数都是一样的,例如数组2,3,3中长度为1的子数组有【2】、【3】、【3】但其中后两个视作同一个子数组。
简述一下这个O(n)做法:首先将这个数组根据能否整除p变成0和1【能整除则为1不能则为0】,然后计算前缀和数组,并且记录每个前缀和首次出现的位置(实际上就是能整除p的数的位置),pre[i]表示从i到数组最初,共有pre[i]个数能整除p。那么对于每个位置,以当前位置为结尾的符合条件的子数组数量有pre[i] <= k ? i + 1 : i - first[pre[i] - k]。累加即可得解。
正解是:我回头看了一眼这个题目是哪个题单,发现居然是字典树题单,瞬间幡然醒悟,居然是用字典树进行计数!!从每个数开始向后遍历构造子数组,只要当前子数组依然符合要求就继续构造。同时用字典树存储当前方案。最后统计这颗字典树有多少个节点即可!【实际上在构造过程中就可以统计出来】

灵神大佬说过的如何评价做题是否有效,当想不出思路看了题解之后,如果是脑瓜子嗡的一下,“还能这样!”那就是有用的,如果是“我真是个XX”那说明还得练hhhh

应该是自己刷题少了,字典树计数确实好像没遇到过emmmm

收获颇丰~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/85128.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/85128.shtml
英文地址,请注明出处:http://en.pswp.cn/pingmian/85128.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

解码危险品物流背后的“隐形防线”

当急救药品跨越千里送达医院&#xff0c;当新能源电池准时抵达生产线&#xff0c;当化工原料安全运往工厂……这些与日常生活息息相关的场景背后&#xff0c;有一群人始终在和时间赛跑&#xff0c;与风险博弈。他们不是超级英雄&#xff0c;而是危险品物流从业者——一个鲜少被…

Flutter Melos在外包团队协作中的弊端与应对策略

引言 在大型Flutter项目开发中&#xff0c;Melos作为一款优秀的Monorepo管理工具&#xff0c;能够有效协调多包项目的开发流程。然而&#xff0c;当项目涉及外包团队协作时&#xff0c;Melos的使用会面临一系列独特的挑战。本文将深入分析Flutter Melos在外包团队协作环境中的…

<selectKey> 中的order 属性

在 MyBatis 中&#xff0c;<selectKey> 标签的 order 属性用于指定生成主键值的 SQL 语句执行时机。 除了 AFTER&#xff0c;MyBatis 还支持另一种模式&#xff1a;BEFORE&#xff0c; 它们有明确的使用场景和区别&#xff1a; order"AFTER" 适用数据库&#x…

BitsAndBytes(简称 BnB)是一个用于“压缩”大语言模型的工具包

BitsAndBytes&#xff08;简称 BnB&#xff09;是一个用于“压缩”大语言模型的工具包&#xff0c;能把模型从原来的16位或32位&#xff0c;压成4位或8位&#xff0c;减少显存占用&#xff0c;同时保持尽量高的精度。 &#x1f9e9; 为什么叫 Bits and Bytes&#xff1f; 它的…

【前端】 Vue 3 中二次封装组件

在 Vue 3 中二次封装组件是提高代码复用性和维护性的重要手段。以下是详细的封装方法和最佳实践&#xff1a; 一、封装原则 功能扩展&#xff1a;在原有组件基础上添加新功能定制样式&#xff1a;统一项目的 UI 设计规范简化接口&#xff1a;隐藏复杂逻辑&#xff0c;提供简洁…

分布式词表示(Distributed Word Representation):自然语言处理的核心基石

分布式词表示&#xff08;Distributed Word Representation&#xff09;&#xff1a;自然语言处理的核心基石 在自然语言处理&#xff08;NLP&#xff09;领域&#xff0c;如何将离散的词汇转化为计算机可理解的数值形式&#xff0c;一直是技术突破的关键。传统的独热编码&…

Windows Playwright NotImplementedError问题深究

原文链接&#xff1a;Windows Playwright NotImplementedError问题深究 < Ping通途说 0. 引言 今天来看一下这个困扰我很久的问题。是关于在FastAPI / NiceGUI 等基于Uvicorn环境下使用Async Playwright 提示NotImplementedError的问题。 本解决方案仅适用基于Uvicorn的异步…

QCustomPlot 数据可视化方式详解

QCustomPlot 数据可视化方式详解 QCustomPlot 提供了多种灵活的数据显示方式,可以满足从简单静态图表到复杂实时数据可视化的各种需求。以下是 QCustomPlot 显示数据的核心方式和策略: 基本数据显示方式 1.1 完整数据设置 (setData)// 一次性设置完整数据集 QVector<doub…

家用旧电脑搭建小型服务器操作步骤教程:一步一步本地部署到公网访问

你家是不是也有一台吃灰的旧电脑&#xff1f;别急着扔&#xff0c;它其实还能发挥大作用&#xff01;小编最近就把家里一台十年前的老台式机&#xff0c;改造成了一个小型服务器&#xff0c;主要用来文件备份、当网站测试环境&#xff0c;还是比较有用的。今天就来手把手教你&a…

Python银行账户系统全解析

完整代码如下&#xff1a; class BankAccount:def __init__(self, account_holder, initial_balance0):"""初始化银行账户:param account_holder: 账户持有人姓名:param initial_balance: 初始余额&#xff0c;默认为0"""self.account_holder …

博世X阿里云:智能座舱接入通义大模型!

近日,全球领先的汽车技术与服务商博世与阿里云宣布在大模型领域达成合作,通义大模型助力博世加速AI技术应用于智能座舱,首次实现座舱环境主动感知和3D数字人交互。 博世AI智能座舱技术原型由博世智能驾控事业部以通义千问和通义万相为基础,结合阿里云百炼大模型服务平台和磐曦数…

高性能计算服务器的主要作用都有哪些?

高性能计算服务器是一种专门为了处理大规模科学计算和数据分析任务所设计的服务器&#xff0c;高性能计算服务器拥有着强大的计算能力和高速的数据传输能力&#xff0c;有着高度的可靠性和可扩展性&#xff0c;下面小编就来介绍一下高性能计算服务器的主要作用吧&#xff01; 高…

C++ 进阶:深入理解虚函数、继承与多态

前言 在 C 的面向对象编程中&#xff0c;继承和多态是两个核心概念。今天我们将深入探讨 C 中与多态密切相关的几个重要特性&#xff1a;虚函数、virtual 关键字、override 关键字、多重继承以及虚继承。这些内容是理解 C 多态机制和复杂类层次结构的关键。 虚函数与 virtual…

为AR眼镜等多种智能可穿戴设备添加穿戴状态检测功能

作者&#xff1a;Azoteq中国 随着AR/VR眼镜、头戴式耳机和入耳式耳塞、智能手表和健身手环等可穿戴电子产品受到越来越多消费者的欢迎&#xff0c;如何设计外形更加时尚迷人、功能更加先进宜人的穿戴产品成为了创新和创意的焦点。作为全球领先的多传感器解决方案提供商&#xf…

腾讯云国际站缩容:策略、考量与实践

腾讯云国际站作为连接全球业务的重要云计算枢纽&#xff0c;其资源的灵活调配至关重要。而腾讯云国际站缩容&#xff0c;便是企业在特定发展阶段或业务场景下需要深入探究的关键议题。 一、腾讯云国际站缩容的背景与动因 随着企业业务的动态发展&#xff0c;市场需求并非一成…

英语写作核心词汇

以下是一些非常常见和实用的单词和短语分类整理&#xff1a;​ 1. 核心高频动词 (用于表达观点、影响、变化等) ​Affect (v.): 影响​Cause (v.): 引起&#xff0c;导致​Influence (v./n.): 影响​Benefit (v./n.): 有益于&#xff1b;好处​Harm (v./n.): 损害&#xff1b…

Python函数参数传递机制全解析

Python常见问题解答 1. 函数参数传递是值传递还是引用传递&#xff1f; Python中的参数传递是"对象引用传递"&#xff08;或称为"共享对象传递"&#xff09;。具体来说&#xff1a; 对于不可变对象&#xff08;如数字、字符串、元组&#xff09;&#x…

MATLAB提供的预训练神经网络

CNN 预训练的神经网络 Deep Learning Toolbox™ provides various pretrained networks that have different sizes, speeds, and accuracies.

【PDF】Qt生成PDF文件,占用存储小

在 Qt 项目中&#xff0c;如果你希望使用第三方开源库来生成心电图的 PDF 报告&#xff0c;并且要求占用磁盘空间最小&#xff0c;以下是一些推荐的选择&#xff1a; 推荐的开源库 PoDoFo 简介&#xff1a;PoDoFo 是一个用于创建和操作 PDF 文件的 C 开源库。它非常轻量级&…

系统架构设计师 1

第一章 绪论 系统架构设计师(System Architecture Designer)是项目开发活动中的关键角色之一。系统架构是系统的一种整体的高层次的结构表示&#xff0c;是系统的骨架和根基&#xff0c;其决定了系统的健壮性和生命周期的长短。 1.1 系统架构概述 1946年第一台计算机&#x…