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

力扣刷题(数组篇)

日期类

#pragma once#include <iostream>
#include <assert.h>
using namespace std;class Date
{
public:// 构造会频繁调用,所以直接放在类里面(类里面的成员函数默认为内联)Date(int year = 1, int month = 1, int day = 1)//构造{_year = year;_month = month;_day = day;//if (!CheckDate())//{//	Print();//	cout << "刚构造的日期非法" << endl;//}assert(CheckDate());}void Print() const;  // 打印int GetMonthDay(int year, int month)// 获取某年某月的天数{static int days[13] = { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };int day = days[month];if (month == 2&& ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0))){day += 1;}return day;}bool CheckDate()// 检查日期是否合法{if (_year >= 1&& _month > 0 && _month < 13&& _day > 0 && _day <= GetMonthDay(_year, _month)){return true;}else{return false;}}bool operator==(const Date& d) const;bool operator>(const Date& d) const;bool operator!=(const Date& d) const;bool operator>=(const Date& d) const;bool operator<(const Date& d) const;bool operator<=(const Date& d) const;Date& operator+=(int day);Date operator+(int day) const;Date& operator-=(int day);Date operator-(int day) const;// 特殊处理,使用重载区分,后置++重载增加一个int参数跟前置构成函数重载进行区分Date& operator++(); // 前置Date operator++(int); // 后置Date& operator--();// 前置Date operator--(int);// 后置int operator-(const Date& d) const; //日期减日期void PrintWeekDay() const; //返回*this是星期几private:int _year;int _month;int _day;
};#include "Date.h"// void Date::Print(const Date* const this)
void Date::Print() const
{cout << _year << "年" << _month << "月" << _day << "日" << endl;
}// 任何一个类,只需要写一个> == 或者 < ==重载 剩下比较运算符重载复用即可
bool Date::operator== (const Date& d) const
{return _year == d._year&& _month == d._month&& _day == d._day;
}bool Date::operator>(const Date& d) const
{if ((_year > d._year)|| (_year == d._year && _month > d._month)|| (_year == d._year && _month == d._month && _day > d._day)){return true;}else{return false;}
}bool Date::operator!=(const Date& d) const
{return !(*this == d);
}bool Date::operator>=(const Date& d) const
{return (*this > d) || (*this == d);
}bool Date::operator<(const Date& d) const
{return !(*this >= d);
}bool Date::operator<=(const Date& d) const
{return !(*this > d);
}Date& Date::operator+=(int day)
{if (day < 0){return *this -= -day;}_day += day;while (_day > GetMonthDay(_year, _month)){_day -= GetMonthDay(_year, _month);_month++;if (_month == 13){_year++;_month = 1;}}return *this;
}Date Date::operator+(int day) const
{Date ret = *this; ret += day;return ret;// 出了作用域ret对象就不在了,所以不能用引用返回
}Date& Date::operator-=(int day)
{if (day < 0){return *this += -day;}_day -= day;while (_day <= 0){_month--;if (_month == 0){_year--;_month = 12;}_day += GetMonthDay(_year, _month);}return *this;
}Date Date::operator-(int day) const
{Date ret = *this;ret -= day;// ret.operator-=(day);return ret;// 和 + 一样,出了作用域ret对象就不在了,所以不能用引用返回
}Date& Date::operator++() // 前置
{return 	*this += 1;
}
Date Date::operator++(int) // 后置
{Date ret = *this;*this += 1;return ret;
}Date& Date::operator--() // 前置
{return *this -= 1;
}
Date Date::operator--(int) // 后置
{Date ret = *this;*this -= 1;return ret;
}int Date::operator-(const Date& d) const
{int ret = 0;int flag = -1;Date min = *this;//默认第一个小,返回的时候乘上 -1Date max = d;if (*this > d)//默认错误,把小和大重置,返回时乘上 1{flag = 1;min = d;max = *this;}while (min != max){++min;++ret;}return ret * flag;
}void Date::PrintWeekDay() const //打印*this是星期几
{const char* Week[] = { "星期一","星期二" ,"星期三" , "星期四" ,"星期五" , "星期六" , "星期天" };Date flag(1900, 1, 1); //1900年1月1日是星期一,自己减自己为0,对应下标0cout << Week[(*this - flag) % 7] << endl;
}#include "Date.h"void TestDate7()
{Date d1(2023, 5, 5);Date d2(2023, 6, 7);d1.Print();d1.PrintWeekDay();d2.Print();d2.PrintWeekDay();Date d3(1900, 1, 7);Date d4(2050, 6, 7);d3.Print();d3.PrintWeekDay();d4.Print();d4.PrintWeekDay();
}int main()
{TestDate7();return 0;
}
485. 最大连续 1 的个数 - 力扣(LeetCode)
剑指 Offer 04. 二维数组中的查找11111111

二维数组中的查找_牛客题霸_牛客网 (nowcoder.com)

剑指 Offer 11. 旋转数组的最小数字11111111

旋转数组的最小数字_牛客题霸_牛客网 (nowcoder.com)

剑指 Offer 21. 调整数组顺序使奇数位于偶数前面111111111

调整数组顺序使奇数位于偶数前面__牛客网 (nowcoder.com)

剑指 Offer 39. 数组中出现次数超过一半的数字11111111111

数组中出现次数超过一半的数字_牛客题霸_牛客网 (nowcoder.com)

剑指 Offer 05. 替换空格111111111

替换空格_牛客题霸_牛客网 (nowcoder.com)

剑指 Offer 06. 从尾到头打印链表

从尾到头打印链表_牛客题霸_牛客网 (nowcoder.com)

剑指 Offer 07. 重建二叉树

重建二叉树_牛客题霸_牛客网 (nowcoder.com)


动态规划:

剑指 Offer 42. 连续子数组的最大和111111111111111

连续子数组的最大和_牛客题霸_牛客网 (nowcoder.com)

hash

排序算法的特殊理解

剑指 Offer 52. 两个链表的第一个公共节点

两个链表的第一个公共结点_牛客题霸_牛客网 (nowcoder.com)

7 算法公开课

动态规划

剑指 Offer 10- I. 斐波那契数列

剑指 Offer II 098. 路径的数目11111111111
剑指 Offer II 099. 最小路径之和

背包问题

背包问题_哔哩哔哩笔试题_牛客网 (nowcoder.com)

剑指 Offer II 094. 最少回文分割
剑指 Offer II 086. 分割回文子字符串
72. 编辑距离
115. 不同的子序列

贪心算法

栗子:选择排序

1221. 分割平衡字符串111111111111111

122. 买卖股票的最佳时机 II1111111111111

55. 跳跃游戏11111111111

435. 无重叠区间1111111000000

回溯算法

深度优先 : DFS

栗子 : 排列组合

690. 员工的重要性

733. 图像渲染
733相似:463. 岛屿的周长

130. 被围绕的区域
130相似:剑指 Offer II 105. 岛屿的最大面积

17. 电话号码的字母组合11111111
17相似:401. 二进制手表

39. 组合总和

1079. 活字印刷

51. N 皇后
51相似:52. N 皇后 II

广度优先: BFS

栗子:迷宫问题

429. N 叉树的层序遍历

994. 腐烂的橘子

127. 单词接龙
127相似433. 最小基因变化

752. 打开转盘锁

相关文章:

力扣刷题(数组篇)

日期类 #pragma once#include <iostream> #include <assert.h> using namespace std;class Date { public:// 构造会频繁调用&#xff0c;所以直接放在类里面&#xff08;类里面的成员函数默认为内联&#xff09;Date(int year 1, int month 1, int day 1)//构…...

初一说明文:我的护眼灯

本文转自&#xff1a;AI范文助手网 原文链接&#xff1a;https://www.aazhushou.com/czzw/5023.html 自爱迪生发明了灯以来&#xff0c;各种各样的灯相继问世了&#xff0c;给人一种新景象&#xff0c;其中护眼灯也问世了。 我有一盏台灯叫麦迪格护眼灯。那天我和母亲去商场&…...

【论文阅读】Revisiting the Assumption of Latent Separability for Backdoor Defenses

https://github.com/Unispac/Circumventing-Backdoor-Defenses 摘要和介绍 在各种后门毒化攻击中&#xff0c;来自目标类别的毒化样本和干净样本通常在潜在空间中形成两个分离的簇。 这种潜在的分离性非常普遍&#xff0c;甚至在防御研究中成为了一种默认假设&#xff0c;我…...

八一南昌起义纪念塔手绘图纸:一部凝固的工程史诗

在南昌美术馆的玻璃展柜中&#xff0c;泛黄的八一南昌起义纪念塔手绘图纸正无声述说着一段工程奇迹。这些诞生于上世纪七十年代的图纸&#xff0c;以0.05毫米的针管笔触勾勒出总高53.6米的纪念碑&#xff0c;在硫酸纸上构建的坐标网格精确到毫米级&#xff0c;每一根结构线都暗…...

[hgame 2025 ]week1 pwn/crypto

一共两周&#xff0c;第一周说难也不难说简单也不简单。 pwn counting petals 数组v7长度17&#xff0c;输入16时v7[161]会发生溢出&#xff0c;溢出到v8,v9,将其改大&#xff0c;会输出canary和libc_start_main_ret的地址。第2次进来覆盖到返回地址写上ROP from pwn import…...

python 获取smpl身高 fbx身高

目录 python 获取smpl身高 读取fbx,获取fbx mesh身高 python 获取smpl身高 video_segments = pickle.load(open(smpl_pkl_path, "rb"))if isinstance(video_segments, tuple):video_segments = video_segments[0]scene = bpy.data.scenes[Scene]ob, obname, arm_o…...

实战教程:如何利用DeepSeek结合深度学习与NLP技术实现跨模态搜索与个性化推荐

跨模态搜索与个性化推荐是当前人工智能领域中的热门话题,DeepSeek作为结合深度学习与自然语言处理(NLP)技术的创新平台,提供了在多模态数据间进行搜索与推荐的强大能力。本教程将带你一步步实现基于DeepSeek的跨模态搜索和个性化推荐,详细讲解整个过程的实现方法,从数据准…...

计算机毕业设计Python+卷积神经网络租房推荐系统 租房大屏可视化 租房爬虫 hadoop spark 58同城租房爬虫 房源推荐系统

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 作者简介&#xff1a;Java领…...

目标检测模型性能评估:mAP50、mAP50-95、Precision 和 Recall 及测试集质量的重要性

目标检测评估全解析&#xff1a;从核心指标到高质量测试集构建 目标检测技术在计算机视觉领域发挥着至关重要的作用&#xff0c;无论是自动驾驶、安防监控&#xff0c;还是医学影像处理&#xff0c;目标检测算法的性能评估都需要依赖一系列精确且科学的评估指标。而测试集的构建…...

AnyPlace:学习机器人操作的泛化目标放置

25年2月来自多伦多大学、Vector Inst、上海交大等机构的论文“AnyPlace: Learning Generalized Object Placement for Robot Manipulation”。 由于目标几何形状和放置的配置多种多样&#xff0c;因此在机器人任务中放置目标本身就具有挑战性。为了解决这个问题&#xff0c;An…...

2025icpc(Ⅱ)网络赛补题 GL

题意&#xff1a; 给定Alice和Bob的每一轮的概率p0,p1 给定Alice和Bob的初始数字x,y。 对于每一轮&#xff1a; 如果Alice获胜&#xff0c;则bob的数字y需要减去x。&#xff08;如果y≤0&#xff0c;Alice获胜&#xff09;如果Bob获胜&#xff0c;则Alice的数字x需要减去y。…...

51c大模型~合集112

我自己的原文哦~ https://blog.51cto.com/whaosoft/13267449 #Guidance-Free Training (GFT) 无需引导采样&#xff0c;清华大学提出视觉模型训练新范式 引导采样 Classifier-Free Guidance&#xff08;CFG&#xff09;一直以来都是视觉生成模型中的关键技术。然而最近&am…...

Rust 文件读取:实现我们的 “迷你 grep”

1. 准备示例文件 首先&#xff0c;在项目根目录&#xff08;与 Cargo.toml 同级&#xff09;下新建一个名为 poem.txt 的文件。示例内容可参考 Emily Dickinson 的诗&#xff1a; Im nobody! Who are you? Are you nobody, too? Then theres a pair of us — dont tell! Th…...

【Unity3D】Jenkins Pipeline流水线自动构建Apk

目录 一、准备阶段 二、创建Pipeline流水线项目 三、注意事项 一、准备阶段 1、安装tomcat 10.0.5 Index of apache-local/tomcat/tomcat-10 2、安装jdk 17 Java Archive Downloads - Java SE 17.0.13 and later 3、下载Jenkins 2.492.1 (.war)包 War Jenkins Packa…...

信息收集-Web应用备案产权Whois反查域名枚举DNS记录证书特征相似查询

知识点&#xff1a; 1、信息收集-Web应用-机构产权&域名相关性 2、信息收集-Web应用-DNS&证书&枚举子域名 企业信息 天眼查 https://www.tianyancha.com/ 企业信息 小蓝本 https://www.xiaolanben.com/ 企业信息 爱企查 https://aiqicha.baidu.com/ 企业信息 企查…...

结合实际讲NR系列2—— SIB1

这是在基站抓取的sib1的一条信令 L3MessageContent BCCH-DL-SCH-Messagemessagec1systemInformationBlockType1cellSelectionInfoq-RxLevMin: -64q-QualMin: -19cellAccessRelatedInfoplmn-IdentityListPLMN-IdentityInfoplmn-IdentityListPLMN-IdentitymccMCC-MNC-Digit: 4MC…...

绿虫仿真软件如何预测组件衰减对收益的影响?

绿虫仿真软件通过其精细化的算法模型&#xff0c;能够有效预测组件衰减对光伏电站收益的影响&#xff0c;主要体现在以下几个方面&#xff1a; 1. 数据基础与模型构建 历史数据分析&#xff1a;绿虫软件整合了长达20年的历史数据&#xff0c;涵盖气象、地理、组件型号、逆变器…...

本地部署DeepSeek集成VSCode创建自己的AI助手

文章目录 安装Ollama和CodeGPT安装Ollama安装CodeGPT 下载并配置DeepSeek模型下载聊天模型&#xff08;deepseek-r1:1.5b&#xff09;下载自动补全模型&#xff08;deepseek-coder:1.3b&#xff09; 使用DeepSeek进行编程辅助配置CodeGPT使用DeepSeek模型开始使用AI助手 ✍️相…...

07贪心 + 动态规划(D1_基础学习)

目录 讲解一&#xff1a;贪心算法 一、什么是贪心算法&#xff1f; 二、贪心算法的应用场景 三、使用Java代码实现贪心算法 四、知识小结 -------------------------------- 讲解二&#xff1a;动态规划算法 一、什么是动态规划算法 二、动态规划算法求解问题需要具备的…...

redis之数据库

文章目录 服务器中的数据库切换数据库数据库键空间读写键空间时的维护操作 设置键的生存时间或过期时间保存过期时间过期键的判定过期键删除策略清性删除策略的实现定期删除策略的实现 总结 服务器中的数据库 Redis服务器将所有数据库都保存在服务器状态redis.h/redisServer结…...

云计算——弹性云计算器(ECS)

弹性云服务器&#xff1a;ECS 概述 云计算重构了ICT系统&#xff0c;云计算平台厂商推出使得厂家能够主要关注应用管理而非平台管理的云平台&#xff0c;包含如下主要概念。 ECS&#xff08;Elastic Cloud Server&#xff09;&#xff1a;即弹性云服务器&#xff0c;是云计算…...

PHP和Node.js哪个更爽?

先说结论&#xff0c;rust完胜。 php&#xff1a;laravel&#xff0c;swoole&#xff0c;webman&#xff0c;最开始在苏宁的时候写了几年php&#xff0c;当时觉得php真的是世界上最好的语言&#xff0c;因为当初活在舒适圈里&#xff0c;不愿意跳出来&#xff0c;就好比当初活在…...

Python爬虫(一):爬虫伪装

一、网站防爬机制概述 在当今互联网环境中&#xff0c;具有一定规模或盈利性质的网站几乎都实施了各种防爬措施。这些措施主要分为两大类&#xff1a; 身份验证机制&#xff1a;直接将未经授权的爬虫阻挡在外反爬技术体系&#xff1a;通过各种技术手段增加爬虫获取数据的难度…...

在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用

1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...

Redis数据倾斜问题解决

Redis 数据倾斜问题解析与解决方案 什么是 Redis 数据倾斜 Redis 数据倾斜指的是在 Redis 集群中&#xff0c;部分节点存储的数据量或访问量远高于其他节点&#xff0c;导致这些节点负载过高&#xff0c;影响整体性能。 数据倾斜的主要表现 部分节点内存使用率远高于其他节…...

CSS设置元素的宽度根据其内容自动调整

width: fit-content 是 CSS 中的一个属性值&#xff0c;用于设置元素的宽度根据其内容自动调整&#xff0c;确保宽度刚好容纳内容而不会超出。 效果对比 默认情况&#xff08;width: auto&#xff09;&#xff1a; 块级元素&#xff08;如 <div>&#xff09;会占满父容器…...

【笔记】WSL 中 Rust 安装与测试完整记录

#工作记录 WSL 中 Rust 安装与测试完整记录 1. 运行环境 系统&#xff1a;Ubuntu 24.04 LTS (WSL2)架构&#xff1a;x86_64 (GNU/Linux)Rust 版本&#xff1a;rustc 1.87.0 (2025-05-09)Cargo 版本&#xff1a;cargo 1.87.0 (2025-05-06) 2. 安装 Rust 2.1 使用 Rust 官方安…...

【MATLAB代码】基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),附源代码|订阅专栏后可直接查看

文章所述的代码实现了基于最大相关熵准则(MCC)的三维鲁棒卡尔曼滤波算法(MCC-KF),针对传感器观测数据中存在的脉冲型异常噪声问题,通过非线性加权机制提升滤波器的抗干扰能力。代码通过对比传统KF与MCC-KF在含异常值场景下的表现,验证了后者在状态估计鲁棒性方面的显著优…...

根目录0xa0属性对应的Ntfs!_SCB中的FileObject是什么时候被建立的----NTFS源代码分析--重要

根目录0xa0属性对应的Ntfs!_SCB中的FileObject是什么时候被建立的 第一部分&#xff1a; 0: kd> g Breakpoint 9 hit Ntfs!ReadIndexBuffer: f7173886 55 push ebp 0: kd> kc # 00 Ntfs!ReadIndexBuffer 01 Ntfs!FindFirstIndexEntry 02 Ntfs!NtfsUpda…...

Spring AI Chat Memory 实战指南:Local 与 JDBC 存储集成

一个面向 Java 开发者的 Sring-Ai 示例工程项目&#xff0c;该项目是一个 Spring AI 快速入门的样例工程项目&#xff0c;旨在通过一些小的案例展示 Spring AI 框架的核心功能和使用方法。 项目采用模块化设计&#xff0c;每个模块都专注于特定的功能领域&#xff0c;便于学习和…...