![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
排序算法
wjy802341
这个作者很懒,什么都没留下…
展开
-
二叉树遍历——先序遍历
二叉树遍历——先序遍历 遍历顺序如下图:依次遍历左孩子,到头了就转向右孩子 #include<iostream> #include<stack> using namespace std; //排序二叉树有如下性质 //若左子树不空,则左子树上所有结点的值均小于它的根结点的值; //若右子树不空,则右子树上所有结点的值均大于或等于它的根结点的值; //左、右子树也分别为二叉排序树 struct BT//定义一个BT结构的节点,每一个BT结构的节点都具有val值,和指向组偶有孩子的原创 2021-07-23 22:13:10 · 1280 阅读 · 0 评论 -
排序二叉树
排序二叉树有如下性质: 1、若左子树不空,则左子树上所有结点的值均小于它的根结点的值; 2、若右子树不空,则右子树上所有结点的值均大于或等于它的根结点的值; 3、左、右子树也分别为二叉排序树 struct BT//表示结点,定义一个结构名为BT,每个结点为BT类型,具有三个属性 { int val;//当前节点的值 BT* left;//定义一个名为left的指针,指向BT类型的结点 BT* right;//定义一个名为right的指针,指向BT类型的结点 }; struct Tree//定义一个原创 2021-07-22 20:45:04 · 79 阅读 · 0 评论 -
起泡排序算法详解
以下是起泡排序的三种实现形式,效率依次递增 #include<iostream> #include<vector> using namespace std; void swap(int *a, int*b) { int temp; temp = *a; *a = *b; *b = temp; } void bubble_1(vector<int>&vc, int n) { for (int i = n - 1; i > 0; i--) for原创 2021-06-29 10:24:23 · 931 阅读 · 0 评论 -
2021-06-28
归并排序详解 算法流程(以数组a[] = { 4, 2, 9,13}为例): 注意在合并排序过程中指针A不delete,所以在上一次合并中产生的A会被保留用于下一次的合并排序使用 附上代码 #include<iostream> using namespace std; void merge(int a[], int, int, int); void merge_sort(int a[], int, int); int main() { int a[] = { 4, 2, 9,13}; in原创 2021-06-28 09:28:12 · 67 阅读 · 0 评论