### 前言 在**图论**中,在寻路最短路径中除了`Dijkstra`算法以外,还有`Floyd`算法也是非常经典,然而两种算法还是有区别的,`Floyd`主要**计算多源最短路径**。 **在单源正权值最短路径**,我们会用`Dijkstra`算法来求最短路径,并且算法的思想很简单—**贪心算法**:每次确定最短路径的一个点然后维护(更新)这个点周围点的距离加入预选队列,等待下一次的
>文章收录在公众号:**bigsai** 更多精彩干货敬请关注! ### 前言 说起八皇后问题,它是一道回溯算法类的经典问题,也**可能**是我们大部分人在上数据结构或者算法课上遇到过的最难的一道题…… ![在这里插入图片描述](https://img-blog.csdnimg.cn/20201014155713623.png?x-oss-process=image/watermark,typ
@[TOC](文章目录) ## 前言 >文章若有疏忽还请指正,更多精彩还请关注公众号:`bigsai` ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200215000450177.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ib
### 什么是ALV树 大家好,我是bigsai,好久不见,甚是想念。 对于树这种数据结构,想必大家也已经不再陌生,我们简单回顾一下。 在树的种类中,通常分成二叉树和多叉树,我们熟悉的二叉树种类有二叉搜索(排序、查找)树、二叉平衡树、伸展树、红黑树等等。而熟悉的多叉树像B树、字典树都是经典多叉树。 普通的二叉树,我们研究其遍历方式,因为其没啥规则约束查找和插入都很随意所以很少有研究价值。
## 前言 数据结构与算法是程序员内功体现的重要标准之一,且数据结构也应用在各个方面,业界更有**程序=数据结构+算法**这个等式存在。各个中间件开发者,架构师他们都在努力的优化中间件、项目结构以及算法提高运行效率和降低内存占用,在这里数据结构起到相当重要的作用。此外数据结构也蕴含一些面向对象的思想,故学好掌握数据结构对逻辑思维处理抽象能力有很大提升。 为什么学习数据结构与算法?如果你还是学
### 前言 大家好,我是bigsai,今天给大家讲讲Dijkstra算法。 对于Dijkstra算法,很多人可能感觉熟悉而又陌生,可能大部分人比较了解bfs和dfs,而对dijkstra和floyd算法可能知道大概是图论中的某个算法,但是可能不清楚其中的作用和原理,又或许,你曾经感觉它很难,那么,这个时候正适合你重新认识它。 **Dijkstra是啥?** 其实Dijkstra(迪
大家好,我是bigsai,今天给大家讲讲递归。 ### 什么是递归? 递归:就是函数自己调用自己。 子问题须与原始问题为同样的事,或者更为简单。 递归通常可以简单的处理子问题,但是不一定是最好的解决方式。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20190816205520468.gif) 对于递归要分清以下概念: - 递归是自己调用自己 - 递归通
### 前言 栈和队列是一对好兄弟,前面我们介绍过一篇栈的文章(栈,不就后进先出),栈的机制相对简单,后入先出,就像进入一个狭小的山洞,山洞只有一个出入口,只能**后进先出(在外面的先出去,堵在里面先进去的就有点倒霉)**。而队列就好比是一个隧道,后面的人跟着前面走,**前面人先出去(先入先出)**。日常的排队就是队列运转形式的一个描述! 栈是一种喜新厌旧的数据结构,来了新的就会处理新
### 前言 >前面介绍学习的大多是线性表相关的内容,把指针搞懂后其实也没有什么难度,规则相对是简单的,后面会讲解一些比较常见的数据结构,用多图的方式让大家更容易吸收。 在数据结构与算法中,树是一个比较大的家族,家族中有很多厉害的成员,这些成员有二叉树和多叉树(例如B+树等),而二叉树的大家族中,二叉搜索树(又称二叉排序树)是最最基础的,在这基础上才能继续拓展学习AVL(二叉平衡树)、红
### 前言 大家好,我是bigsai,在数据结构与算法中,二叉树无论是考研、笔试都是非常高频的考点内容,在二叉树中,二叉树的遍历又是非常重要的知识点,今天给大家讲讲二叉树的层序遍历。 这部分很多人可能会但是需要注重一下细节。 前面介绍了**二叉排序树的构造和基本方法**的实现,遍历也是比较重要的一环,并且二叉树的层序遍历也是bfs的最简单情况,这里我就将二叉树的层序遍历以及常考问
    Page 2 of 4