草庐IT

LeetCode_day

全部标签

LeetCode笔记:Biweekly Contest 107

LeetCode笔记:BiweeklyContest1071.题目一1.解题思路2.代码实现2.题目二1.解题思路2.代码实现3.算法优化3.题目三1.解题思路2.代码实现4.题目四1.解题思路2.代码实现比赛链接:https://leetcode.com/contest/biweekly-contest-107/1.题目一给出题目一的试题链接如下:2744.FindMaximumNumberofStringPairs1.解题思路这一题由于每一个字符串都是unique的,因此事实上问题就被大幅简化了,我们只需要找到所有的反字符串同样出现过的,且其反不为自身的字符串的个数除以2即可。2.代码实现

代码随想录第6天| 哈希表理论基础 ,LeetCode242.有效的字母异位词,LeetCode349. 两个数组的交集,LeetCode202. 快乐数,LeetCode1. 两数之和

哈希表(散列表)理论基础:哈希表是根据关键码的值而直接进行访问的数据结构。直白来讲其实数组就是一张哈希表。 什么时候想到用哈希法,当我们遇到了要快速判断一个元素是否出现集合里的时候,就要考虑哈希法。当我们遇到了要快速判断一个元素是否出现集合里的时候,就要考虑哈希法。但是哈希法也是牺牲了空间换取了时间,因为我们要使用额外的数组,set或者是map来存放数据,才能实现快速的查找。如果在做面试题目的时候遇到需要判断一个元素是否出现过的场景也应该第一时间想到哈希法!哈希函数:将所求数据映射到哈希表上叫做哈希函数。哈希函数如下图所示,通过hashCode把名字转化为数值,一般hashcode是通过特定编

袁铮Day1

首先了解了自身还需要学习的知识Java技术栈Java面向对象内部类或lambda表达式Java多线程Java同步和锁Java的锁的分类,java定时线程,java线程通信,JUC并发包JavaSPI机制JavaRPC机制JavaHutool生态Springboot和springCloudSpringboot注解:@autowried 和@Resources区别是什么Vertx和solon框架JavaScript技术栈鸿蒙使用javascript开发模式+微服务+nginx(中间件)整合TypeScript技术栈了解鸿蒙3.0体系安装鸿蒙基于3.0开发工具Java命令式开发模式JavaScrip

【每日一题Day220】LC1439有序矩阵中的第 k 个最小数组和 | 堆

再来做一下373,之前都没有试过用小顶堆求第K小的,有序这个条件对我而言是摆设了查找和最小的K对数字【LC373】给定两个以升序排列的整数数组nums1和nums2,以及一个整数k。定义一对值(u,v),其中第一个元素来自nums1,第二个元素来自nums2。请找到和最小的k个数对(u1,v1),(u2,v2)…(uk,vk)。大顶堆思路:使用大顶堆存放最小的K对数字,堆将数对之和从大到小排序,堆顶为最大值,当堆的大小大于kkk并且当遍历到的数对之和小于堆顶数对之和时,将堆顶数对弹出,将新数对压入;当堆的大小小于kkk时,直接将新数对压入由于数组是升序排列,因此每个数组只需要取前min(k,n

【Leetcode60天带刷】day03链表——203. 移除链表元素,707.设计链表,206. 反转链表

 链表基础知识:链表就像一串小火车,有一节一节的车厢,每个车厢都叫做一个节点。 单链表:每个链表车厢里有两个内容,一个放的是真正的数据,另一个放的是下一节车厢的编号。双链表:每个链表车厢里有三个内容,一个真正数据,一个下一个车厢的编号,还有一个上一节车厢的编号,这个是单链表所没有的。循环链表:链表小火车的车头和车尾连接起来。题目:203.移除链表元素Leetcode原题链接:203.移除链表元素给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val==val 的节点,并返回 新的头节点 。示例1:输入:head=[1,2,6,3,4,5,6],val=6

【LeetCode】动态规划 刷题训练(二)

文章目录62.不同路径题目解析状态转移方程完整代码63.不同路径II题目解析状态转移方程完整代码剑指Offer47.礼物的最大价值题目解析状态转移方程完整代码62.不同路径点击查看:不同路径一个机器人位于一个mxn网格的左上角(起始点在下图中标记为“Start”)。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。问总共有多少条不同的路径?示例1:输入:m=3,n=7输出:28示例2:输入:m=3,n=2输出:3解释:从左上角开始,总共有3条路径可以到达右下角。向右->向下->向下向下->向下->向右向下->向右->向下题目解析只能向下或者向右走

JavaScript Day03 对象详解

文章目录1.什么是对象?2.对象的创建2.1字面量模式2.2构造函数模式3对象的访问4.新增删除对象中的属性5.Object显示类型转换(强制类型转换)5.1-ECMAScript中可用的3种强制类型转换如下:-Boolean(value)-String(value)-Number(value)5.2-Object类型到Boolean类型5.3-Object类型转String类型-转换规则:Object类型转Number类型-转换规则:6.检测属性in-Object.prototype.hasOwnProperty()-Object.prototype.propertyIsEnumerable

【LeetCode: 486. 预测赢家 | 暴力递归=>记忆化搜索=>动态规划 】

🚀算法题🚀🌲算法刷题专栏|面试必备算法|面试高频算法🍀🌲越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨🌲作者简介:硕风和炜,CSDN-Java领域优质创作者🏆,保研|国家奖学金|高中学习JAVA|大学完善JAVA开发技术栈|面试刷题|面经八股文|经验分享|好用的网站工具分享💎💎💎🌲恭喜你发现一枚宝藏博主,赶快收入囊中吧🌻🌲人生如棋,我愿为卒,行动虽慢,可谁曾见我后退一步?🎯🎯🚀算法题🚀🍔目录🚩题目链接⛲题目描述🌟求解思路&实现代码&运行结果⚡暴力法🥦求解思路🥦实现代码🥦运行结果⚡记忆化搜索🥦求解思路🥦实现代码🥦运行结果⚡动态规划🥦求解思路🥦实现代码🥦运行结果💬共勉🚩题目链接48

渗透测试面试题--日更(1-9day)

day-one1、拿到一个待检测的web站,渗透测试思路?答:(1)信息收集获取域名的whois信息,获取注册者的邮箱姓名电话等查服务器的旁站以及子域名站点,因为主站一般比较难,所以可以先看看旁站有没有通用cms或者其他漏洞查看服务器操作系统版本,web中间件,看看是否存在已知漏洞查看IP,进行IP地址的全面扫描,对响应端口进行漏洞探测(2)漏洞扫描:开始检测漏洞,例如XSS,SQL注入,命令执行,越权访问,暴力破解…(3)漏洞利用:利用扫描到的漏洞拿到webshell或者其他权限(4)提权:提权服务器(5)日志清理(6)总结报告及修复方案2、渗透测试中常见端口?答:1)数据库类(扫描弱口令)

2023-5-26 LeetCode每日一题(二进制矩阵中的最短路径)

2023-05-29每日一题一、题目编号1091.二进制矩阵中的最短路径二、题目链接点击跳转到题目位置三、题目描述给你一个nxn的二进制矩阵grid中,返回矩阵中最短畅通路径的长度。如果不存在这样的路径,返回-1。二进制矩阵中的畅通路径是一条从左上角单元格(即,(0,0))到右下角单元格(即,(n-1,n-1))的路径,该路径同时满足下述要求:路径途经的所有单元格都的值都是0。路径中所有相邻的单元格应当在8个方向之一上连通(即,相邻两单元之间彼此不同且共享一条边或者一个角)。畅通路径的长度是该路径途经的单元格总数。四、解题代码classSolution{intdir[8][2]={{-1,0}