自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 union用来节省空间,有些数据项不会同时出现

2011-10-26 15:41:30 451

原创 背包问题

0-1背包:有N件物品和一个容量为V的背包。第i件物品的重量是c[i],价值是w[i]。求解将哪些物品装入背包可使这些物品的重量总和不超过背包容量,且价值总和最大。f[i][v]表示前i件物品恰放入一个容量为v的背包可以获得的最大价值。则其状态转移方程便是:f[i][v]=max{f[i-1][v],f[i-1][v-c[i]]+w[i]} 。 可以压缩空间,f[v]=max{f[v],f[v

2011-10-24 10:00:10 620 1

原创 最长公共子序列

动态规划的一个计算最长公共子序列的方法如下:以两个序列 X、Y 为例子:设有二维数组 f[i][j] 表示 X 的 i 位和 Y 的 j 位之前的最长公共子序列的长度,则有:       f[1][1] = same(1,1)      f[i][j] = max{f[i-1][j-1]+same(i,j),f[i-1][j],f[i][j-1]}     其中,sam

2011-10-24 09:41:33 527

原创 路由算法

RIP(距离向量算法):定期交换路由表收到相邻(路由器X的RIP报文)路由表1.修改所有项下一跳改为X, 距离加12.更新本路由表(1)空目的网络:原路由表无目的网络,直接添加(2)同目的网络:      下一跳是X, 替换      下一跳不是X,

2011-10-14 10:41:10 911

原创 页面替换算法

(1)先入先出(FIFO)(2)最近最少使用(LRU)(3)最优(OPT):换最晚用到的(4)二次机会(SCR):标记(0/1),环形队列(0:直接换,1:清0下一个)

2011-10-12 15:38:59 620

原创 指令周期

取指令(FI)->译码指令(DI)->计算操作数(CO)->取操作数(FO)->执行指令(EI)->写操作数(WO)

2011-10-12 15:26:42 696

原创 TLB和cache

虚拟地址(叶号+偏移)-->TLB/页表-->物理地址(帧号+偏移)-->cache(标记+数据)/内存-->值TLB是一种cache进程(虚拟地址空间)分页,内存分帧

2011-10-12 14:25:17 718

原创 全排列算法

void perm(int list[], int k, int m) {         int i;         if(k == m)         {                  for(i = 0; i  m; i++)

2011-10-11 10:16:00 446

原创 操作系统的理解

只要具备  CPU+内存+时钟(RTC+Clock) 的能力就可以是一个计算设备而计算设备要有锁(Lock)的能力需要CPU和内存分别提供(比较内存+一次取固定位数内存值)原子操作OS对上提供编程框架,对下提供硬件(虚拟硬件)管理内核线程只在在内核空间运行,不同内核线程同一地址空间,可相互访问用户线程只在在用户空间运行,同一用户进程的不同线程同一地址空间,可相互访问,不同进

2011-10-09 18:02:23 555

原创 快速排序

【1】单向扫描PARTITION(A, p, r)    x ← A[r]         //以最后一个元素,A[r]为主元    i ← p - 1    for j ← p to r - 1    //注,j从p指向的是r-1,不是r。

2011-10-09 14:33:31 395

原创 类的继承方式

公有继承:"是一个"私有继承:"用...来实现",编译器不会将子类对象转化成父类对象

2011-10-09 10:17:06 496

原创 重载和覆盖

重载:(1)相同的范围/在同一个类中(2)函数名字相同(3)参数不同(4)virtual 关键字可有可无。覆盖(1)不同的范围(分别位于派生类与基类);(2)函数名字相同(3)参数相同(4)基类函数必须有virtual 关键字

2011-10-09 09:33:07 372

原创 纯虚函数竟然可以有实现体(但无任何实用价值,声明成普通虚函数就可以了)

class A {virtual void foo()=0;}void A::foo(){}

2011-10-08 16:53:44 913

原创 公有继承意味着 "是一个",私有继承意味着"用...来实现(避免切片)"

用父类来实现

2011-10-08 15:49:06 555

原创 纯虚函数(继承接口),虚函数(继承接口和默认实现),非虚函数(继承接口和强制实现)

2011-10-08 15:47:11 539

原创 【virtual】"等到运行时再决定调用哪个函数";【inline】"在编译期间将调用之处用被调函数来代替"

2011-10-08 14:57:48 496

原创 const由编译器来实现

2011-10-08 09:21:54 452

原创 重载new操作符

void * operator new(size_t size) {if (size == 0) { // 处理0字节请求时,size = 1; // 把它当作1 个字节请求来处理}while (1) {分配size 字节内

2011-10-06 13:21:12 546

原创 删除(delete)空指针是安全的=>指针初始化为0或有效内存(new)

2011-10-06 11:08:32 935

转载 二叉树的左旋和右旋

树的旋转,分为左旋和右旋,以下借助图来做形象的解释和介绍:1.左旋(右子为轴,当前结点左旋)如上图所示:当在某个结点pivot上,做左旋操作时,我们假设它的右孩子y不是NIL[T],pivot可以为树内任意右孩子而不是NIL[T]的结点。左旋以pivot到y之

2011-10-05 10:31:34 30387 3

原创 红黑树

红黑树(带色的二叉查找树)(1)根结点黑色(2)红色结点的子结点为黑色(红色不相邻)(3)某结点到所有的空结点路径含相等数目的黑结点"(4)空结点为黑色"=====================================================

2011-10-04 15:36:12 1034

原创 B树,B+树

B树(m叉树)(1)每个结点最多m棵子树(2)根结点(非叶子)至少2棵子树(3)叶结点同一层(4)其他 至少m/2(上整)棵子树,格式(n,A0,K1,A1,K2,A2...Kn,An),n个数据,数据和子树严格有序B树查找:查结点(磁盘)+查子树(内

2011-10-04 09:48:17 630

原创 strcpy和strncpy

char * __cdecl strcpy(char * dst, const char * src){        char * cp = dst;        while( *cp++ = *src++ );        return(

2011-10-03 17:46:29 420

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除