文章 2022-11-24 来自:开发者社区

【数据结构与算法】之十大经典排序算法(上)

排序算法说明1️⃣常见术语稳定: 如果a原本在b前面,而a=b,排序之后a仍然在b的前面;不稳定: 如果a原本在b的前面,而a=b,排序之后a可能会出现在b的后面;内排序: 所有排序操作都在内存中完成;外排序: 由于数据太大,因此把数据放在磁盘中,而排序通过磁盘和内存的数据传输才能进行;时间复杂度: 一个算法执行所耗费的时间;空间复杂度: 运行完一个程序所需内存的大小。2️⃣算法总结十大经典算法....

【数据结构与算法】之十大经典排序算法(上)
文章 2022-11-24 来自:开发者社区

【数据结构与算法】之回溯、滑动窗口、分治算法经典问题

一、回溯算法回溯算法要做的事情很基础,就是穷举,可以说就是暴力穷举。解决回溯问题,实际上就是对一个决策树的遍历过程。回溯,我们可以这么理解,比如我们走迷宫,沿着一条路,走到底发现是思路,就要回到原来的出发点,再次选择一条新的路劲,其实这就是回溯。在回溯的过程中,需要注意以下几点:(1)路径(2)选择的列表(3)结束条件1️⃣全排列问题给定一个不含重复数字的数组 nums,返回其所有可能的全排列。....

【数据结构与算法】之回溯、滑动窗口、分治算法经典问题
文章 2022-11-24 来自:开发者社区

【数据结构与算法】之多指针算法经典问题

一、链表反转链表反转公用代码:public class ReverseLink { public static void main(String[] args) { } // 遍历的方法 public static void print(Node<Integer> head) { Node<Integer> current ...

【数据结构与算法】之多指针算法经典问题
文章 2022-11-24 来自:开发者社区

【数据结构与算法】之递归算法(下)

四、汉诺塔问题传说越南河内有一个寺庙,寺庙里有三根柱子,憎侣之间传言如果按照某个规定将64个盘子全部移动另外的柱子上,世界末日也就到了。事实证明,如果僧侣每一秒移动一个,大概需要5800亿年,当然这只是一个传说,这也是汉诺塔(Hanoi就是河内的意思)。汉诺塔问题的描述:有三个柱子A、B、C,现在有n个盘子,需要从A柱转移到C柱,需要满足一下条件:(1)每次只能移动一个盘子(2)任何时候小盘子不....

【数据结构与算法】之递归算法(下)
文章 2022-11-24 来自:开发者社区

【数据结构与算法】之递归算法(上)

学习递归之前,我们可以首先思考一下“递推”这个概念?因为,人的思想是更适合 【递推】 而不是 【递归】。一、斐波那契数列1️⃣递推我们举一个小例子,给出下列的一组数据,那么第10个数字是多少?1,1,2,3,5,8....正常人的思维肯定是,从前边的数据总结规律,然后从前向后,也就是“自低向上”寻求解决问题的思路,这个过程就是 【递推】 的过程,代码如下:// 我们传入的n是从1开始计算的,第五....

【数据结构与算法】之递归算法(上)
文章 2022-10-22 来自:开发者社区

数据结构与算法—最小生成树(Prim算法和Kruskal算法算法详解)

前言在数据结构与算法的图论中,(生成)最小生成树算法是一种常用并且和生活贴切比较近的一种算法。但是可能很多人对概念不是很清楚。我们看下百度百科对于最小生成树定义:一个有 n 个结点的连通图的生成树是原图的极小连通子图,且包含原图中的所有 n 个结点,并且有保持图连通的最少的边。 最小生成树可以用kruskal(克鲁斯卡尔)算法或prim(普里姆)算法求出。通俗易懂的讲就是最小生成树包含原图的所有....

数据结构与算法—最小生成树(Prim算法和Kruskal算法算法详解)
文章 2022-10-20 来自:开发者社区

10数据结构与算法刷题之【排序算法】篇

牛客网寻找第K大【中等】题目链接:寻找第K大题目内容:有一个整数数组,请你根据快速排序的思路,找出数组中第 k 大的数。给定一个整数数组 a ,同时给定它的大小n和要找的 k ,请返回第 k 大的数(包括重复的元素,不用去重),保证答案存在。最佳思路:快排+二分+随机基准点。在快排的过程中不断的找到对应的基准点,然后以这个基准点比较k(基准点的左边是>该基准点的,这样我们才能将基准点的索引....

文章 2022-10-20 来自:开发者社区

数据结构与算法—单源最短路径dijkstra算法

介绍对于dijkstra算法,很多人可能感觉熟悉而又陌生,可能大部分人比较了解bfs和dfs,而对dijkstra和floyd算法可能知道大概是图论中的某个算法,但是可能不清楚其中的作用和原理,又或许,你曾经感觉它很难,那么,这个时候正适合你重新认识它。Dijkstra能是干啥的?Dijkstra是用来求单源最短路径的就拿上图来说,假如直到的路径和长度已知,那么可以使用dijkstra算法计算南....

数据结构与算法—单源最短路径dijkstra算法
文章 2022-10-20 来自:开发者社区

数据结构与算法—递归算法(从阶乘、斐波那契到汉诺塔的递归图解)

递归介绍递归:就是函数自己调用自己。 子问题须与原始问题为同样的事,或者更为简单;递归通常可以简单的处理子问题,但是不一定是最好的。对于递归要分清以下概念:自己调用自己递归通常不在意具体操作,只关心初始条件和上下层的变化关系。递归函数需要有临界停止点,即递归不能无限制的执行下去。通常这个点为必须经过的一个数。递归通常能被其他方案替代(栈、数组正向求)。认识递归,递归函数通常简易但是对于初学者可能....

数据结构与算法—递归算法(从阶乘、斐波那契到汉诺塔的递归图解)
文章 2022-10-12 来自:开发者社区

数据结构与算法——算法和算法分析

1.算法分析概述        算法分析就是分析算法占用计算机资源的多少。计算机资源主要是cpu时间和内存空间,分析算法占用cpu时间的多少称为时间性能分析,分析算法占用内存空间的多少称为空间性能分析。        算法分析的目的是分析算法的时间空间性能以便改进算法2.计算算法时间复杂度的基本方法   &a...

数据结构与算法——算法和算法分析

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

友盟+

友盟+,国内领先的第三方全域数据智能服务商。以“数据智能,驱动业务增长”为使命,基于卓越的技术与算法能力,结合实时更新的全域数据资源,覆盖191个行业分类、输出300+应用或行业的分析指标,通过AI赋能的一站式互联网数据产品与服务体系,帮助企业实现深度用户洞察、实时业务决策和持续业务增长。 截至2019年6月已累计为180万移动应用和815万家网站提供近九年的专业数据服务典型客户包括:中国移动、CCTV、人民日报客户端、今日头条、飞常准、喜马拉雅、唱吧、美拍、斗鱼、智慧树等。

+关注