![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 79
Meiko丶
这个作者很懒,什么都没留下…
展开
-
有向图,两点可达判断
有向图与无向图相对,边是有方向的,每条边所连接的两个顶点都是一个有序对,它们的邻接性都是单向的。一幅有方向的图(或有向图)是由一组顶点和一组有方向的边组成的,每条有方向的边都连接着一对有序的顶点。其实在有向图的定义这里,我们没有很多要说明的,因为大家会觉得这种定义都是很自然的,但是我们要始终记得有方向这件事!数据表示我们依然使用邻接表存储有向图,其中v-->w表示为顶点v的邻接链表中包含一个顶点w。注意因为方向性,这里每条边只出现一次!我们来看一下有向图的...原创 2020-10-29 19:40:38 · 4246 阅读 · 0 评论 -
hash解决冲突
开放地址法:1.线性探测法:ThreadLocalMap 线性再散列法是形式最简单的处理冲突的方法。插入元素时,如果发生冲突,算法会简单的从该槽位置向后循环遍历hash表,直到找到表中的下一个空槽,并将该元素放入该槽中(会导致相同hash值的元素挨在一起和其他hash值对应的槽被占用)。查找元素时,首先散列值所指向的槽,如果没有找到匹配,则继续从该槽遍历hash表,直到:(1)找到相应...原创 2018-05-13 12:51:20 · 239 阅读 · 0 评论 -
关于算法的时间复杂度
1.算法的效率虽然计算机能快速的完成运算处理,但实际上,它也需要根据输入数据的大小和算法效率来消耗一定的处理器资源。要想编写出能高效运行的程序,我们就需要考虑到算法的效率。 算法的效率主要由以下两个复杂度来评估: 时间复杂度:评估执行程序所需的时间。可以估算出程序对处理器的使用程度。 空间复杂度:评估执行程序所需的存储空间。可以估算出程序对计算机内存的使用程度。设计算法时,一般是要先考虑系统环境,...转载 2018-05-13 13:55:05 · 450 阅读 · 0 评论 -
对数据结构中树的简单总结
二叉查找树简介二叉查找树也称为有序二叉查找树,满足二叉查找树的一般性质,是指一棵空树具有如下性质:任意节点左子树不为空,则左子树的值均小于根节点的值.任意节点右子树不为空,则右子树的值均大于于根节点的值.任意节点的左右子树也分别是二叉查找树.没有键值相等的节点.局限性及应用一个二叉查找树是由n个节点随机构成,所以,对于某些情况,二叉查找树会退化成一个有n个节点的线性链.如下图: b图为一个普通的二...原创 2018-05-13 14:49:36 · 948 阅读 · 0 评论 -
几种排序算法
冒泡排序 时间复杂度o(n^2)定义对数组的一趟排序为,顺序遍历数组,如果数组中a[i]>a[i+1],那么就交换两个数的位置(前提这是升序排序),那么一趟排序就会找到一个最大值,并且将最大值放在数组的最后。通过对数组的一趟排序,找出一个最大的值,放在数据最后的位置,通过对数组的下一趟排序,找出数组的第二大的数字放在倒数第二个位置,那么对数组进行多趟这样的排序,就能让整个数组编程有序的。如...原创 2018-05-13 16:40:06 · 255 阅读 · 0 评论