堆排序模板 #include/*大根堆,即最大值在树的根节点,数组0下标不算*/void shift(int a[],int low,int high)//调整堆{ int i = low,j = 2*i; int tmp = a[i]; while(j<=high) { if (j<high && a[j]<a[j+1]) //如果左节点比右节点小,则指向右节点 j++; if
高次幂求模 /*高次幂求模,当p为奇数时分解为p/2和(p+1)/2,而下面的是直接分解为p/2,p/2, 少乘了一次,故需要补上*/int PowMod(int a,int p,int m){ int result = 1; while(p>0) { if (p%2) result = (result*a)%m; a = (a*a)%m; p>>=1; } return r
Linux下搭建OCI环境 系统环境以及相关软件:操作系统:Linux jabnih-VirtualBox 3.2.0-23-generic-pae #36-Ubuntu SMP Tue Apr 10 22:19:09 UTC 2012 i686 i686 i386 GNU/Linux编译器:gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3Automake :automak
Java Web——文件上传 给予Apache提供的两个Jar包 commons-fileupload-1.3.1.jar commons-io-2.4.jarpackage com.jabnih.Upload;import java.io.File;import java.io.IOException;import java.util.Iterator;import java.
JSP 小结 一.注释:在JSP文件中,有三种注释1.注释 --> : 这个注释在客户端浏览器中通过查看源码可以查看得到,Tomcat解析转换为.java文件时包含在 out.write(....) 中2. 在 中嵌入java注释 // 和 /* */ ,这种注释在tomcat解析jsp文件时被保留下来3.注释 --%> 此注释只在jsp文件中可以看到, Tomcat解析转换后得到的.
实现chrome扩展启动本地进程 - 补充 示例 主要包含如下部分com.google.chrome.demo-win.jsonnative_cmd.batmanifest.jsonpopup.htmlpopup.js功能简介: 实现一个扩展,用户点击一个按钮后会启动本地的notepad程序(也可以为自己写的程序,这里示例就启动notepad,类似迅雷扩展的功能)实现概述: 通过启动本地的
qt5 cannot find -lGL cent osQT5装上之后,发现开始缺少-lstdc++这是因为缺少g++安装上gcc-c++就可以了yum install gcc-c++后来又缺少-lGL两个命令yum install libGL 安装库yum install libGL-devel安装库的头文件
字节对齐 pragma pack http://hi.baidu.com/zhanghuikl/blog/item/124ea7998108a9006e068c19.html 强调一点:#pragma pack(4)typedef struct{ char buf[3]; word a;}kk;#pragma pack()对齐的原则是min(sizeof(word ),4
设计模式——工厂方法模式 工厂方法模式:核心工厂类不再负责所有产品的创建,而是将具体创建的工作交给子类去做,成为一个抽象工厂角色,仅负责给出具体工厂类必须实现的接口,而不接触哪一个产品类应当被实例化这种细节。
QT学习资料 经过我一翻整理,把一些我收集到的Qt学习资源分享给大家,主要适合新手,老鸟可以直接忽略我。要说明一下,很多资源都是在verycd下的,大家都知道verycd资源是很难下载的,尽管这样我还是很有耐心把它下载了,并把它们上传到网盘去,你们下载的时候就一定很快的。1.资源名称:《Qt教学视频22讲》 资源介绍: 由丁林松老师主讲,很适合初学者学的,因为讲得很基础。 下载地
C++ 重载运算符 #include #include #include #include using namespace std;class Date{private: int day; int month; int year; string DateString;public: Date(int year, int month, int day); Date & operato
C++ 中的赋值运算符重载和复制构造函数 /*** 在C++中,存在浅复制和深复制,浅复制仅仅将内部数据的值拷贝一份*/ #include #include #include using namespace std;class Demo{private: char *buffer;public: Demo(const char *str); Demo(const Demo & copy); ~Demo()
语言的歧义 语言的歧义赵锟zhaokun.km (at)gmail.com原文:http://cocre.com/?p=830 语言是人与人相互沟通的途径,而计算机语言则是人和计算机沟通的途径。就算是任何再完美的自然语言都会有歧义,但是又是什么让人和计算计算机间产生了歧义呢?下面这篇文章来自Gowri Kumar的Puzzle C一文。我做了一些整理,挑选了其中的一些
TQ2440 触摸屏校正 #ifndef TOUCH_H#define TOUCH_H#include "2440addr.h"#include "config.h"#define PRSCEN 1 //使能分频#define PRSCVL 49 //分频系数/* 设置为等待中断 */#define waitDownInit() do{ \ rADCTSC = 0xd3;\
TQ2440 IIC基础 #ifndef IIC_H#define IIC_H#include "2440addr.h"#include "config.h"void IIC_Init(void);void wr2402(unsigned char devAddr,unsigned char addr,unsigned char *data, int len);void rd2402(unsigned ch
TQ2440 触摸屏入门 四线式电阻触摸屏 四线触摸屏包含两个阻性层。其中一层在屏幕的左右边缘各有一条垂直总线,另一层在屏幕的底部和顶部各有一条水平总线,见图4。为了在X轴方向进行测量,将左侧总线偏置为0V,右侧总线偏置为VREF。将顶部或底部总线连接到ADC,当顶层和底层相接触时即可作一次测量。