leetcode day9 day

LeetCode155:最小栈,最简单的中等难度题,时间击败100%,内存也低于官方

官方代码是直接使用JDK的Deque对象,这样的代码能学到什么?熟练操作API吗?还是自己实现一个最小栈吧,用时击败100%,内存击败78% ......
LeetCode 难度 内存 时间 官方

图解 LeetCode 算法汇总——回溯

本文首发公众号:小码A梦 回溯算法是一种常见的算法,常见用于解决排列组合、排列问题、搜索问题等算法,在一个搜索空间中寻找所有的可能的解。通过向分支不断尝试获取所有的解,然后找到合适的解,找完一个分支后再往回搜索。回溯算法通常使用递归的方式实现。 回溯本质是一种暴力搜索法,列出所有可能的解,然后找到合 ......
算法 LeetCode

LeetCode/将石头分散到网格的最少移动次数

给你一个大小为 3 * 3 ,下标从 0 开始的二维整数矩阵 grid ,分别表示每一个格子里石头的数目。 网格图中总共恰好有 9 个石头,一个格子里可能会有多个石头。 每一次操作中,你可以将一个石头从它当前所在格子移动到一个至少有一条公共边的相邻格子。 请你返回每个格子恰好有一个石头的最少移动次数 ......
网格 LeetCode 石头 次数

LeetCode279:完全平方数——动态规划算法一定是最优算法吗???

无意间看到了这么一个题: LeetCode279:完全平方数,动态规划解法超过46%,作弊解法却超过97% 看到这个题后我的第一个想法是这个动态规划算法一定是这道题最优解法吗? ......
算法 LeetCode 动态 279

Leetcode刷题本地debug框架搭建

思路 1. 初版 cmake + 单一.cpp文件 参考:https://blog.songjiahao.com/archives/362 2. 改良版 cmake + 源文件、头文件(含List、Tree等数据结构)分离 + gtest 参考:https://github.com/Pokerpok ......
框架 Leetcode debug

LeetCode刷题笔记

算法 1.差分数组+前缀和 1589. 所有排列中的最大和 - 力扣(LeetCode) 对于每一次遍历都有m个数需要加1,如果对这些数遍历,则需要O(m)复杂度,此时可以记录这m个数的差分数组: ​ 这样就可以把时间复杂度缩小到O(1),之后求前缀和就可以得到原来的数组。 2.线性筛(欧拉筛)求素 ......
LeetCode 笔记

LeetCode279:完全平方数,动态规划解法超过46%,作弊解法却超过97%

欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本篇概览 这是道高频面试题,值得一看 首先,这道题的难度是中等 来看题目描述: 给你一个整数 n ,返回 和为 n 的完全平方数的最少数量 。 ......
解法 LeetCode 动态 279 46%

day13

C++面试题 1.说一下常见的linux指令 ls:查看当前文件目录 cd:切换当前目录 rm:删除文件或者文件夹 cp:复制文件或者文件夹 cat:查看文件内容 touch:创建一个新文件 pwd:显示当前工作目录 2.请你说说delete和free的区别?1.delete是运算符,free是库函 ......
day 13

算法训练day4: LeetCode 24

算法训练day4: LeetCode 24.19.142.面试题07.02 24.两两交换链表中的结点 题目 题目24. 两两交换链表中的节点 - 力扣(LeetCode) 题解 讲解代码随想录 (programmercarl.com) 第一想法:模拟的方法,使用三个指针,将结点两两交换。 clas ......
算法 LeetCode day4 day 24

LOJ#6515. 「雅礼集训 2018 Day10」贪玩蓝月题解

题目链接 #6515. 「雅礼集训 2018 Day10」贪玩蓝月 - 题目 - LibreOJ (loj.ac) 分析 一个朴素的想法就是模拟这个过程,当询问时做一遍01背包,但这样明显会超时 想象这样一个例子:当两次询问中间夹着一次插入操作 第二次进行01背包,明显只需要在第一次的基础上对新插入 ......
题解 6515 2018 LOJ Day

ZROI - CSP 七连测 Day2 赛总

Genral 惊险刺激。但还是菜。 统计: 得分 得分率 挂分率 AC 数 200 50% 0% 2 各题目详情: 题目 A B C D Total 期望得分 100 0 100 0 200 实际得分 100 0 100 0 200 挂分 0 0 0 0 0 A \(n≤4\)?直接搜! 于是就没了 ......
ZROI Day2 CSP Day

[刷题记录Day 23]Leetcode二叉树

No.1 题目 修剪二叉搜索树 思路 递归法 有点抽象,要对具体案例做模拟才好懂 递归分析 返回值:节点,参数:节点,[下界,上界] 终止条件:遇到空节点,返回空 单层递归逻辑:判断不在范围内的情况:当前节点小于下界/大于上界,直接返回右/左子树递归结果;若在范围内,则递归筛查左右子树,返回当前节点 ......
Leetcode Day 23

JAVA SE day4

JAVA SE 基本的Dos 命令 #盘符切换 D:#查看当前目录下的所有文件 dir#切换目录(/d 换盘符 写在cd 后) cd 文件夹#返回上一级cd..#清理屏幕 cls#打开应用 calc 计算机 ,notepad 记事本,mspaint 画图#ping 命令 可以获得 IP地址 延迟 一 ......
JAVA day4 day SE

LeetCode207——课程表

你这个学期必须选修 numCourses 门课程,记为 0 到 numCourses - 1 。 在选修某些课程之前需要一些先修课程。 先修课程按数组 prerequisites 给出,其中 prerequisites[i] = [ai, bi] ,表示如果要学习课程 ai 则 必须 先学习课程 b ......
课程表 LeetCode 课程 207

python进阶 day08字典数据类型内置方法

字典数据类型内置方法 1.作用 对于值添加描述信息使用他 2.定义方式 用{}以逗号隔开加入键值对:key:value info_dict = {'name':'wangdapao','age':18,'height':120,'gender':'female','hobby_list':['dap ......
字典 类型 方法 数据 python

LeetCode297:hard级别中最简单的存在,java版,用时击败98%,内存击败百分之九十九

LeetCode的hard题都很难吗?不一定,297就非常简单,随本文一起,用最基础的知识写代码,执行用时能击败98.46%,与此同时,内存消耗击败99.73% ......
百分 LeetCode 级别 内存 hard

LeetCode -- 207. 课程表 (拓扑排序)

经典拓扑排序的应用,用拓扑排序的算法看看原图中是否有一个合法的拓扑序。 class Solution { public: const static int N = 2010, M = 5010; int h[N], e[M], ne[M], idx; int d[N], q[N]; void add ......
课程表 拓扑 LeetCode 课程 207

[代码随想录]Day40-动态规划part08

题目:139. 单词拆分 思路: 单词就是物品,字符串s就是背包,单词能否组成字符串s,就是问物品能不能把背包装满。 拆分时可以重复使用字典中的单词,说明就是一个完全背包! 动规五部曲分析如下: 确定dp数组以及下标的含义:dp[i] : 字符串长度为i的话,dp[i]为true,表示可以拆分为一个 ......
随想录 随想 代码 动态 part

图解 LeetCode 算法汇总——链表

> 本文首发公众号:小码A梦 一般数据主要存储的形式主要有两种,一种是数组,一种是链表。数组是用来存储固定大小的同类型元素,存储在内存中是**一片连续**的空间。而链表就不同于数组。链表中的元素不是存储在内存中**可以是不连续的空间**。 ![](https://files.mdnice.com/u ......
算法 LeetCode

算法训练 Leetcode 203、206、707

# 算法训练 Leetcode 203、206、707 ## 203.移除链表元素 以为头结点是空的,里面只存着下一个结点的地址。 注意空指针检查:p!=NULL; ~~~c++ class Solution { public: ListNode *removeElements(ListNode * ......
算法 Leetcode 203 206 707

day2 - 数组part02

力扣977. 有序数组的平方 思路1:双指针,在数组中心的两个数,作为左右指针的开始,循环比较左右指针,找出最小的平方,插入到结果数组中。 此思路是错误的,因为数组中心不见得是平方最小的数,比如数组:-4,-3,-2,-1 如果要输出的话,第一个就应该输出-1,并不是最中心的数。 思路2:那我先遍历 ......
数组 day2 part day 02

Python——14days

装饰器——概念简易版本进阶版本(参数,返回值问题)——(认证登录)固定套路装饰器简尔来说,前习中名称空间,函数嵌套,闭包函数等的汇总装饰器 就是 添加功能的工具核心:在《不改变原来的调用方式》和《内部代码》的基础值之上给函数《添加额外的功能》 简易版本: (解决参数问题,解决返回值问题) 目前统计的 ......
Python days 14

drf-day10

接口文档 解析图 接口文档展现形式 作为后端,接口写好,还需要写接口文档 作为前端,需要使用我们写的接口(移动端、web、桌面端) 接口文档的展现形式: 1.word、md,写好传到公司的某个平台,前端可以下载 2.自动生成接口文档,后端通过配置,把所写的接口都自动生成一个地址,访问这个地址能看到所 ......
drf-day drf day 10

ZR 七连 Day 1 游记

# ZR 七连 Day 1 游记 ## 游记篇 ### 赛前搞笑事件 今天是第一场正睿,还是要 **好好对待** 的 $ 17:59:58 $ 还在吃饭 $ 17:59:59 $ 做出重要决定,先打着比赛,有空就吃一口包子 $ 18:00 $ 比赛开始 乐死 ### 比赛开始了 先读一下第一题,发现 ......
游记 Day ZR

暑集 Day28 dp专题比赛题解

`2023-08-22 10:55:44` # 前言 注:这场比赛全是 dp 题,时长 3 小时。 第一眼看到 A 题这种奇葩题面直接跳了,感觉不是自己这种成分能写的,结果我旁边两个呆呆鸟 zyx,cf 居然觉得我直接上来把 A 秒了,然后他们死磕 A 题嗑了两个多小时???离谱。 最后我只 A 了 ......
题解 专题 Day 28

暑假集训Day19 比赛题解

`2023-08-05 16:22:13` ## 总结 这次打下来,由于 T2 贪心不够完全,T3 模拟 $5$ 个时不是最优,T4 想到暴力做法但是来不及打,加之全都是捆绑测试点,导致我 T2,T3 虽然加起来有不少点对了,但是还是判全错,最后也只剩下 T1 的 100。 感觉这次前三题也不难,都 ......
题解 Day 19

暑假集训 Day17 模拟赛题解

`2023-08-03 18:18:03` ### 前言 好家伙,很少完整订正一场比赛,可能是因为这个比赛相对来说确实不难吧(至少正解不难)。 # 总结与反思 这场比赛其实没有我想象的那么难,只是觉得题目可能不简单,就没有往简单的思路想,反而是被之前讲过的题疑惑,以为要用到一些很奇特的算法,结果打完 ......
模拟赛 题解 Day 17

Learn Git in 30 days——第 14 天: Git for Windows 选项设定

写的非常好的一个Git系列文章,强烈推荐 原文链接:https://github.com/doggy8088/Learn-Git-in-30-days/tree/master/zh-cn 使用 Git for Windows 指令列工具绝对比通过 GUI 工具操作来的有效率,原因就在于你可以把许多重 ......
Git Windows Learn days for

学习使用双指针(leetcode)

一、K 和数对的最大数目(JAVA) 给你一个整数数组 `nums` 和一个整数 `k` 。 每一步操作中,你需要从数组中选出和为 `k` 的两个整数,并将它们移出数组。 返回你可以对数组执行的最大操作数。 * **示例 1:** * 输入:nums = [1,2,3,4], k = 5 * 输出: ......
指针 leetcode

[代码随想录]Day39-动态规划part07

## 题目:[70. 爬楼梯](https://leetcode.cn/problems/climbing-stairs/description/) ### 思路: 除了`dp[i] = dp[i-1] + dp[i-2]`还可以用完全背包的方法,可以放无数个1或者2,看有多少种排列(先背包后物品) ......
随想录 随想 代码 动态 part