自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 资源 (1)
  • 收藏
  • 关注

原创 leetcode16:最接近的三数之和

固定一个元素 nums[i],然后使用两个指针 left 和 right 分别指向 i 的下一个元素和数组的末尾。找出 nums 中的三个整数,使得它们的和与 target 最接近。首先对数组进行排序,这样可以方便处理元素之间的顺序关系,并在需要时快速跳过重复的元素。给定数组 nums = [-1, 2, 1, -4], 和 target = 1。了避免重复计算,当移动指针时,如果新指针指向的元素与前一元素相同,则跳过该元素。在遍历过程中,不断更新记录与 target 的差值最小的三数之和。

2024-08-29 15:53:24 467

原创 leectcode15:三数之和

给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a + b + c = 0?找出所有满足条件且不重复的三元组。之后使用三个指针,i,left,right。其中 i 从数组的起始位置开始遍历,left 初始化为 i+1,right 初始化为数组末尾。给定数组 nums = [-1, 0, 1, 2, -1, -4],首先对数组进行排序,这样可以方便处理重复元素和减少搜索范围。答案中不可以包含重复的三元组。数组中的数字可以是小数或负数。

2024-08-29 15:45:17 416

原创 leetcode14:最长公共前缀

编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。解释:输入不存在公共前缀。

2024-08-28 09:05:55 828

原创 leetcode13:罗马数字转整数

从左到右遍历罗马数字字符串,对于每个字符,将其转换为对应的整数值。由于存在相减的情况(如 IV),因此需要比较当前字符的整数值与前一个字符的整数值。如果当前字符的整数值大于前一个字符的整数值,则从结果中减去前一个字符的整数值(这实际上是在进行相减操作,如 IV 中的 I)。如果当前字符的整数值小于或等于前一个字符的整数值,则直接将前一个字符的整数值加到结果上。罗马数字包含七个不同的符号:I,V,X,L,C,D 和 M。I 可以放在 V (5) 和 X (10) 的左边,来表示 4 和 9。

2024-08-28 08:51:04 317

原创 leetcode12:整数转罗马数字

从大到小遍历:然后,从最大的罗马数字符号(M)开始,检查该符号在整数中能够出现的次数,并将其添加到结果字符串中。通常情况下,罗马数字中小的数字在大的数字的右边。处理特殊情况:对于 4、9、40、90、400 和 900 这些特殊情况,需要特别处理,因为它们不能通过简单的重复符号来表示。迭代减少整数:每次放置一个罗马数字符号后,从整数中减去对应的值,然后迭代处理剩余的整数。罗马数字包含七个不同的符号:I,V,X,L,C,D 和 M。I 可以放在 V (5) 和 X (10) 的左边,来表示 4 和 9。

2024-08-27 17:28:31 278

原创 leetcode11:盛最多水的容器

这个问题可以使用双指针法来解决,思路是从容器的两端开始,计算当前容器的面积,然后移动高度较低的那一边的指针,直至两个指针重合。这是因为如果移动高度较高的那一边的指针,容器的宽度会减小,而容器高度(由较小的那个指针决定)不会增加,所以面积只可能减小或保持不变。而移动高度较低的那一边的指针,则有可能增加容器的高度,从而增加面积。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i])。解释:图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。说明:你不能倾斜容器。

2024-08-27 17:04:27 256

原创 leetcode10:正则表达式匹配

如果 p[j-1] 不是 ‘*’,则 dp[i][j] 的值取决于 s[i-1] 是否等于 p[j-1] 或 p[j-1] 是否为 ‘.’,以及 dp[i-1][j-1] 的值。使用 ‘*’ 匹配一个或多个字符,此时 dp[i][j] 的值取决于 s[i-1] 是否等于 p[j-2] 或 p[j-2] 是否为 ‘.’,以及 dp[i-1][j] 的值。使用 ‘*’ 匹配零个字符,此时 dp[i][j] 的值取决于 dp[i][j-2]。解释:“.*” 表示可匹配零个或多个(‘*’)任意字符(‘.’)。

2024-08-27 16:34:15 337

原创 leetcode9:回文数

反转一半数字:为了避免溢出,我们不需要反转整个数字。相反,我们可以只反转数字的一半,并将其与原始数字的后半部分进行比较。排除非正整数:由于负数或末尾为零的非零整数(如10)不可能是回文数,我们可以首先检查这些条件。解释: 从左向右读, 为 -121。从右向左读, 为 121-。因此它不是一个回文数。假设环境只能存储得下 32 位的有符号整数,其数值范围是 [−231, 231 − 1]。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。解释: 从右向左读, 为 01。

2024-08-27 16:14:45 172

原创 leetcode8:字符串转换整数 (atoi)

转换数字:接下来,遍历字符串的剩余部分,将每个数字字符转换为对应的整数,并累加到结果中。可以通过字符与字符 ‘0’ 的 ASCII 码之差来获得数字值(例如,‘1’.charCodeAt(0) - ‘0’.charCodeAt(0) === 1)。函数需要去除字符串中的空格,并检查下一个字符(假设该字符不是空格)是否为正号、负号或者数字。处理溢出:在累加过程中,检查结果是否超过了 32 位有符号整数的范围。实现一个函数 myAtoi(string s),该函数将字符串转换成一个整数(32位有符号整数)。

2024-08-27 15:50:50 290

原创 leetcode7:整数反转

具体步骤是,每次取出整数的最后一位(可以通过对 10 取余得到),然后将其加到反转后的整数上(注意要乘以 10,因为每次循环都在处理更高一位的数字)。同时,为了避免溢出,需要在每次加法操作之前检查反转后的整数是否超过了 32 位有符号整数的范围。如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。使用数学运算来逐个反转整数的每一位。这种方法可以在反转的过程中直接判断并处理整数溢出的情况。给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。

2024-08-27 15:26:26 284

原创 leetcode6:Z字形变换

尽管使用两个栈(或数组作为栈的替代)来交替存储每一行的字符是一种方法,但出于空间复杂度和实现简洁性的考虑,更常见的是通过计算索引的方式来决定每个字符在结果字符串中的位置。因此,在计算每个字符的目标索引时,已经隐式地考虑了这一点。由于结果字符串在初始时可能不包含足够的空间来存储所有字符,因此在实际操作中,通常会使用一个足够大的数组或动态字符串来构建结果,并在最后返回其作为结果字符串。具体实现时,可以遍历输入字符串的每个字符,并根据其在Z字形路径上的位置计算出在结果字符串中的索引,然后将字符放置在该索引位置。

2024-08-27 13:50:54 334

原创 leetcode5:最长回文子串

使用一个二维数组 dp[i][j] 来表示子串 s[i…状态转移方程是 dp[i][j] = (s[i] == s[j]) && (j - i < 2 || dp[i+1][j-1])。遍历字符串中的每个字符或每对相邻字符(一个中心可能是单个字符,也可能是两个相邻字符),尝试将中心向两边扩展,检查扩展后的子串是否是回文。这种方法的时间复杂度也是 O(n^2),但由于它避免了额外的空间开销(除了几个变量外),因此在实际应用中往往表现良好。这种方法的时间复杂度是 O(n^3),其中 n 是字符串的长度。

2024-08-27 09:34:47 257

原创 leetcode4:两个有序数组的中位数

为了满足时间复杂度的要求,可以采用二分查找的思想。主要思路是将问题转化为在两个有序数组中寻找第k小的数,其中k为(m+n)/2(当数组总长度为奇数时)或(m+n)/2和(m+n)/2+1(当数组总长度为偶数时,需要找两个数来求平均值)。最简单直观的方法是先将两个数组合并成一个有序数组,然后直接根据合并后数组的长度是奇数还是偶数来找到中位数,这种方法的时间复杂度为O(m+n)。给定两个有序数组nums1和nums2,请找出这两个数组的中位数。

2024-08-27 09:15:46 849

原创 leetcode3:无重复字符的最长子串

这是解决该问题的有效方法,通过维护一个滑动窗口和一个哈希集合(如HashSet)来实现。窗口中的字符是当前考虑的不重复字符序列,哈希集合用于记录窗口中字符的存在性。遍历字符串的所有可能子串,并检查每个子串是否包含重复字符。然而,这种方法的时间复杂度为 O(n^3),在字符串较长时效率非常低。这个问题可以通过多种方法解决,包括但不限于暴力法、滑动窗口法等。输入一个字符串 s,找出 s 中不包含重复字符的最长子串的长度。解释:无重复字符的最长子串是 “abc”,其长度为 3。输入:“abcabcbb”

2024-08-27 08:50:12 932

原创 Leetcode2——两数相加(Add Two Numbers)

在每一步中,取出l1和l2当前节点的值(如果某个链表已经遍历完,则将其值视为0),将它们与进位变量carry相加,得到当前位的和。然后,更新进位变量carry为当前和除以10的商,将当前和的个位数创建为一个新节点,并连接到结果链表的末尾。给你两个非空的链表,表示两个非负的整数。解题策略是采用类似于手算加法的进位机制,遍历两个链表,处理每一位的加法和进位,最后返回新的链表表示结果。3.处理进位:在遍历完两个链表后,如果进位变量carry仍然大于0,则需要在结果链表的末尾再添加一个值为carry的新节点。

2024-08-26 10:17:40 305

原创 Leetcode1——两数之和(Two Sum)

LeetCode 第一题是一道非常经典的题目,通常被称为“两数之和”(Two Sum)。题目描述如下:给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值 target 的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。

2024-08-26 10:01:55 681

原创 在React中实现滑动时Tab吸顶

在React中实现滑动时Tab吸顶(即当页面滚动到一定位置时,Tab栏固定在页面顶部)。

2024-08-23 09:48:28 479

原创 如何在react里实现上传pdf

【代码】如何在react里实现上传pdf。

2024-08-22 14:23:14 457

原创 如何从零开始构建webpack4生产环境

Webpack 依赖于一个管理其所有设置的配置文件:webpack.config.js。-D 将其保存到 package.json 中的devDependencies中。要启用生产模式,只需要设置mode选项,生产模式下打包会删除死代码。然后在package.json中添加如下配置。安装clean-webpack-plugin。更改package.json里的控制台命令。假设基本项目结构如下。

2024-08-22 11:19:13 342

【课程设计/期末作业】绿色宽屏宠物乐园网站模板

一款专为宠物行业企业设计的绿色宽屏宠物乐园网站模板,该模板融合了宽屏响应式布局与纯HTML+CSS+JS技术,旨在为用户打造一个既美观又功能强大的在线平台。 模板采用了宽屏设计,充分利用了现代显示器的宽幅特点,为宠物乐园的展示提供了更加广阔的视觉空间。无论是宠物活动的精彩瞬间、乐园环境的优美风光,还是宠物们的可爱瞬间,都能以最佳的方式呈现给访客,让人仿佛置身于真实的宠物乐园之中。 响应式布局确保了网站在不同设备和屏幕尺寸下都能保持优秀的显示效果。无论是电脑、平板还是手机,用户都能享受到流畅、无缝的浏览体验,随时随地探索宠物乐园的魅力。 为了提升用户体验,模板集成了W3 Lightbox插件,使得图片展示更加生动和吸引人。当访客点击图片时,会弹出一个优雅的灯箱效果,展示高清大图,并配有便捷的导航按钮,方便用户浏览更多图片。 此外,模板还融入了丰富的自适应动画效果,如页面滚动动画、元素悬停效果等,为网站增添了更多的动态元素,使得整个页面更加生动有趣。这些动画效果不仅提升了网站的视觉效果,还增强了用户的互动体验。

2024-08-28

红黑设计IT电子产品商城网站模板,宽屏响应式布局,纯html+css+js,无后台

一款集大气商务、时尚美观与高效实用于一体的IT电子产品商城网站模板,专为追求高品质在线购物体验的企业量身定制。此模板巧妙融合了黑色与红色的经典配色方案,黑色象征着稳重与高端,红色则增添了一抹活力与激情,两者相辅相成,共同营造出一种既专业又不失活力的视觉效果。 模板采用宽屏响应式布局设计,充分利用了HTML5与CSS3的最新技术,确保了网站在不同设备和屏幕尺寸下都能呈现出完美的视觉效果。无论是电脑大屏、平板电脑还是智能手机,用户都能享受到流畅、无缝的浏览体验,随时随地探索最新的IT电子产品。 基于Bootstrap框架构建,模板不仅拥有强大的响应式能力,还内置了丰富的UI组件与交互效果,如优雅的导航菜单、动态的产品展示轮播、便捷的购物车与结算流程等,极大地提升了用户的购物便捷性与满意度。同时,模板还支持多语言切换功能,为外贸企业提供了更加广阔的市场拓展空间。 在产品展示方面,模板采用了高清大图与详尽的产品描述相结合的方式,让消费者能够全方位、多角度地了解每一款产品的特性与优势。此外,还配备了智能搜索与筛选功能,帮助用户快速定位到心仪的商品,提高购物效率。

2024-08-28

黑色新闻科技博客blog整站模板,宽屏响应式布局,纯Html+css+js,无后台

此模板采用宽屏响应式布局,完美适应从桌面到手机的各种屏幕尺寸,确保用户无论使用何种设备都能获得流畅、舒适的浏览体验。 模板整体以黑色为主色调,辅以简洁的线条与精致的元素,营造出一种沉稳而不失现代感的氛围。黑色背景不仅凸显了内容的重要性,还赋予了网站一种独特的科技感与神秘感,非常适合用于展示最新的科技动态、行业分析以及深度报道。 在视觉呈现上,模板充分利用了HTML5与CSS3的强大功能,通过高清大图幻灯展示、流畅的动画效果以及精细的字体排版,将每一篇博客文章都打造得引人入胜。宽屏设计使得文章内容得以充分展开,让读者在享受阅读乐趣的同时,也能感受到视觉上的震撼与享受。 此外,模板还集成了Bootstrap框架,使得前端开发更加高效、规范。通过Bootstrap的响应式网格系统,我们能够轻松实现不同屏幕尺寸下的布局调整,确保网站在各种设备上都能呈现出最佳效果。同时,Bootstrap还提供了丰富的组件与插件,如导航栏、轮播图、按钮等,为网站增添了更多的实用性与互动性。

2024-08-28

中华美食城网站模板,餐饮类网站模板,响应式布局,纯Html+css+js,无后台

中华美食城网站模板,专为热爱餐饮文化的您精心打造,是一款集传统韵味与现代技术于一体的餐饮类网站模板。该模板采用响应式布局设计,确保在不同设备和屏幕尺寸下都能呈现出最佳的视觉效果,无论是大屏电脑、平板还是智能手机,用户都能享受到流畅无阻的浏览体验。 模板以中华美食为核心,通过精美的HTML结构、优雅的CSS样式以及丰富的JavaScript交互效果,将中华美食的博大精深与网站的互动性完美融合。首页以高清美食图片轮播为引导,配以诱人的菜品描述,瞬间激发访客的食欲与探索欲。 在内容展示上,模板设计了清晰的分类导航和详尽的菜单列表,方便用户快速找到心仪的美食。同时,利用CSS3的动画效果,如鼠标悬停时的菜品图片放大、菜单项的渐变色彩等,为网站增添了一抹生动与活力。 整个模板设计风格典雅而不失时尚感,色彩搭配和谐统一,既体现了中华美食的深厚文化底蕴,又符合现代人的审美需求。

2024-08-28

精品电子商城网站模板,宽屏大图响应式布局,无后台,纯html+css+js

一款精品电子商城网站模板,该模板采用宽屏大图作为核心设计元素,不仅能够瞬间吸引访客眼球,还能完美适应不同屏幕尺寸,实现真正的响应式布局。这意味着,无论是在桌面端浏览,还是在移动端滑动,用户都能享受到流畅无阻的购物体验。 模板纯手工编写,仅使用HTML、CSS及JavaScript技术栈,无需复杂后台系统支持,极大地降低了维护成本与开发门槛。HTML结构清晰,便于SEO优化,助力商家提升网站在搜索引擎中的排名。CSS样式表精心编写,利用最新的CSS3特性,如Flexbox和Grid布局,确保页面布局既美观又高效。 整个模板设计简洁而不失大气,色彩搭配和谐,图标与字体选择均经过精心考量,旨在营造出一个专业、可信赖的购物环境。无论是电子产品、家居用品还是时尚服饰,这款模板都能完美适配,成为商家展示商品、吸引客户的得力助手。

2024-08-28

基于opengl的粒子系统

基于opengl做的一个粒子系统作业,包括雪景,花瓣,流星和粒子字母,代码清晰,适合初学者学习. ps:dlut的就不要下了

2018-05-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除