首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
算法和数据结构
订阅
chinotan
更多收藏集
微信扫码分享
微信
新浪微博
QQ
12篇文章 · 0订阅
肝了好多天-动态规划十连-超细腻解析|刷题打卡
动态规划(Dynamic Programming,DP)是运筹学的一个分支,是求解决策过程最优化的过程。20世纪50年代初,美国数学家贝尔曼(R.Bellman)等人在研究多阶段决策过程的优化问题时,提出了著名的最优化原理,从而创立了动态规划。动态规划的应用极其广泛,包括工程技…
一题算法|求随机数索引
数组大小可能非常大。 使用太多额外空间的解决方案将不会通过测试。 这题目中有一个地方需要注意,每一个索引返回的概率都是相同的。比较笨的方法就是将与 target 相等的元素存放到一个中间集合中,最后从中间集合随机取一个。第二种办法就是利用蓄水池抽样法来解决这个问题。 我们先从头…
学会这几道链表算法题,面试再也不怕手写链表了
在面试的时候经常被问到让手写关于链表的代码,下面几个都是我在面试中被问到过的问题。当然我写的不一定是最优解,如果有更好的解决办法欢迎大家指出。 题目:给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点。 在链表的题目中,有时候一个指针解决不了的问题那么我们就再加一…
用动画解读十大排序算法
比较相邻的元素。如果第一个比第二个大,就交换他们两个。 对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。至此,最后的元素应该会是最大的数。 针对所有的元素重复以上的步骤,除了最后一个。 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。 比较和交…
最短路径问题——迪杰斯特拉算法(Dijkstra)
假期过长,导致停更了好长时间,复习一道算法题找找感觉。 前段时间看到一篇文章,里面提到了统治世界的十大算法,其中之一就是迪杰斯特拉算法(Dijkstra),该算法主要解决的”最短路径“这一类问题。说法虽然夸张了点,但它在实际生活中确实应用广泛,例如地图软件等,大部分游戏中自动寻…
一文带你AC四道题【位运算】
我这里总结了几道位运算的题目分享给大家,分别是 136和137, 260 和 645, 总共加起来四道题。 四道题全部都是位运算的套路,如果你想练习位运算的话,不要错过哦~~ 开始之前我们先了解下异或,后面会用到。 两个数字异或的结果a^b是将 a 和 b 的二进制每一位进行运…
算法之递归案例
递归:在一个方法内部对自身进行调用。利用递归可以用简单的程序来解决一些复杂的问题。比如:裴波那契数列的计算、汉诺塔、快排等问题。 1、定义递归头。解答:什么时候不调用自身方法。如果没有头,将陷入死循环,也就是递归的结束条件。 2、递归体。解答:什么时候需要调用自身方法。 递归需…
17张图带你解析红黑树的原理!保证你能看懂!
由于红黑树本质上就是一棵二叉查找树,所以在了解红黑树之前,咱们先来看下二叉查找树。 任意结点的左、右子树也分别为二叉查找树。 没有键值相等的结点(no duplicate nodes)。 因为,一棵由n个结点,随机构造的二叉查找树的高度为lgn,所以顺理成章,一般操作的执行时间…
常见算法总结 - 链表篇
本文总结了常见高频的关于链表的算法考察。1.如何找到链表的中间元素?2.检测链表是否有环。3.如何列表反转(递归)4.如何反转链表(非递归)5.删除经过排序的链表中重复的节点。6.如何计算两个链表的代
头条面试官问到的KMP算法
本文只是一个学习后的总结,可能会有错误,欢迎各位指出。 题目:给定一个字符串 str1 和一个字符串 str2,在字符串 str1 中找出字符串 str2 出现的第一个位置 (从0开始)。如果不存在,则返回 -1。 前段时间偶然接触到左神的算法讲解视频,大概三天的时间,反反复复…