摘要:
本博文介绍三中最基本的排序算法,冒泡,插入,归并。一,冒泡:最简单,也是最直接的排序算法,从前往后,每个元素都与其后满足条件的元素交换。时间复杂度O(N^2)。代码如下: #include<iostream>using namespace std;void sort(int*a,int n){ int temp; for(int i=0;i<n;++i) for(int j=i+1;j<n;++j) if(a[j]<a[i]) { temp=a[j]; a[j]=a[i]; a[i]=temp; }}int main(){ int a[5]={1,5,... 阅读全文
摘要:
什么是缓冲区缓冲区又称为缓存,它是内存空间的一部分。也就是说,在内存空间中预留了一定的存储空间,这些存储空间用来缓冲输入或输出的数据,这部分预留的空间就叫做缓冲区。缓冲区根据其对应的是输入设备还是输出设备,分为输入缓冲区和输出缓冲区。为什么要引入缓冲区我们为什么要引入缓冲区呢?比如我们从磁盘里取信息,我们先把读出的数据放在缓冲区,计算机再直接从缓冲区中取数据,等缓冲区的数据取完后再去磁盘中读取,这样就可以减少磁盘的读写次数,再加上计算机对缓冲区的操作大大快于对磁盘的操作,故应用缓冲区可大大提高计算机的运行速度。又比如,我们使用打印机打印文档,由于打印机的打印速度相对较慢,我们先把文档输出到打印 阅读全文
摘要:
首先,让我们看下虚拟内存:第一层理解1.每个进程都有自己独立的4G内存空间,各个进程的内存空间具有类似的结构2.一个新进程建立的时候,将会建立起自己的内存空间,此进程的数据,代码等从磁盘拷贝到自己的进程空间,哪些数据在哪里,都由进程控制表中的task_struct记录,task_struct中记录中一条链表,记录中内存空间的分配情况,哪些地址有数据,哪些地址无数据,哪些可读,哪些可写,都可以通过这个链表记录3.每个进程已经分配的内存空间,都与对应的磁盘空间映射问题:计算机明明没有那么多内存(n个进程的话就需要n*4G)内存建立一个进程,就要把磁盘上的程序文件拷贝到进程对应的内存中去,对于一个程 阅读全文
摘要:
话说懒惰是进步的动力源泉。 现在有这样一个需求:一个主表数据文件(MainData.xls), 内部有5个sheet(sheet1,sheet2,sheet3,sheet4,sheet5),另外有5个数据源文件(SrcData1.xls, SrcData2.xls, SrcData3.xls, SrcData4.xls, SrcData5.xls),以上5个Sheet和 5个数据源文件是一一对应的, 任务是把5个数据源文件的中的数据分别填充到5个sheet指定的单元格中(匹配信息吻合)。来看代码:Function FillDataAuto() Dim TotalRow As Integ... 阅读全文
摘要:
GridFS是MongoDB之上的分布式文件系统,其利用了MongoDB的分布式存储机制并通过MongoDB来存储文件数据和文件元数据,兼具文档型数据库和文件系统的优势。GridFS是当前大数据潮流和复杂数据分析需求的产物。简单来说,GridFS通过将文件数据和文件元数据保存在MongoDB里来实现文件系统,通过复制(Replication)来应对故障切换,数据集成,还可以用来做读扩展,热备份或者作为离线批处理的数据源,通过分片来实现自动切分数据,实现大数据存储和负载均衡,通过数据库对集合中文档的管理和查询(包括MapReduce)实现轻量级文件系统接口和搜索与分析。GridFS的一个基本思想 阅读全文
摘要:
策略模式,相信大家都不很陌生,但是对于初学者,可能不是很明白。现在由我给大家讲讲策略模式。根据我的理解,大家可以把策略模式的使用想象成一个人要写作业,写作业可以用不同的笔,这里不同的笔就是不同的策略了。 下面给出示例,逐一解释。Tools.java这个类就是抽象的策略角色,也就是笔这个抽象角色public interface Tools { public void write();} Pen.java这个是一个具体的策略,钢笔public class Pen implements Tools { @Override public void write() { System.out.print. 阅读全文
摘要:
一 什么是后台进程 Oracle后台进程包括数据写进程(DatabaseWriter,DBWR)、日志写进程(Log Writer,LGWR)、系统监控(System Monitor,SMON)、进程监控(Process Monitor,PMON)、检查点进程(Checkpoint Process,CKPT)、归档进程、服务进程、用户进程。数据写进程:负责将更改的数据从数据库缓冲区高速缓存写入数据文件日志写进程:将重做日志缓冲区中的更改写入在线重做日志文件系统监控:检查数据库的一致性如有必要还会在数据库打开时启动数据库的恢复进程监控:负责在一个Oracle 进程失败时清理资源检查点进程:负责在 阅读全文
摘要:
Android 中隐藏标题栏,有两个方法:一、在Activity里面加入以下代码this.requestWindowFeature(Window.FEATURE_NO_TITLE);该代码必须位于Activity的setContextView() 之前,否则不起作用,如果状态栏也要隐藏,则加入this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 但是我发现了一个问题,用这种方法启动Activity的时候,标题栏会出现.. 阅读全文
摘要:
今天第一次配 Oracle 11g R2 Active Data Guard,在用 RMAN 创建好 physical standby database 后, 尝试将 standby 以 read only 方式打开时遇如下错误: SQL> alter database open read only; alter database open read only * ERROR at line 1: ORA-10458: standby database requires recovery ORA-01152: file 1 was not restored from a sufficie 阅读全文
摘要:
FRG图像文件格式(四):编码技术作者: HouSisong@GMail.com 2013.06.12 FRG是一种优化从磁盘加载和解码到显示需要的时间的图像文件格式. (更多介绍:http://blog.csdn.net/housisong/article/details/9077059)这里介绍FRG涉及到的一些编码技术. Alpha通道的处理: Alpha通道独立压缩,现在的实现是无损压缩; 如果图像的alpha通道只有一个值(或没有alpha通道),则只需要储存一个alpha值就可以了; 如果不是单色alpha,数据压缩使用RLE行程压缩算法(格式简单,编解码快速), 由于... 阅读全文