算法题-37,38
假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢示例 1输入n 2输出2解释有两种方法可以爬到楼顶。1. 1 阶 1 阶2. 2 阶示例 2输入n 3输出3解释有三种方法可以爬到楼顶。1. 1 阶 1 阶 1 阶2. 1 阶 2 阶3. 2 阶 1 阶遇到这道题先看小例子找规律n 1只有一种 1所以f(1) 1n 2可以1 12所以f(2) 2n 3可以1 1 11 22 1所以f(3) 3n 4所有方法111111212121122所以f(4) 5要到 第 n 阶最后一步只能是情况1最后走 1 步那之前就在n-1阶方法数f(n-1)情况2最后走 2 步那之前就在n-2阶方法数f(n-2)所以f(n) f(n-1) f(n-2)这就是 斐波那契数列。动态规划解法状态dp[i] 到第 i 阶的方法数状态转移dp[i] dp[i-1] dp[i-2]初始化dp[1] 1dp[2] 2/** * param {number} n * return {number} */ var climbStairs function(n) { const dp new Array(n 1) dp[1] 1 dp[2] 2 for(let i 3;i n ;i){ dp[i] dp[i - 1] dp[i - 2] } return dp[n] };给你一个单链表的头节点 head 请你判断该链表是否为回文链表。如果是返回 true 否则返回 false 。判断这道会问链表最简单就说把链表放入数组里面找但是这样空间复杂度就上来了进阶的关键其实就是两个点第一如和快速找到链表的中间节点第二部如何反转前半部分或者后半部分的链表思考如果同时设立两个指针一个速度比另一个快一倍那么在满指针在一半链表的时候快指针到达了末尾这样就找了分割点let fast head let slow head while(fast.next ! null fast.next.next ! null ){ slow slow.next fast fast.next.next } slow slow.next这就是具体的实现然后接下来就是反转链表let prev null let curr slow while(curr ! null){ let next curr.next curr.next prev prev curr curr next } slow prev通过这两步就可以判断了/** * Definition for singly-linked list. * function ListNode(val, next) { * this.val (valundefined ? 0 : val) * this.next (nextundefined ? null : next) * } */ /** * param {ListNode} head * return {boolean} */ var isPalindrome function(head) { if(head.next null) return true let fast head let slow head while(fast.next ! null fast.next.next ! null ){ slow slow.next fast fast.next.next } slow slow.next // ⭐ 反转后半部分链表 let prev null let curr slow while(curr ! null){ let next curr.next curr.next prev prev curr curr next } slow prev // 现在 slow 指向反转后的头 while(slow ! null){ if(head.val slow.val){ head head.next slow slow.next }else{ return false } } return true };

相关新闻

基于PyTorch图像分类的项目复现总结

基于PyTorch图像分类的项目复现总结

基于PyTorch图像分类的项目复现总结 1. 项目背景 1.1 项目简介 本项目是一个基于PyTorch的深度学习图像分类训练框架,旨在为研究人员和开发者提供一个完整、灵活且高效的图像分类模型训练解决方案。框架集成了多种经典的卷积神经网络架构,支持多个主流…

2026/7/5 12:42:28 阅读更多 →
F.动态规划-入门DP-打家劫舍:198. 打家劫舍

F.动态规划-入门DP-打家劫舍:198. 打家劫舍

题目链接:198. 打家劫舍(中等) LCR 089. 打家劫舍(中等) 算法原理: 此题与下题完全相同👇 动态规划算法-简单多状态dp问题:11.按摩师 解法:动态规划 0ms击败100.00% 时间…

2026/7/4 16:43:08 阅读更多 →
“三晋优品 乐购云端”直播活动开始啦!

“三晋优品 乐购云端”直播活动开始啦!

2026/7/3 4:45:33 阅读更多 →

最新新闻

Twitter API Client实战:构建自动化Twitter机器人全攻略

Twitter API Client实战:构建自动化Twitter机器人全攻略

Twitter API Client实战:构建自动化Twitter机器人全攻略 【免费下载链接】twitter-api-client A user-friendly Node.js / JavaScript client library for interacting with the Twitter API. 项目地址: https://gitcode.com/gh_mirrors/twi/twitter-api-client …

2026/7/5 16:55:06 阅读更多 →
HyperDB入门指南:5分钟快速上手分布式数据库

HyperDB入门指南:5分钟快速上手分布式数据库

HyperDB入门指南:5分钟快速上手分布式数据库 【免费下载链接】hyperdb Distributed scalable database 项目地址: https://gitcode.com/gh_mirrors/hyp/hyperdb HyperDB是一款分布式可扩展数据库,它以文件系统的隐喻构建,让开发者能够…

2026/7/5 16:53:05 阅读更多 →
【Bug已解决】Codex CLI 报错 EMFILE: too many open files 解决方案

【Bug已解决】Codex CLI 报错 EMFILE: too many open files 解决方案

【Bug已解决】Codex CLI 报错 EMFILE: too many open files 解决方案 1. 问题描述 让 Codex 处理一个规模较大的项目(比如文件数量众多的 monorepo)时,任务执行到某个阶段突然崩溃,报出文件描述符耗尽的错误: Error: E…

2026/7/5 16:53:05 阅读更多 →
WeChatMsg技术实现深度解析:从数据提取到智能分析的全栈架构

WeChatMsg技术实现深度解析:从数据提取到智能分析的全栈架构

WeChatMsg技术实现深度解析:从数据提取到智能分析的全栈架构 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/we…

2026/7/5 16:53:05 阅读更多 →
Missionary离散事件流处理:实现高效数据管道的10个实用示例

Missionary离散事件流处理:实现高效数据管道的10个实用示例

Missionary离散事件流处理:实现高效数据管道的10个实用示例 【免费下载链接】missionary A functional effect and streaming system for Clojure/Script 项目地址: https://gitcode.com/gh_mirrors/mi/missionary 在当今数据驱动的世界中,高效的…

2026/7/5 16:53:05 阅读更多 →
Instatic与AI内容助手:终极指南与写作优化功能详解

Instatic与AI内容助手:终极指南与写作优化功能详解

Instatic与AI内容助手:终极指南与写作优化功能详解 【免费下载链接】Instatic Instatic is a modern self-hosted visual CMS - get it running in 1 minute 项目地址: https://gitcode.com/GitHub_Trending/in/Instatic Instatic是一款现代化的自托管视觉CM…

2026/7/5 16:51:04 阅读更多 →

日新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

周新闻

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容

B站视频下载神器BiliTools:5分钟学会轻松保存任何B站内容 【免费下载链接】BiliTools A cross-platform bilibili toolbox. 跨平台哔哩哔哩工具箱,支持下载视频、番剧等等各类资源 项目地址: https://gitcode.com/GitHub_Trending/bilit/BiliTools …

2026/7/5 0:03:34 阅读更多 →
威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型全解析:从新手入门到实战应用,助你构建安全产品!

威胁模型的陌生现状在忙碌疲惫的一天里,参与了关于混合后量子密码学的讨论,应付端点攻击找茬的人,还参与留言板讨论后,发现“威胁模型”对多数人仍是陌生概念,且多被当作时髦用语。有趣的相关画作有一幅由 Embyr 创作的…

2026/7/5 0:03:34 阅读更多 →
渗透测试入门指南:从零基础到实战环境搭建

渗透测试入门指南:从零基础到实战环境搭建

1. 从“看热闹”到“入门”:我理解的渗透测试到底是什么?每次看到新闻里说某个大公司的数据被“黑”了,或者某个网站被攻击导致服务瘫痪,你是不是和我一样,心里会冒出两个念头:一是“这黑客真厉害”&#x…

2026/7/5 0:07:38 阅读更多 →

月新闻