数据结构与算法
文章平均质量分 96
数据结构与算法
Dream_sky分享
java系列技术文章总结分享(持续更新中…)
展开
-
堆排序(堆的构造及代码实现)
堆通常可以被看做是一棵完全二叉树的数组对象。它是完全二叉树,除了树的最后一层结点不需要是满的,其它的每一层从左到右都是满的,如果最后一层结点不是满的,那么要求左满右不满。它通常用数组来实现。具体方法就是将二叉树的结点按照层级顺序放入数组中,根结点在位置1,它的子结点在位置2和3,而子结点的子结点则分别在位置4,5,6和7,以此类推。如果一个结点的位置为k,则它的 父结点的位置为[k/2],而它的 两个子结点的位置则分别为2k和2k+1。原创 2023-09-20 11:49:52 · 533 阅读 · 0 评论 -
二叉树(相关术语、创建、遍历、最大深度问题)梳理总结
树是由n(n>=1)个有限结点组成一个具有层次关系的集合。把它叫做“树”是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。原创 2023-09-18 17:30:26 · 555 阅读 · 0 评论 -
线性表(顺序表、链表、栈、队列)总结梳理
线性表是最基本、也是最常用的一种数据结构。一个线性表是n个具有相同特性的数据元素的有限序列。原创 2023-09-14 17:04:13 · 151 阅读 · 0 评论 -
经典排序算法总结
排序算法是一种用于将一组数据按照一定顺序排列的算法。常见的排序算法有冒泡排序、插入排序、选择排序、快速排序、归并排序、希尔排序等。原创 2023-09-12 16:52:03 · 493 阅读 · 1 评论 -
算法的时间及空间复杂度
能够对一定规范的输入,在有限时间内获得所要求的输出不同的算法可能用不同的时间、空间或效率来完成同样的任务。一个算法的优劣可以用空间复杂度与时间复杂度来衡量。原创 2023-09-08 16:26:35 · 274 阅读 · 0 评论