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

Leetcode:学习记录

一、滑动窗口

1. 找出数组中元素和大于给定值的子数组的最小长度

右指针从左到右遍历,在每个右指针下,如果去掉左边元素的元素和大于等于给定值则左指针右移一次,直到小于给定值,右指针右移一个。

2.找到乘积小于给定值的子数组的数量

右指针从左到右遍历,在每个右指针下,乘积大于等于给定值则左指针右移一次,直到小于给定值,右指针右移一个。

3.无重复字符的最长子串长度

右指针从左到右遍历,在每个右指针下,如果有重复左指针右移一次,直到没有重复,右指针右移一个。

二、二分法

1.在排序数组中查找元素的第一个和最后一个位置

红蓝染色法:查找第一个或最后一个或者小于等于或者小于或者大于给定值的第一个元素都可以转换成第一个大于等于给定值的问题。例如第一个等于给定值的元素,则是第一个大于等于给定值的元素,且等于给定值。大于等于给定值的元素,左指针右指针从两边开始,中间大于等于给定值则右指针变为中间,反之则左指针变为中间。

2.查找数组的峰值元素

红蓝染色法:峰值左侧红色,峰值右侧蓝色。L\M\R,M与右侧相比,如果大于右侧,那么右侧都是蓝色,如果小于那么左侧都是红色。

3.搜索旋转排序数组最小值

红蓝染色法:以最后一个元素为界可以区分两段,L\M\R中M小于最后一个元素,那么M就在右边一段,M的右侧就是蓝色,大于最后一个元素,M就在左边一段,M的左侧是红色。

三、链表

1.反转链表

遍历每个节点,cur为当前节点,cur的next保存为nxt后变为pre,pre变为cur,cur变为nxt,循环。即用完这个变量后再改变这个变量。

2.链表中间节点

快慢指针法:慢指针走一步,快指针走两步,快指针走到最后一个节点或者空节点时,慢指针就再中间节点。

3.环形链表

快慢指针法:慢指针走一步,快指针走两步,快指针相对来说走一步,那么如果存在环形链表,快指针必然会赶上慢指针。

4.重排链表

1和2结合,找到中间节点并翻转右侧部分,然后交叉。

5.删除链表某个节点

将该节点的值修改为下一个节点的值,该节点的next修改为下一个节点的next。

6.删除链表的倒数第N个节点

前后指针:前指针指向dummy node,后指针dummy node后移动n步。然后同步走,直到后指针为最后一个节点,然后删除前指针的后一个节点。

7.删除排序链表中的重复元素

如果下一个节点的值与当前节点相同,则删除下一个节点。

 

相关文章:

Leetcode:学习记录

一、滑动窗口 1. 找出数组中元素和大于给定值的子数组的最小长度 右指针从左到右遍历,在每个右指针下,如果去掉左边元素的元素和大于等于给定值则左指针右移一次,直到小于给定值,右指针右移一个。 2.找到乘积小于给定值的子数组…...

86.在 Vue 3 中使用 OpenLayers 自定义组件(放大、缩小、长度测量、面积测量)

摘要 在 WebGIS 开发中,OpenLayers 是一个非常强大的开源地图库,它可以在 Web 应用中渲染高效的地图。本篇文章将介绍如何在 Vue 3 中使用 OpenLayers,并封装一个自定义地图控件组件,实现地图的放大、缩小、长度测量和面积测量功能…...

http 与 https 的区别?

HTTP(超文本传输协议)和 HTTPS(安全超文本传输协议)是互联网通信的基础协议。随着网络技术的发展和安全需求的提升,HTTPS变得越来越重要。本文将深入探讨HTTP与HTTPS之间的区别,包括其工作原理、安全性、性能、应用场景及未来发展等。 1. HTTP与HTTPS的基本概念 1.1 HT…...

SAIL-RK3576单板运行7b的deepseek对话模型

大概流程: 使用ollama工具进行deepseek的模型部署和使用,先安装ollama工具,在使用ollama工具拉去deepseek模型,最后使用ollama工具加载deepseek模型进行对话...

独立C++ asio库实现的UDP Server

以下是一个使用独立的 C Asio 库实现的 UDP 服务器的示例代码。这个 UDP 服务器可以监听指定端口&#xff0c;接收客户端发送的数据&#xff0c;并将接收到的数据原样返回给客户端。 #include <iostream> #include <asio.hpp> #include <array>class UdpSer…...

SQL Server STUFF 函数的用法及应用场景

在 SQL Server 中&#xff0c;STUFF 函数是一种强大的字符串处理工具&#xff0c;常用于删除指定位置的字符并插入新的字符。通过这个函数&#xff0c;开发者能够灵活地修改字符串&#xff0c;从而在数据处理、字符串拼接和格式化等方面大显身手。本文将深入探讨 STUFF 函数的语…...

MongoDB进阶篇-索引

文章目录 1. 索引概述 2. 索引的类型 2.1 单字段索引 2.2 复合索引 2.3 其他索引 2.3.1 地理空间索引(Geospatial Index) 2.3.2 文本索引(Text Indexes) 2.3.3 哈希索引(Hashed Indexes) 3. 索引相关操作 3.1 查看索引 3.2 创建索引 3.3.1 创建单字段索引 3.3.2 创建复合…...

《机器学习数学基础》补充资料:柯西—施瓦茨不等式以及相关证明

《机器学习数学基础》 153 页&#xff0c;针对图 3-4-3&#xff0c;提出了一个问题&#xff1a;“点 A A A 到 W \mathbb{W} W 上的一个点的距离有无穷多个。现在&#xff0c;我们最关心的是其中最短的那个&#xff0c;怎么找&#xff1f;请参阅 3.6 节。”并且&#xff0c;在…...

VisionPro 划痕检测小练习

划痕检测,我这里用到的是Sobel算子和blob斑点匹配以及blob里面的形态学调整 Sobel 是一种在数字图像处理和计算机视觉领域广泛应用的算法&#xff0c;主要用于边缘检测 脚本展示 #region namespace imports using System; using System.Collections; using System.Drawing; …...

解析 2025 工业边缘计算:三大技术风向的影响力

工业数字化转型的加速&#xff0c;工业边缘计算市场正呈现出蓬勃发展的态势。展望 2025 年&#xff0c;以下三大技术将成为引领工业边缘计算发展的重要风向标。 其一&#xff0c;人工智能与边缘计算的深度融合。人工智能技术将更广泛地应用于工业边缘设备&#xff0c;实现更智…...

企语企业管理系iFair(F23.2_a0)在Debian操作系统中的安装

起因&#xff1a;在安装了F24.8版本后&#xff0c;发现生产用环境和测试、开发用环境还是分开的好。 旧版的用来实验、测试&#xff0c;新版的一步一步小心的配置、使用是比较稳妥的操作。因此&#xff0c;决定在KVM虚拟机上搭建一个F23.2版本的企语系统。 一、 存在的问题 而…...

如何在Flask中处理静态文件

哈喽,大家好,我是木头左! 本文将详细介绍如何在Flask中处理静态文件,包括如何配置静态文件夹、如何访问静态文件以及如何处理静态文件的缓存问题。 配置静态文件夹 在Flask中,你可以通过static_folder参数来指定静态文件夹。默认情况下,Flask会在项目的根目录下寻找名为…...

无人机飞行试验大纲

‌无人机飞行试验大纲‌ ‌编制日期‌&#xff1a;2025年02月11日 ‌一、试验目的与背景‌ 本次无人机飞行试验旨在验证无人机的飞行性能、控制系统稳定性、机体结构强度以及各项任务执行能力。随着无人机技术在各个领域的广泛应用&#xff0c;对其性能进行全面、系统的测试显得…...

C语言初阶牛客网刷题——JZ65 不用加减乘除做加法】【难度:简单】

1. 题目描述 牛客网OJ题链接 写一个函数&#xff0c;求两个整数之和&#xff0c;要求在函数体内不得使用、-、*、/四则运算符号。 2. 分析 十进制相加思想&#xff1a; 157 &#xff0c; 先计算不考虑进位的相加结果 12 &#xff08;因为 57 的不考虑进位的结果是 2 &#x…...

git 记录

git 记录 报错warning: unknown value given to http.version: 2 报错 warning: unknown value given to http.version: ‘2’ 删除指定http版本 git config --global --unset http.version...

PyTorch Lightning Trainer介绍

PyTorch Lightning 的 Trainer 是框架的核心类&#xff0c;负责自动化训练流程、分布式训练、日志记录、模型保存等复杂操作。通过配置参数即可快速实现高效训练&#xff0c;无需手动编写循环代码。以下是详细介绍和使用示例&#xff1a; Trainer 的核心功能 自动化训练循环 自…...

mysql监控--慢查询

一、监控配置 二、慢查询文件 在 MySQL 中&#xff0c;慢查询日志记录了执行时间较长的查询&#xff0c;通常&#xff0c;慢查询日志可能会生成以下几种文件&#xff1a; 1. 慢查询日志文件 这是最主要的文件&#xff0c;记录了执行时间超过设置阈值的 SQL 查询。可以通过 …...

Conda 包管理:高效安装、更新和删除软件包

Conda 包管理&#xff1a;高效安装、更新和删除软件包 1. 引言 在使用 Anaconda 进行 Python 开发时&#xff0c;包管理是日常操作的核心内容。Conda 提供了一整套高效的工具来管理 Python 环境中的软件包&#xff0c;避免了版本冲突&#xff0c;并确保了环境的一致性。 本篇…...

AcWing 798. 差分矩阵

题目来源&#xff1a; 找不到页面 - AcWing 题目内容&#xff1a; 输入一个 n 行 m 列的整数矩阵&#xff0c;再输入 q 个操作&#xff0c;每个操作包含五个整数 x1,y1,x2,y2,c&#xff0c;其中 (x1,y1) 和 (x2,y2)表示一个子矩阵的左上角坐标和右下角坐标。 每个操作都要将…...

通用定时器学习记录

简介 通用定时器&#xff1a;TIM2/TIM3/TIM4/TIM5 主要特性&#xff1a;16位递增、递减、中心对齐计数器&#xff08;计数值0~65535&#xff09; 16位预分频器&#xff08;分频系数1~65536&#xff09; 可用于触发DAC、ADC 在更新事件、触发事件、输入捕获、输出比较时&am…...

干货|Active-Active/Active-Passive 数据库架构解析:高可用设计中的权衡与选型

在技术领域&#xff0c;我们常常被那些闪耀的、可见的成果所吸引。今天&#xff0c;这个焦点无疑是大语言模型技术。它们的流畅对话、惊人的创造力&#xff0c;让我们得以一窥未来的轮廓。然而&#xff0c;作为在企业一线构建、部署和维护复杂系统的实践者&#xff0c;我们深知…...

基于MCP协议的Windows AI自动化:winremote-mcp部署与实战指南

1. 项目概述&#xff1a;当AI助手学会“远程桌面”如果你和我一样&#xff0c;日常主力开发环境是Mac或Linux&#xff0c;但总有那么几个场景不得不和Windows打交道——可能是公司内网里那台跑着老旧ERP系统的服务器&#xff0c;也可能是家里那台专门用来打游戏的PC&#xff0c…...

AI模型公平性:从统计定义到工程实践的全面解析

1. 项目概述&#xff1a;为什么我们今天必须严肃讨论AI公平性 几年前&#xff0c;我参与过一个信用评分模型的优化项目。团队用上了当时最先进的梯度提升算法&#xff0c;模型的AUC曲线漂亮得让人惊叹&#xff0c;在测试集上的表现远超旧系统。然而&#xff0c;当模型部署到某个…...

专业月饼生产线厂家:企业选购关键指标与合作策略深度解析

专业月饼生产线厂家选购指南&#xff1a;关键指标与合作策略FAQ全解析“选对专业月饼生产线厂家&#xff0c;不是看设备价格&#xff0c;而是看‘整线效率柔性适配长期服务’的三重匹配度”——这是中秋旺季前众多食品企业采购负责人的共识。面对招工难、产能波动、品质不稳定等…...

CANN/catccos AllGather反量化算子

AllGather矩阵乘法反量化算子设计文档 【免费下载链接】catccos CATCCOS昇腾计算-通信融合算子模板库&#xff0c;是一个聚焦于提供高性能计算通信融合类算子基础模板的代码库。 项目地址: https://gitcode.com/cann/catccos 1. 算子概述 1.1 功能描述 AllGather矩阵乘…...

数据分析中的车辆重新分配

在数据分析中,我们常常需要处理和重新排列数据以满足特定需求。今天我们将讨论一个有趣的案例:如何使用Python中的Pandas库重新排序一个数据框(DataFrame),以确保在重新分配车辆时遵循特定的分配规则。 案例背景 假设你有一份车辆重新分配的记录表,每个车辆从一个账户转…...

2026年程序员必看:6条AI独立开发实战路径,从0到月入3万+(收藏版)

本文分享了6条程序员转型AI独立开发的实战路径&#xff0c;包括AI工具开发、开源项目变现、外包接单、内容创作、AI Agent产品和垂直行业解决方案。每条路径都包含核心逻辑、真实案例、工具推荐、收入预估和避坑要点&#xff0c;旨在帮助程序员在6个月内实现月入3万的目标。文章…...

强化学习新范式:文化累积与跨代智能进化技术解析

1. 项目概述&#xff1a;当智能体开始“传承”经验 在传统的强化学习框架里&#xff0c;我们训练一个智能体&#xff0c;让它从零开始&#xff0c;在某个环境中通过试错来学习最优策略。这个过程&#xff0c;无论是经典的Q-Learning、策略梯度&#xff0c;还是如今大放异彩的深…...

Phi-4-mini-reasoning 3.8B 网络协议分析助手:智能化解读与故障模拟

Phi-4-mini-reasoning 3.8B 网络协议分析助手&#xff1a;智能化解读与故障模拟 1. 网络协议分析的智能革命 网络工程师的日常工作总是伴随着海量的数据包和复杂的协议分析。传统工具虽然功能强大&#xff0c;但学习曲线陡峭&#xff0c;新手往往需要花费数月时间才能熟练使用…...

PhonePi MCP:基于MCP协议实现AI助手远程控制手机的完整指南

1. 项目概述&#xff1a;将你的手机变成AI助手的智能工具箱 如果你和我一样&#xff0c;日常工作中重度依赖像Cursor、Claude Desktop这类AI编程助手&#xff0c;那你肯定遇到过这样的场景&#xff1a;正在电脑前专注写代码&#xff0c;手机突然在另一个房间响了&#xff0c;或…...