![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 85
思影影思
让积累在潜移默化中不断发生
展开
-
排序之冒泡排序
简介在计算机科学中,排序占据着十分重要的位置,排序算法属于基础科学。常用的排序算法中包括快速排序、冒泡排序、计数排序、堆排序。我们可以通过分类来记忆这些排序算法根据时间复杂度可以分为O(n2)冒泡排序选择排序插入排序希尔排序O(nlog)快速排序归并排序堆排序O(n)计数排序桶排序基数排序冒泡排序的核心就是相邻元素的比较,通过n-1轮比较达到排序的结果。冒泡算法(bubble sort),它是一种基础的交换排序。冒泡排序之所以叫做冒泡排序,是因原创 2021-02-07 18:06:21 · 397 阅读 · 0 评论 -
二叉树层序遍历
二叉树的层序遍历简介在数据结构的学习过程中,最为重要的便是遍历了,在之前的文章中,已经阐述过了一些内容,主要是如下所示:原创 数据结构-树与深度优先遍历原创 二叉树之使用栈实现深度优先遍历除了深度优先遍历之外,对于树结构还有一种层序遍历的方式是需要掌握的。深度优先遍历是在一个方向上一头扎到底,而广度优先遍历则是在各个方向上各自走出一步。这样的需求应该怎么实现,借助什么样的数据结构?我们都知道要使用队列,为什么栈不行呢?这些问题只有仔细思考才可以。我们知道,要实现按层次遍历一棵二叉树,原创 2021-02-07 15:06:16 · 409 阅读 · 0 评论 -
数据结构-树与深度优先遍历
笔者在读书时,选择的专业是计算机科学,但和大家一样,在处理线性的问题时较为熟悉,但当自己在尝试理解树和图这种非线性结构时,就总无法深刻准确的理解,为此,也很苦恼很无奈,但也没有什么好的办法。这次趁着完成了《漫画算法》的阅读,再次总结一下关于书中树的内容,也许是几年的工作经历吧,让自己对于代码的编写和理解有了更多的体会,也了解到这种非线性结构的重要性。漫画算法这本书确实生动简洁,理解起来方便,大家对于数据结构感兴趣的,可以也买这本书读读,挺有意思的。图画的形式确实能增强理解性。概念理解树这种结构与链表不原创 2020-12-27 11:52:47 · 2850 阅读 · 4 评论 -
漫画算法之基础数据结构
最近状态 现在的我正在听段奥娟的《陪我长大》,挺温暖的歌。今天虽然是周末,但自己因为工作的原因,还是在单位呆了一天。虽然加班,但心情并不沮丧,中午还和于张徐去吃了赛银的老面馆,味道很好,而且自己还用了在支付宝上抢到的券。开心。老徐的效率很高,最近跟着老徐也学到了很多的技巧,等有时间总结成博客,整理出来,分享一下。最近也和唐在健身,每天跑步机上跑啊跑,虽然腰背仍然很不舒服,贴了膏药也没有什么改善,倒也不是很担心,只要这个冬天能改善自己的生活习惯,做好养生啊,锻炼,熬粥之类的,等来年春天,或许还不错。期待一下原创 2020-12-13 23:56:45 · 474 阅读 · 2 评论 -
克鲁斯卡尔算法
克鲁斯卡尔算法问题引入可以看出,普利姆算法和克鲁斯卡尔算法要解决的问题是同一类的的问题。有几个顶点。顶点之间通过有向边或者无向边连接顶点之间的权重不同。求,如何修路保证各个村庄都能连通,并且总的修建公路里程最短。核心的想法,就是尽可能选择少的路线,并且每条路线最小,保证总里程数最少。简介 克鲁斯卡尔Kruskal算法是求最小支撑树问题的另外一种常用算法。在实践过程中,普利姆算法适用于求稀疏网络的最小支撑树。算法思想如下:设连通图为N=(V,E C), T为N的最小支撑树,。初始时,原创 2020-07-04 21:46:20 · 1961 阅读 · 0 评论 -
普利姆算法
简介上述问题就是最小支撑树的应用。我们可以把七个村庄抽象成图像中的7个顶点,图像之间用边来表示,村庄之间的距离通过权重进行表示。那么应该如何求出把七个村庄连接起来的最小边集合呢?普利姆算法的思想若要在n个顶点之间建立连通图,则至少要n-1个顶点。将这n-1条边上的权重之和定义为连通图的代价。对于一个无向网络----无向加权连通图N=(V, E, C),其顶点个数|V|=n,图中边的个数为|E|,可以从它的|E|条边中选出n-1条边,使之满足:这n-1条边和图的n个顶点构成一个连通图(1)该原创 2020-06-26 12:50:45 · 1787 阅读 · 1 评论 -
数据结构之图:邻接矩阵和邻接表、深度优先遍历和广度优先遍历
简介线性表是一种线性结构,除了头结点和尾节点,线性表的每个元素都只有一个前取节点和一个后继节点。而树结构则相较于线性表更加复杂,它描述的关系为数据元素之间的父子关系,也是现实世界父子关系的缩影,一个父亲节点可以有零个或者多个子节点而每个子节点有且只有一个父节点但是在图是比树更加复杂的数据结构,图的基本特征是,在图中,数据元素(顶点)之间的关系使任意的,每个顶点都可以和其他任何顶点相关。上图中就存在两个图,其中右边的图更加复杂,是现实世界中的交通路线图。左图是抽象图,可以看到在左图是一个无向图原创 2020-06-21 22:20:49 · 33773 阅读 · 4 评论