- 博客(9)
- 收藏
- 关注
原创 两种堆排序的比较
堆排序是经典的排序问题中,非常重要的一种排序算法,实际上堆排序并没有特别之处,其主要的特点是将数组抽象成一个堆的结构。然后通过堆的二叉树性质进行排序。也正是由于利用了二叉树的性质,所以堆排序的时间复杂度能够达到O(nlogn)。 下面的总结和比较,主要针对两种堆排序实现进行一个比较。突出两种实现方式对堆排序算法的细微区别理解。
2013-07-28 23:11:43 461
原创 计算机硬件知识总结
CPU的“外频”与“倍频”外频:指的是CPU与外部组件进行数据传输/运算时的速度。倍频:指的是CPU内部用来加速加速工作性能的一个倍数,两者相乘才是CPU的频率。北桥:负责连接速度较快的CPU、内存、与显卡等组件。南桥:负责连接速度较慢的周边接口,包括硬盘、USB、网卡灯。北桥的总线成为系统总线,因为是内存传输的主要信道,所以速度较快。南桥就是所谓的输入输出(I/O)总线,
2013-07-09 23:10:57 557
原创 最长数字子串——学习总结
1.遍历字符串中的每一个字符时,判断当前字符的状态,并且根据前一个字符的值,进行判断。这是基本的架构和方法。2.特别需要注意的是最后一个字符的处理。应当将其单独列出来进行判断和比较。例如:求出字符创中的最长连续数字子串:1.首先判断当前字符是否为数字;如果是,判断前一个字符是否为数字,根据前一个字符是否是数字进行分别处理。在这里面需要特别注意到的是,如果遍历过程即将结束,最后一个字符是
2013-07-08 21:48:45 642
原创 CPU和内存之间——地址映射(知识总结)
CPU和内存之间有三根总线,地址,数据,和控制总线。这是在说地址之间的问题。CPU和内存之间用地址来查找数据,但是两者的地址并不总是一样的,CPU产生的是逻辑地址,而内存的就是物理地址。通常都是不一样的,所以需要地址映射。正好是从编程人员的角度看,(不考虑解释执行)程序总是经过源程序编译,连接,运行三个阶段。在这个过程中,指令和数据就要调到内存。地址捆绑的三种形式:编译时:编译时就
2013-07-08 21:45:31 1312
原创 经典算法——Huffuman树(Huffman编码)
#include#include#includeusing namespace std;//definition of the Huffuman tree node.struct TreeNode{ TreeNode *left; TreeNode *right; string operatorMark;
2013-07-07 22:27:13 719
原创 计算机网络协议模拟程序——滑动窗口协议
百度百科:滑动窗口协议,是TCP使用的一种流量控制方法。该协议允许发送方在停止并等待确认前可以连续发送多个分组。由于发送方不必每发一个分组就停下来等待确认,因此该协议可以加速数据的传输。#include#include#include#includeusing namespace std;class Protocol //定义一个协议类
2013-07-07 22:24:17 2662
原创 图的算法问题——输出图中的环
Using DFS to solvethe following problems: (1) given a graph G, test if G is connected. (2) given a graph G, test if G has a cycle,ifso,print a cycle#include #include #include #include
2013-07-07 22:21:00 904
原创 图的算法问题——判断图是否连接
Using DFS to solvethe following problems: (1) given a graph G, test if G is connected. (2) given a graph G, test if G has a cycle,ifso,print a cycle#include #include #include #includ
2013-07-07 22:19:06 479
原创 图的M着色问题
#include #include #include #include #include #define MAXSIZE 20#define Minimum 10using namespace std;int Map[MAXSIZE][MAXSIZE];int sum=0;int largest=0;int X[MAXSIZE];//Th
2013-07-07 22:16:11 701
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人