中等专题

【中等】保研/考研408机试-二分查找(模板题)

二分查找就是在一个有序数组中查找某个值,以首端尾端的中点mid查找对比,mid与要查找的数进行对比,看落在哪个区间,在那个区间重新得到首端和尾端,进而得到新的mid值。 一、模板题 二分查找-I_牛客题霸_牛客网 class Solution {public:int search(vector<int>& nums, int target) {int left=0,right=nums.s

Java中等题-整数替换(力扣)

给定一个正整数 n ,你可以做如下操作: 如果 n 是偶数,则用 n / 2替换 n 。如果 n 是奇数,则可以用 n + 1或n - 1替换 n 。 返回 n 变为 1 所需的 最小替换次数 。 示例 1: 输入:n = 8输出:3解释:8 -> 4 -> 2 -> 1 示例 2: 输入:n = 7输出:4解释:7 -> 8 -> 4 -> 2 -> 1或 7 ->

Java中等题-摆动序列(力扣)

如果连续数字之间的差严格地在正数和负数之间交替,则数字序列称为 摆动序列 。第一个差(如果存在的话)可能是正数或负数。仅有一个元素或者含两个不等元素的序列也视作摆动序列。 例如, [1, 7, 4, 9, 2, 5] 是一个 摆动序列 ,因为差值 (6, -3, 5, -7, 3) 是正负交替出现的。 相反,[1, 4, 7, 2, 5] 和 [1, 7, 4, 5, 5] 不是摆动序列,第一

Java中等题-递增的三元子序列(力扣)

你一个整数数组 nums ,判断这个数组中是否存在长度为 3 的递增子序列。 如果存在这样的三元组下标 (i, j, k) 且满足 i < j < k ,使得 nums[i] < nums[j] < nums[k] ,返回 true ;否则,返回 false 。 示例 1: 输入:nums = [1,2,3,4,5]输出:true解释:任何 i < j < k 的三元组都满足题意

Leetcode—72. 编辑距离【中等】

2024每日刷题(158) Leetcode—72. 编辑距离 动态规划算法思想 实现代码 class Solution {public:int minDistance(string word1, string word2) {const int m = word1.length();const int n = word2.length();vector<vector<int>>

Java中等题-去除重复字母(力扣)

给你一个字符串 s ,请你去除字符串中重复的字母,使得每个字母只出现一次。需保证 返回结果的 字典序 最小(要求不能打乱其他字符的相对位置)。 示例 1: 输入:s = "bcabc"输出:"abc" 示例 2: 输入:s = "cbacdcbc"输出:"acdb" 这道题我没有思路,看了官方解题思路之后,思路梳理如下: 注:这道题适合经常复习 用一个数组pice[]来

力扣刷题--137. 只出现一次的数字 II【中等】

题目描述🍗 给你一个整数数组 nums ,除某个元素仅出现 一次 外,其余每个元素都恰出现 三次 。请你找出并返回那个只出现了一次的元素。 你必须设计并实现线性时间复杂度的算法且使用常数级空间来解决此问题。 示例 1: 输入:nums = [2,2,3,2] 输出:3 示例 2: 输入:nums = [0,1,0,1,0,1,99] 输出:99 提示: 1 <= nums.le

数分基础(04)EXCEL常用快捷键,查看中等规模数据不用滚轮拼命

文章目录 1. 说明2. EXCEL常用快捷键 1. 说明 Excel适用于较小的或者中等规模的数据集,行数限制为1,048,576行,≥104万。 但很可能未及这个上限时,性能就显著下降,一般远低于此行数限制才比较流畅性,例如10万。 中小规模的数据集一般可以在本地单机处理,不需要额外的服务器或者分布式计算资源。 数据集较小,通常不超过数千条记录,几百到几千条。 数据集简

LeetCode 3143. 正方形中的最多点数【位运算,构造法】中等【C++,Java,Py3,Go,Rust】

本文属于「征服LeetCode」系列文章之一,这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁,本系列将至少持续到刷完所有无锁题之日为止;由于LeetCode还在不断地创建新题,本系列的终止日期可能是永远。在这一系列刷题文章中,我不仅会讲解多种解题思路及其优化,还会用多种编程语言实现题解,涉及到通用解法时更将归纳总结出相应的算法模板。 为了方便在PC上运行调试、分享代

三角形最小路径和[中等]

优质博文:IT-BLOG-CN 一、题目 给定一个三角形triangle,找出自顶向下的最小路径和。 每一步只能移动到下一行中相邻的结点上。相邻的结点 在这里指的是 下标 与 上一层结点下标 相同或者等于 上一层结点下标 + 1 的两个结点。也就是说,如果正位于当前行的下标 i ,那么下一步可以移动到下一行的下标i或i + 1 。 示例 1: 输入:triangle = [[2],[3,

从力扣中等+困难题+表白HTML测试 -- 文心快码(Baidu Comate)

0 写在前面 (通过如下链接/二维码进入官网注册,并在IDE使用三次及以上可以找我领计算机基础/ML/DL 面经/知识点一份~) 官网地址:Baidu Comate Step1 打开文心快码(Baidu Comate)官网,点击「免费使用」/「下载安装」 Step2 可以根据官网步骤快速唤起VS Code; 也可以直接在VS Code、Visual Studio扩展管理搜索“

【经典算法】LeetCode 22括号生成(Java/C/Python3/Go实现含注释说明,中等)

作者主页: 🔗进朱者赤的博客 精选专栏:🔗经典算法 作者简介:阿里非典型程序员一枚 ,记录在大厂的打怪升级之路。 一起学习Java、大数据、数据结构算法(公众号同名) ❤️觉得文章还不错的话欢迎大家点赞👍➕收藏⭐️➕评论,💬支持博主,记得点个大大的关注,持续更新🤞 ————————————————- 首先,请注意题目链接有误,您提供的链接是LeetCode 14,但题目

【C++LeetCode】【热题100】字母异位词分组【中等】-不同效率的题解【3】

题目: 暴力方法: class Solution {public:vector<vector<string>> groupAnagrams(vector<string>& strs) {std::unordered_set<std::string> uniqueWord;//单词字符唯一化集合vector<vector<std::string>> res;//结果for(int i

一个简单、快速用于训练和微调中等规模GPT模型的开源项目

大家好,今天给大家分享的是一个简单、快速用于训练和微调中等规模GPT模型的开源项目,该项目旨在拓宽深度学习领域的应用,特别是为深度学习的入门者提供便利。 Nano GPT是一个基于PyTorch的开源项目,由前特斯拉AI负责人Andrej Karpathy开发。它是对minGPT的简化和重写,旨在提供一个更简单、更快速的工具,用于训练和微调中等规模的GPT模型。该项目在GitHub上有超过26

python面试题6:介绍一下进程同步锁的概念?(难度--中等)

文章目录 题目回答 题目 介绍一下进程同步锁的概念? 回答 进程同步锁是用于协调多个进程对于一个共享资源调用的机制,避免在同一时刻,有多个进程同时对共享资源进行调用,避免出现数据混乱。优点是保证了数据的安全性,缺点是容易发生进程堵塞,降低运行速度。以下的示例作为参考: import multiprocessingimport timeimport randomdef w

python面试题5:浅拷贝和深拷贝之间有什么区别?(难度--中等)

文章目录 题目回答1.浅拷贝2.深拷贝 题目 浅拷贝和深拷贝之间有什么区别? 回答 1.浅拷贝 浅拷贝对于不可变数据,如字符串,整数,数组,往往是直接复制其的值。对于可变对象如列表,则是指向同一个地址。这意味着,改变原对象,拷贝的对象的值也会随之改变,示例如下: subjectA=[1,2,3]subjectB=subjectA#浅拷贝subjectA.append

【LeetCode滑动窗口算法】长度最小的子数组 难度:中等

我们先看一下题目描述: 解法一:暴力枚举 时间复杂度:o(n^3) class Solution {public:int minSubArrayLen(int target, vector<int>& nums){int i = 0, j = 0;vector<int> v;for (;i < nums.size();i++){int sum = nums[i];for (

牛客NC18 顺时针旋转矩阵【中等 数学 Java/Go/PHP/C++】

题目 题目链接: https://www.nowcoder.com/practice/2e95333fbdd4451395066957e24909cc https://www.lintcode.com/problem/161/ 思路 Java代码 import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定,请

Polar Web【中等】search

Polar Web【中等】search Contents Polar Web【中等】search思路&探索首页一般注入方式 EXP&效果Payload 总结 思路&探索 见到题目标题,预测可能有目录扫描或者输入框查询数据之类情况,具体细节在破解过程中才能清楚 打开站点,显示为输入框查询功能界面,尝试输入上传数字 1、2...、10 均会返回用户信息,于是考虑到存在SQL注入

406. 根据身高重建队列(中等)

406. 根据身高重建队列 1. 题目描述2.详细题解3.代码实现3.1 Python3.2 Java 1. 题目描述 题目中转:406. 根据身高重建队列 2.详细题解     做一道题之前先静心,默念三遍一切反动派都是纸老虎。已知一个队列,队列中每个数据表示一个属性,[hi, ki] 表示第 i 个人的身高为 hi ,前面 正好 有 ki 个身高大于或等于 hi

Polar Web【中等】xxe

Polar Web【中等】xxe Contents Polar Web【中等】xxe思路&探索EXP运行&总结 思路&探索 如题目所示,此题考查XXE漏洞,具体细节需要逐步深挖 打开站点,提示了flag所在的文件,点击按钮,可见php的配置信息,搜索xml发现该服务可读取外部XML实体由于并不清楚具体的注入路径,因此先对站点进行扫描,发现存在/dom.php路径进入该路径发

Polar Web【中等】反序列化

Polar Web【中等】反序列化 Contents Polar Web【中等】反序列化思路&探索EXPPHP生成PayloadGET传递参数 运行&总结 思路&探索 一个经典的反序列化问题,本文采用PHP代码辅助生成序列字符串的方式生成 Payload 来进行手动渗透。 打开站点,分析PHP代码: 可以发现,需要实现触发命令执行的位置在 process 类中的 close

Polar Web【中等】写shell

Polar Web【中等】写shell Contents Polar Web【中等】写shell思路&探索EXP运行&总结 思路&探索 初看题目,预测需要对站点写入木马,具体操作需要在过程中逐步实现。 打开站点(见下图),出现 file_put_contents 函数,其中接收 GET 参数 filename同时发现存在半封闭形式的PHP代码 exit() 会导致直接退出程

【LeetCode】两数相加(基于单向链表)难度:中等

目录 理清题目 解题思路 题目代码 运行结果 我们来看一下题目描述:   理清题目  首先题目要求链表中的节点的值必须在[0,9]之间也就是说我们要处理的数字必为正整数,因此就不会涉及到太复杂的计算,题目其实就是要求对两个链表中的节点的值分别逆序形成两个正整数,再将这两个数相加会形成一个新的数,再将该数逆序后将该数的每一位作为和链表的节点。 解题思路 首

763. 划分字母区间(中等)

763. 划分字母区间 1. 题目描述2.详细题解3.代码实现3.1 Python3.2 Java 1. 题目描述 题目中转:763. 划分字母区间 2.详细题解     划分字母片段,要求每个字母仅能出现在一个片段中,划分的片段数要最多。如果没有限制要最多的情况,那么划分一个片段即不划分任何新的片段即可,因此采用贪心策略:每个片段寻找最小的结束下标。   直观思路:

【链表】Leetcode 82. 删除排序链表中的重复元素 II【中等】

删除排序链表中的重复元素 II 给定一个已排序的链表的头 head , 删除原始链表中所有重复数字的节点,只留下不同的数字 。返回 已排序的链表 。 示例 1: 输入:head = [1,2,3,3,4,4,5] 输出:[1,2,5] 解题思路 由于链表是已排序的,所以重复的节点会相邻出现。可以使用双指针法来解决这个问题,一个指针用于遍历链表,另一个指针用于跟踪上一个未重复的节点。