
数据结构与算法
记录夯实数据结构和算法的点点滴滴
allanGold
这个作者很懒,什么都没留下…
展开
-
【最短路径算法】单源 Dijkstra算法
目前我找到的解释比较清楚的博客。原创 2024-04-24 18:13:32 · 226 阅读 · 0 评论 -
单链表翻转算法简单理解(也见单链表反转)
单链表翻转原创 2023-02-09 15:01:01 · 173 阅读 · 0 评论 -
求两个数的最大公约数(互质算法)
求最大公约数原创 2022-12-29 15:48:12 · 630 阅读 · 0 评论 -
【环形链表】环形链表一之判断有环\环形链表二之找出开始入环的第一个节点
这里写自定义目录标题环形链表两题环形链表一之判断有环题目描述:解题思路:细节代码:推导:环形链表二之找出开始入环的第一个节点题目描述:解题思路:代码:推导:环形链表两题环形链表一之判断有环题目描述:给你一个链表的头节点 head ,判断链表中是否有环。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。注意:pos 不作为参数进行传递 。仅仅是为了标识链表的实际情原创 2022-03-05 14:23:57 · 244 阅读 · 0 评论 -
约瑟夫环(递归实现)理解过程
推理过程这里假设我们希望永远都是0位置先报数,这个假定逻辑很重要。按照这个假定逻辑,我们会对整个环形链表逆时针旋转m个位置,也就是3个单位,位置3移动到了0位置。这样就把10人游戏的第二轮,转换成了9人游戏的第一轮。推理:假如知道了9人游戏中谁会留在最后,是不是就可以推导出10人游戏谁可以留到最后这时会有一个想法:旧位置3 是否是 新位置0 加3 得到的?但是,因为是环状结构,旧位置 的1 通过新位置8 加3 的方式是不能直接得出来的观察一下加3的处理结果:新位置8.原创 2021-08-29 16:57:23 · 491 阅读 · 0 评论 -
开源算法cookbook
https://books.halfrost.com/leetcode/原创 2021-06-15 14:27:24 · 196 阅读 · 0 评论 -
iOS LRU学习参考
1.简介LRU (英文:Least Recently Used), 意为最近最少使用,这个算法的精髓在于如果一块数据最近被访问,那么它将来被访问的几率也很高,根据数据的历史访问来淘汰长时间未使用的数据。这篇文章主要分享一下关于内存缓存在iOS 中运用,主要分析一下第三方框架中LRU的运用,包括 Lottie 和 YYCache.2.算法实现缓存淘汰算法1.新添加的数据放在头部2.被访问到的数据放在头部3.超过最大缓存量的数据将被移除。3.运用1.LottieLottieLO原创 2020-08-03 11:14:29 · 921 阅读 · 0 评论 -
算法书籍、视频
视频算法导论链接: https://pan.baidu.com/s/1831-_qIPp07V6PH33HE3cQ 提取码: 3dfv转载 2019-06-15 14:07:39 · 435 阅读 · 0 评论 -
爬虫--代理服务器ip
https://www.xicidaili.comhttp://yum.iqianyue.com/proxy转载 2019-03-27 11:34:15 · 663 阅读 · 0 评论 -
高阶Java开发必备:分布式系统的唯一id生成算法你了解吗?
https://juejin.im/post/5c6be4086fb9a04a060570df转载 2019-02-20 11:26:49 · 222 阅读 · 0 评论 -
【面试现场】如何在10亿数中找出前1000大的数
https://mp.weixin.qq.com/s/V-VhsE-5aYU3v8RA8mCgaQ转载 2018-10-20 17:00:43 · 958 阅读 · 0 评论 -
计算行数 计算frame的x、y
如果每行显示4个按钮count是数据总数行数计算为:btnRowCount = (count - 1) / 4 + 1;行间隔数:btnRowCount - 1 子视图frame计算时x : (i % 4) * (子视图宽度 + 列间隔)y :(i / 4) * (子视图高度+ 行间隔)...原创 2018-08-22 20:50:36 · 352 阅读 · 0 评论 -
字符串翻转 要求空间复杂度为O(1)
1.特例:全部翻转比如:goodboy 翻转以后为:yobdoog思路:就是取得字符串的长度length,然后用一个临时变量做中转两两交换,就是0和最后一个交换,1和倒数第二个交换,依次类推2.通例:把尾部的n个字符移到字符串的头部思路:也是用到了两两交换的方法比如说:要把尾部的3个字符移到头部,先把length-3-1=3,就是索引从0到3的子字符串翻转;然后再把索引是3+1转载 2017-02-24 10:19:02 · 7293 阅读 · 0 评论 -
排序算法
http://www.cnblogs.com/eniac12/p/5329396.html转载 2017-02-07 10:20:30 · 258 阅读 · 0 评论