
基础算法分析实现
文章平均质量分 77
运用最基础的数据结构知识,通过最本质朴实的分析过程,利用最基本的求解策略,实现经典算法。主要在于如何利用手头的知识嵌入分析,怎么样循序渐进抽象出最基础的代码来,重点在于思路的诞生过程
i_erlich
极客猿飞一枚 - iOS重度患者
展开
-
算法社区-从零开始构建(一)
好久没动笔了,一是要处理的东西很多,二则写出来未见得深刻,感觉沉淀得不够,太浅显的东西就没必要分享。正好最近在研究算法层面的东西,感觉挺受用的,就想着把这些东西整理出来,有点像社区的雏形,但一个人的力量毕竟有限,是否可以通过一个专项社区来讨论分享呢,抱着试一试的想法,就开始了…- 刚放出来,也不知道这种形式如何。原创 2024-06-24 23:02:19 · 782 阅读 · 0 评论 -
算法 - 最小生成树实现
最小生成树是什么 图的概念 最小生成树就是这个连通图子图并满足条件 n个顶点,只会有n-1条边 最小生成树中 所有边 权重之和是最小的 最小生成树能做什么 邻接矩阵 邻接表 克鲁斯卡尔Kruskal算法 普里姆Prim算法......原创 2022-08-16 05:25:13 · 1849 阅读 · 0 评论 -
栈 递归 算法应用实现
栈的顺序结构实现 栈的链式结构实现 进制转换问题-由于转换需要重复取模运算,而前面取模的结果往往在低位,后取模的结果在高位,输出按从左到右,由高位到低位,正好可以借助栈的后进先出来解决这个问题; 爬楼梯问题;爬楼梯算法实现; 每日气温问题 - 反向遍历方法实现 及 栈方式实现;去除重复字母,保持字典序最小;给定一个经过编码的字符串,返回它解码后的字符串 - 如何使用栈方式解决...原创 2022-08-10 19:22:41 · 1175 阅读 · 0 评论 -
从斐波那契 - 谈及动态规划 - 优化
通过最基础的斐波那契,我们可以先通过自己的理解,在自己能力范围内先实现算法在实现的基础上分析复杂度问题在自己实现的版本基础上发现可优化的点,比如常规的递归实现,包含了大量的重复执行,去掉不必要的执行,其实就是在优化算法了算法的复杂度优化是一步步循序渐进完善的,并非一蹴而就,也不是刷多少算法能解决的,其实是一种本质的思维方式没有什么高深的点,守得住耐心,总会找到完善的空间不抛弃底层的本质思维,不眼高手低,慢慢就会触及到一些思想的门槛,比如文章中的优化思路就摸到了 动态规划的思想。...原创 2022-08-10 19:18:16 · 229 阅读 · 0 评论 -
单链表有环问题 - 你emo了没
我们最直观的意识,可能就是用set遍历存储节点,由于set不能存储重复元素,所以只要在某个节点存储时,发现set中已经包含元素,则说明有环存在但是题目要求不能额外开辟空间剩下的条件很有限,像这样很明确的很简单的条件,往往我们考虑起来却花费很长时间,往往还想不明白,明明感觉很简单的几何定理也只是通过5条很简单的公理推导出来的有这种困惑,原因在于我们平时缺乏这方面的思维锻炼...原创 2022-08-10 19:17:14 · 994 阅读 · 0 评论 -
算法 - 数组循环左移m个元素
整数数组,n个元素数组循环左移m个元素[1,2,3,4,5,6,7,8,9] -> [4,5,6,7,8,9,1,2,3]数组整体逆转 [1,2,3,4,5,6,7,8,9] -> [9,8,7,6,5,4,3,2,1]如果循环移动元素个数为3,拆分两部分处理 [9,8,7,6,5,4] [3,2,1][9,8,7,6,5,4] 逆转 -> [4,5,6,7,8,9][3,2,1] 逆转 -> [1,2,3]得到 [4,5,6,7,8,9,1,2,3]......原创 2022-07-29 19:58:30 · 2151 阅读 · 0 评论 -
算法 - 数组主元素(出现次数超过一半的元素)
整数数组,包含n个元素 主元素 - 某个元素出现次数 > n/2,是否存在主元素?如果存在,找出主元素。如何采用巧妙的统计方式让主元素判定变得简单些原创 2022-07-29 19:17:42 · 2331 阅读 · 0 评论 -
大厂算法反复面试-最长递增子序列
有n个动物重量分别a1,a2,a3....an,这群动物一起玩叠罗汉游戏规定从左往右选择动物,每只动物左边动物的总重量不超过自己的重量返回最多能选多少个动物,求一个高效的算法比如有7个动物,从左往右重量依次为 1,3,5,7,9,11,21最多能选5个动物 1,3,5,9,21注意:- 实际给定的数组可能是无序的- 要求从左往右选动物,且不能打乱原始数组......原创 2022-07-19 03:33:18 · 2388 阅读 · 0 评论