- 博客(4)
- 收藏
- 关注
原创 操作系统的多道编程笔记
通过一个多道编程的具体例子,来看看多道编程时计算机里面事件的发生顺序和多道编程环境下系统响应时间的提升。假定我们有4个程序,每个程序花费80%的时间进行I/O,20%的时间使用CPU,每个程序的启动时间和其需要使用CPU进行计算机的分钟数如表4-1所示。从0点0分开始到0点10分,系统里只有1个程序,因此属于单道编程状态。单道编程时CPU的利用率为20%,因此第1个程序在该10分钟里总
2010-10-21 11:15:00 1191 1
原创 二叉树遍历算法非递归
//中序遍历二叉树的非递归算法/*先遍历某结点的左子树 然后访问该结点 再遍历某结点的右子树 */void inordertraverse(BiTree T){ InitStack(S); while(T!=NULL || !StackEmpty(S)) {//栈不空 while(T!=NULL) { Push(S,T);//根结点进栈
2010-10-18 21:59:00 274
原创 堆排序算法
//堆排序是利用堆的特性进行排序的过程//堆是一个完全二叉树,树中每个结点对应于原始数据的一个记录,并且每个结点应满足以下条件:非叶结点的数据大于或等于其左、右孩子结点的数据,//当要按从小到大的顺序排序,则要求根结点为最大值。(记住)//在堆排序算法中,我们使用的是最大堆。最小堆通常在构造优先队列时使用,/*堆可以被看成是一棵树,结点在堆中的高度定义为从本结点到叶子的最长简单下降
2010-10-16 20:46:00 446
原创 快速排序法
//快速排序 分为两个步骤 首先是分解 然后是合并#includevoid quick_sort(int a[],int p,int r){ int q; if(p { q=partition(a,p,r); quick_sort(a,p,q-1);//将数组a分成两个数组 一个是小于等于a[q]的元素集合,一个是大于a[q]元素的集合 quick
2010-10-15 22:26:00 251 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人