数据结构与算法
文章平均质量分 73
个人学习笔记,交流分享。
千山CS
学生
展开
-
树——二叉树的遍历
二叉树的遍历使用了递归的思想,根据查看元素的顺序不同,分为前中后序以及层序遍历。其中前中后序遍历又可以通过显示调用栈的方法减少调用帧的使用。层序遍历即将前中后序遍历中的调用栈换成队列。:(1)访问根。(2)递归地前序遍历左子树。(3)递归地前序遍历右子树。:(1)递归地中序遍历左子树。(2)访问根。(3)递归地中序遍历右子树。:(1)递归地后序遍历左子树。(2)递归地后序遍历右子树。(3)访问根。二叉树的实现三、样例图示对于图中二叉树,不同遍历次序下访问节点的次序如下表所示。...原创 2022-06-09 09:34:53 · 111 阅读 · 0 评论 -
排序——快速排序
下面是快速排序的思路:(1)如果有一个或者更少的数字需要排序,则不做任何事情。(2)否则,把区域分成“较小”数字和“较大”数字两部分,把较小的数字移到左边,把较大的数字移到右边。递归地对每个区域进行排序。整个数组现在是有序的。......原创 2022-06-07 14:52:01 · 191 阅读 · 0 评论 -
排序——归并排序
归并排序使用递归来设计,背后的递归思想是:(1)如果只有一个数字要排序,则不做任何事情;(2)否则,将数字分成两组,递归排序每个组,然后将两个有序组归并到一个有序数组中。原创 2022-06-06 15:15:11 · 147 阅读 · 0 评论 -
排序——插入排序
这篇文章将介绍一种最简单的排序方法——插入排序。下面通过一个示例来理解算法的思路。生活中我们怎么对纸牌进行排序呢。我们先将所有纸牌放到桌面上,从中选出一张,把它放在左边。再选出一张,把它放在刚才选出这张的左边或者右边。那么是左边还是右边呢,要根据大小来确定。后面依次插入第三张、第四张,把他们插入到正确的位置,直到所有的纸牌都被插入。...原创 2022-06-05 20:25:41 · 163 阅读 · 0 评论 -
查找——折半查找
折半查找是一种基础的查找算法,本文主要介绍了折半查找算法的思路、算法实现,并辅以图示,希望读者可以清晰的理解算法步骤。算法能够实现查找是基于数组有序这一前提的,对于无序的数组,折半查找并不能起到作用。在有序数组中,通过不断寻找中点元素并与目标元素对比一步步缩小查找区间,最终确定目标元素是否存在于数组之中。.........原创 2022-06-04 17:38:36 · 1281 阅读 · 0 评论