算法
进击的Pikachu
这个作者很懒,什么都没留下…
展开
-
快速排序Java实现(手动模拟)
基本思想: 将待排记录分割成独立的两部分,其中第一部分记录的关键字总比第二部分记录的关键字小,再缩小范围对每一部分进行快排,直到原记录为有序序列 实例过程演示:temp=a[low]=17 17 23 16 3 25 12 40 34 28 9 54 45 ...原创 2019-08-23 16:29:00 · 277 阅读 · 0 评论 -
排序算法大集合---(冒泡,选择,插入,快速,归并,堆排序)
冒泡排序 基本思想: 通过比较相邻两个元素的大小进行互换排序 每趟排序至少有一个元素处在正确的位置上 平均时间复杂度O(n^20),空间复杂度O(1),稳定 代码实现: #include<iostream> #include<cstdio> #include<algorithm> using namespace std; const in...原创 2019-08-23 11:50:10 · 154 阅读 · 0 评论 -
二叉树的前序,中序,后序,层序遍历(递归,非递归双版本)
二叉树结点的表示: 采用链表的存储方式,设有数据域和左右孩子指针 代码实现: typedef struct BiNode{ ElemType data; struct BiNode *lchild,*rchild; //左孩子,右孩子 }BiNode,*BiTree; 二叉树的建立: 前序遍历输入结点 代码实现: //建立二叉树 void CreateTr...原创 2019-08-26 13:08:07 · 209 阅读 · 0 评论