首页
AI Coding
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
算法
GeekQiaQia
创建于2021-08-02
订阅专栏
算法:解决问题的一种方法
等 2 人订阅
共40篇文章
创建于2021-08-02
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
【温故知新】`518. 零钱兑换 II` 完全背包问题组合解-动态规划实现
题目描述 给你一个整数数组 coins 表示不同面额的硬币,另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额,返回 0 。 假设每一
【温故知新】`322. 零钱兑换` 动画演示-完全背包问题最小解-动态规划实现
题目描述 给你一个整数数组 coins ,表示不同面额的硬币;以及一个整数 amount ,表示总金额。 计算并返回可以凑成总金额所需的 最少的硬币个数 。如果没有任何一种硬币组合能组成总金额,返回
【温故知新】`189. 旋转数组` 额外数组、翻转数组(better)实现
题目描述 给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。 进阶: 尽可能想出更多的解决方案,至少有三种不同的方法可以解决这个问题。 你可以使用空间复杂度为 O(1) 的 原
【温故知新】:`19、删除链表倒数第 n 个结点`快慢指针实现,两种不同的优先处理方式
题目描述 给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。 示例: 给定一个链表: 1->2->3->4->5, 和 n = 2. 当删除了倒数第二个节点后,链表变为 1->2->3
【温故知新】`16.最接近的三数之和` 排序+双指针实现
题目描述 给定一个包括 n 个整数的数组 nums 和 一个目标值 target。找出 nums 中的三个整数,使得它们的和与 target 最接近。返回这三个数的和。假定每组输入只存在唯一答案。
【温故知新】`14. 最长公共前缀` 分治法、横向扫描实现
`14. 最长公共前缀` 分治法、横向扫描实现,分治算法将一个问题分而治之,横向比较:将数组中的第一个元素作为最长公共前缀进行比较
【魅力算法】`62. 不同路径` 动态规划、滚动数组思想实现
遍历列,dp[i]表示:到行i路径数。扫描行:本列dp[i] = 左列dp[i]→ + 上行dp[i - 1]↓
【魅力算法】“392. 判断子序列”-双指针滑动思想实现
题目描述解题思路双指针滑动思想对于是否为子数组/子字符串的判断方法,通常来说双指针滑动思想可以作为很好的一种理解;定义n、m作为s和t的长度;定义i、j作为指向s和t的双指针初始化为0,指向s和t的初
【魅力算法】'三数之和'-排序、left right 双指针实现 |刷题打卡
题目描述解题思路排序、双指针并去重;思路详解首先对当前数组进行排序,[-4,-1,-1,0,1,2]有序性有助于左右指针滑动是判断去重;定义基点i(三数中数值最小,位置最左,单次循环内不滑动);定义左
【魅力算法】'验证回文串' 双指针&正则实现 |刷题打卡
题目描述解题思路:正则&&双指针正则表达式全集正则表达式去除无效字符/[^A-Za-z0-9]/g使用replace()替换无效匹配字符后,将所有的字符转化为小写左右指针leftright对字符串s遍
【魅力算法】'删除排序数组中的重复项' 双指针实现 |刷题打卡
题目描述:解题思路双指针法(pre/i)定义指针pre指向最新的不重复数组下标;pre=0;遍历数组nums,让当前遍历元素nums[i]与上一个元素进行比较nums[i-1]只有if(nums[i]
【魅力算法】'删除链表倒数第n个节点' 快慢双指针实现|刷题打卡
建立快指针p和慢指针q,且记n为初始值即要删除的倒数第n个数。 当p指针指向null时,停止遍历,循环体不再继续执行。此时快指针p刚好比慢指针q多走了n+1步;
【魅力算法】'反转列表' 双指针迭代和递归实现 |刷题打卡
题目描述:解题思路:1、双指针迭代(从链表头开始反转)申明定义两个指针,curr指向链表头head;prev指向null;遍历迭代的终止条件为curr指向null;每次遍历标记保存下一个需要反转的节点
【魅力算法】'旋转链表' 将每个节点向右移动k位 |刷题打卡
将尾节点作为移动点。每次循环将当前尾节点移动到链表head;
【魅力算法】'链表的中间结点'单指针法&快慢双指针法实现 |刷题打卡
题目描述解题思路单指针法对链表进行两次遍历:第一次遍历我们统计元素个数size;然后计算mid=size/2;第二次遍历:step=0;遍历循环条件为:step<size/2;代码复杂度分析快慢指针定
【魅力算法】'长度最小的子数组' 双指针&滑动窗口实现 |刷题打卡
题目描述:解题思路滑动窗口、双指针(left,i)定义指针left为窗口的起始下标;left=0;窗口从下标i=0开始滑动;遍历nums计算当前窗口的sum和;当前窗口即为当前连续子数组;如果sum>
【魅力算法】'买卖股票的最佳时机' 贪心算法&双指针实现|刷题打卡
题目描述解题思路假设pre为买入日期;cur为卖出日期;定义当前最大利润max;遍历prices数组;如果当天价格小于买入价格,则将当天价格作为买入价格;即:if(prices[i]<prices[p
【魅力算法】“按摩师/打家劫舍”-动态规划、滚动数组思想实现 |刷题打卡
题目描述解题思路动态规划题目理解按摩师对于每一个预约请求:可以接受预约;可以不接受预约;且不能接受相邻的预约请求;最后需要得出请求序列总预约时间最长举例1:预约序列为[1,2,3,1]有以下几种可能:
【魅力算法】“使用最小花费爬楼梯”-动态规划、双指针-滚动数组思想实现 |刷题打卡
题目描述解题思路动态规划:题目理解:你可以花费cost[i]的体力值,向上跳一个台阶或者两个台阶;你可以选择台阶起点为cost[o]或者cost[1]使用最少体力值,跳出数组边界即为成功;举例1:如果
【魅力算法】"1025. 除数博弈" 动态规划、位运算实现 |刷题打卡
1可整除任何数,Alice和Bob每局都可以拿1,改变结果。双方都是最佳状态