首页
学习
活动
专区
圈层
工具
发布

常用算法整理

由于无法发送超过5万字文章,内容见附件 leetcode算法笔记.pdf 目录: 概念和理论 主定理 基础数据结构 栈 例子:转逆波兰式 例子:132 Pattern 例子:# Lexicographical...Strings 欧拉回路 例子: Reconstruct Itinerary 例子: Cracking the Safe 强连通分支 最短路径问题 例子:Evaluate Division 例子:几种算法实现对比...shortest-palindrome 例子:# Repeated Substring Pattern 判断旋转词 贪心算法 Greedy Best Time to Buy and Sell Stock...:求最大长度回文字串的线性算法 Next Permutation 几何经典算法 找fence: Monotone_Chain_Convex_Hull 图着色问题 例子:Is Graph Bipartite...随机洗牌算法 例子: # Random Flip Matrix 三色旗问题 二分图匹配-匈牙利算法 Brain Storm 例子:Transform to Chessboard 例子:Orderly

1.3K161
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    基础算法| 常用排序算法小结

    日常吹水 说到这个算法, 可能瞬间大家就觉得那些灰机昏膏素什么的比这个生动活泼多了。 那么,正走在算法之路上的你, 是否还在苦苦寻求修仙之路? 是否被各种排序算法欺负得苦不堪言?...* 内容提要: *排序常用术语介绍 *冒泡排序 *选择排序 *插入排序 *希尔排序 *归并排序 *快速 排序 排序基础知识 ⚫排序的定义 将杂乱无章的数据元素,通过一定的方法按关键字顺序排列的过程叫做排序...⚫时间复杂度:一个算法执行完所消耗的时间。 ⚫空间复杂度:执行一个算法需要消耗的内存空间大小。 ⚫常见算法的复杂度及稳定性 ?...好了看完上面一堆头(dan)疼的术语介绍, 接下来将为大家介绍几种常用的内部排序算法, 开始我们的表演。 1 冒泡排序(Bubble Sort) ⚫常规冒泡排序 冒泡排序算是比较好理解的了。...快速排序是不稳定的排序算法。 OK自此,常用的排序算法已经介绍完毕,今天的表演到此结束,谢谢大家。

    75250

    常用排序算法

    冒泡排序(Bubble Sort) 冒泡排序是一种极其简单的排序算法,也是我所学的第一个排序算法。...这个算法的名字由来是因为越小(或越大)的元素会经由交换慢慢“浮”到数列的顶端。   冒泡排序算法的运作如下: 比较相邻的元素,如果前一个比后一个大,就把它们两个调换位置。...尽管冒泡排序是最容易了解和实现的排序算法之一,但它对于少数元素之外的数列排序是很没有效率的。 选择排序(Selection Sort)   选择排序也是一种简单直观的排序算法。...插入排序在实现上,通常采用in-place排序(即只需用到O(1)的额外空间的排序),因而在从后向前扫描过程中,需要反复把已排序元素逐步向后挪位,为最新元素提供插入空间。   ...插入排序在工业级库中也有着广泛的应用,在STL的sort算法和stdlib的qsort算法中,都将插入排序作为快速排序的补充,用于少量元素的排序(通常为8个或以下)。

    55020

    负载均衡常用算法

    负载均衡算法是服务器负载均衡功能的核心,它们决定了如何将业务流量或任务分配给不同的服务器。...以下是一些常见的负载均衡算法,这些算法可以根据服务器的实际负载情况动态地分配任务: 轮询(Round Robin)法: 轮询法将用户的请求按顺序轮流分配给服务器。...源IP hash算法: 源IP hash算法根据请求的源IP地址进行哈希计算,然后将请求分配给哈希结果对应的服务器。...这种算法可以确保来自同一IP地址的请求被分配到同一台服务器上,适用于需要保持会话一致性的场景。 加权源IP hash算法: 加权源IP hash算法是源IP hash算法的改进版。...以上算法各有优缺点,适用于不同的场景。在选择负载均衡算法时,需要根据实际的应用场景和需求来选择合适的算法。

    8300

    常用的淘汰算法

    总结:常用的淘汰算法有:FIFO、LRU、LFU FIFO 算法(Fist in first out:先进先出) FIFO 算法是一种比较容易实现的算法。...(2)缺点:这种算法有个很严重的缺点,就是会导致缺页率增加。缺页率指的是判断一个页面置换算法优劣的指标。...LRU算法(Least recently used:最近最少使用) LRU算法是一种常见的缓存算法,它的思想是:最近最少使用的会被优先淘汰。...在Redis 3.0以后增加了LRU淘汰池,进一步提高了与标准LRU算法效果的相似度。...LFU算法(Least frequently used:最不常使用) LFU算法的思想是:如果一个数据在最近一段时间很少被访问到,那么可以认为在将来它被访问的可能性也很小。

    1.1K20

    特征选择常用算法

    ( L < R )   算法评价:增L去R选择算法结合了序列前向选择与序列后向选择思想, L与R的选择是算法的关键。   ...(5) 序列浮动选择( Sequential Floating Selection )   算法描述:序列浮动选择由增L去R选择算法发展而来,该算法与增L去R选择算法的不同之处在于:序列浮动选择的L与R...(2) 模拟退火算法( SA, Simulated Annealing )     模拟退火算法可参考 大白话解析模拟退火算法 。     ...常用的距离度量(相似性度量)包括欧氏距离、标准化欧氏距离、马氏距离等。   (3) 信息增益( Information Gain )   假设存在离散变量Y,Y中的取值包括{y1,y2,.......筛选器由于与具体的分类算法无关,因此其在不同的分类算法之间的推广能力较强,而且计算量也较小。

    2.6K90

    常用聚类算法

    聚类或聚类分析是无监督学习问题, 常被用于数据分析,本文记录聚类问题定义,以及常用聚类算法和实现。 聚类 聚类分析,即聚类,是一项无监督的机器学习任务。它包括自动发现数据中的自然分组。...与监督学习(类似预测建模)不同,聚类算法只解释输入数据,并在特征空间中找到自然组或群集。 聚类技术适用于没有要预测的类,而是将实例划分为自然组的情况。...有许多类型的聚类算法。许多算法在特征空间中的示例之间使用相似度或距离度量,以发现密集的观测区域。因此,在使用聚类算法之前,扩展数据通常是良好的实践。...scikit-learn 库提供了一套不同的聚类算法供选择,我们就以 skikit-learn 库的算法为例列举常用聚类算法与相应实践。...: group.plot(ax=ax, kind='scatter', x='x', y='y', label=key, color=colors[key])pyplot.show() 聚类算法

    32220
    领券