前端开发:JS中使用到的贪心算法场景

前言

在前端开发过程中,除了一般的逻辑使用之外,也会涉及到算法相关的知识,比如冒泡排序、数组去重/合并、贪心算法、八皇后算法等等,这些都是比较常用的前端算法相关的知识点。关于前端实际开发中用到的算法,虽然没有后端要求的那么多,但是也有比较重要的算法知识,本篇博文就来分享一下关于贪心算法的相关知识点,记录一下,方便查阅使用。

贪心算法概念

贪心算法(又叫贪婪算法)是指在对问题求解时,总是做出在当前看来是最好的选择。也就是不从整体最优上加以考虑,算法得到的是在某种意义上的局部最优解。(注意: 贪心算法,算法结构犹如其名,以局部最优解,进行小范围的最优累加,但是贪心算法不是对所有问题都能得到整体最优解,关键是贪心策略的选择。)

  

贪心算法的构成

贪心算法的构成有:霍夫曼编码、prim和kruskal最小生成树算法、Dijkstra最短路径算法。

贪心算法的核心

        贪心算法的核心主要是要找出问题的贪心策略,贪心策略的主要逻辑就是每一次都选择当前的最优解,一直到得出全局的最优解。

贪心算法的缺点

虽然贪心算法每一次都选择当前的最优解,直到得出全局的最优解,但每一次的局部最优解不等于最终的全局最优解,不能从整体考虑所有的可能,每次都是采用局部的最优解、不回溯,所以有时候无法得出最优解,这就是贪心算法最大的缺点!

贪心算法的应用场景

  贪心算法的应用场景

你可能感兴趣的:(web前端知识汇总,贪心算法,javascript,算法)