摘要:
子类继承父类的时候构造器和非静态自由块的调用顺序 new 一个子类的时候的访问顺序:class Creature { { System .out. println("creature 的非静态初始化 "); } public Creature () { super(); System .out. println("creatur... 阅读全文
posted @ 2015-05-26 20:39
外禅内定,程序人生
阅读(193)
评论(0)
推荐(0)
摘要:
在java继承中对于成员变量和方法的处理是不同的 用javap工具分析如下类: class Animal { private String name ; public void info (){ System .out. println(name ); }}public class Wolf extends Animal { private doub... 阅读全文
posted @ 2015-05-26 20:36
外禅内定,程序人生
阅读(197)
评论(0)
推荐(0)
摘要:
在不考虑多线程的情况下,很多类代码都是完全正确的,但是如果放在多线程环境下,这些代码就很容易出错,我们称这些类为 线程不安全类 。多线程环境下使用线程安全类 才是安全的。下面是一个线程不安全类的例子:public class Account { private Integer balance; public Account(Integer balance) { ... 阅读全文
posted @ 2015-05-26 20:35
外禅内定,程序人生
阅读(300)
评论(0)
推荐(0)
摘要:
多线程环境下的线程不安全问题(2) 解决上条笔记所提到的线程不安全问题. 线程安全可以通过使用synchronizaed关键字的方法………具体解释:使用 synchronized 关键字后,方法就被 同步监视器所锁定,由于多条线程在这里使用的是同一个对象,所以就存在了线程的锁定问题,一个线程的开始必须等待其它线程结束之后,从而保证数据和线程的安全。补充:观察java源代码,会发现 Vec... 阅读全文
posted @ 2015-05-26 20:31
外禅内定,程序人生
阅读(223)
评论(0)
推荐(0)
摘要:
当我们需要大量使用 WeakReference 的时候,可以考虑使用 WeakHashMap 在执行垃圾回收之前,WeakHashMap 和 普通的 HashMap 没有任何区别,但是一旦 执行垃圾回收,WeakHashMap 中的所有 key—value 对都会被清空。import java. util.WeakHashMap ;class Key{ private String nam... 阅读全文
posted @ 2015-05-26 20:29
外禅内定,程序人生
阅读(284)
评论(0)
推荐(0)
摘要:
对数据库的批量数据处理---批量插入 如果要将很多对象持久化,必须通过经常的调用 flush() 以及稍后调用 clear() 来控制第一级缓存的大小。比如往数据库中添加十万条数据:这样写可能不行:这样就行:来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 20:26
外禅内定,程序人生
阅读(176)
评论(0)
推荐(0)
摘要:
java的垃圾回收机制(2) 堆内存的分代回收理论基础: 1. 绝大多数对象不会长时间被引用,而是在 Young 期间就会被回收2. 生存时间长的对象和生存时间短的对象很少存在相互引用的关系3. old代的垃圾回收无需效率太高,因为很少有对象会死掉4. old代的垃圾回收总是需要更多的时间来完成5. Permanent代主要用于加载Class,方法等信息,一般不会被回收掉,对于需要加载很... 阅读全文
posted @ 2015-05-26 20:23
外禅内定,程序人生
阅读(113)
评论(0)
推荐(0)
摘要:
java的垃圾回收机制(3) Young代(基于串行回收器): 来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 20:17
外禅内定,程序人生
阅读(135)
评论(0)
推荐(0)
摘要:
java的垃圾回收机制(4) Old代(基于串行回收器): 标记-->清除-->压缩 来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 20:16
外禅内定,程序人生
阅读(170)
评论(0)
推荐(0)
摘要:
Permanent代: 这部分垃圾回收机制不会回收来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 20:14
外禅内定,程序人生
阅读(110)
评论(0)
推荐(0)
摘要:
集合中存储的是对象么 集合中存储的实际上是对象的引用import java. util.ArrayList ;import java. util.List ;class Apple{ private String color ; private String type ; public Apple (String color, String type) { ... 阅读全文
posted @ 2015-05-26 20:09
外禅内定,程序人生
阅读(227)
评论(0)
推荐(0)
摘要:
java的垃圾回收机制(1) 垃圾回收机制算法是限制jvm效率的重要因素。 实现垃圾回收的算法设计有很多种,单独使用总是利弊参半,所以实际垃圾回收的时候会综合使用各种垃圾算法,根据不同的情况采用不同的垃圾回收算法,目前使用的是分代回收的方式。分代回收根据对象生成时间的长短,把对象分为三代:Young代Old代Permanent代来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 20:08
外禅内定,程序人生
阅读(141)
评论(0)
推荐(0)
摘要:
CRC循环冗余检验(转载) Cyclic Redundancy Check循环冗余检验,是基于数据计算一组效验码,用于核对数据传输过程中是否被更改或传输错误。算法原理假设数据传输过程中需要发送15位的二进制信息g=101001110100001,这串二进制码可表示为代数多项式g(x) = x^14 + x^12 + x^9 + x^8 + x^7 + x^5 + 1,其中g中第k位的值,... 阅读全文
posted @ 2015-05-26 20:05
外禅内定,程序人生
阅读(271)
评论(0)
推荐(0)
摘要:
稀疏矩阵的压缩存储--十字链表(转载) 来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 20:04
外禅内定,程序人生
阅读(303)
评论(0)
推荐(0)
摘要:
ARP欺骗 ---网络执法官(转载) 网络执法官中利用的ARP原理使被攻击的电脑无法上网,使该电脑无法找到网关的MAC地址。ARP(Address Resolution Protocol)是地址解析协议,是一种将IP地址转化成物理地址的协议。从IP地址到物理地址的映射有两种方式:表格方式和非表格方式。ARP具体说来就是将网络层(IP层,也就是相当于OSI的第三层)地址解析为数据连接层(MA... 阅读全文
posted @ 2015-05-26 20:00
外禅内定,程序人生
阅读(531)
评论(0)
推荐(0)
摘要:
抓包分析传输层TCP协议通信(1) TCP头: 流程展现:来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 19:59
外禅内定,程序人生
阅读(253)
评论(0)
推荐(0)
摘要:
抓包分析传输层TCP协议通信(2) 本地--》服务器:序号为1,确认号为1,数据长度为0,只有TCP头。本地--》服务器:序号为1,确认号为1,数据长度为489。服务器--》本地:序号为1,确认号为490,长度为0。服务器--》本地:序号为1,确认号为490,长度为129。服务器--》本地:序号为130,确认号为490,长度为5。本地--》服务器:序号为490,确认号为135,长度为0。来... 阅读全文
posted @ 2015-05-26 19:58
外禅内定,程序人生
阅读(224)
评论(0)
推荐(0)
摘要:
TCP建立连接时三次握手(1) 来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 19:56
外禅内定,程序人生
阅读(129)
评论(0)
推荐(0)
摘要:
IP地址划分 来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 19:53
外禅内定,程序人生
阅读(162)
评论(0)
推荐(0)
摘要:
数字签名 SSL CA https协议(转载) 1.鲍勃有两把钥匙,一把是公钥,另一把是私钥。2.鲍勃把公钥送给他的朋友们----帕蒂、道格、苏珊----每人一把。3.苏珊要给鲍勃写一封保密的信。她写完后用鲍勃的公钥加密,就可以达到保密的效果。4.鲍勃收信后,用私钥解密,就看到了信件内容。这里要强调的是,只要鲍勃的私钥不泄露,这封信就是安全的,即使落在别人手里,也无法解密。5.鲍勃给苏珊回... 阅读全文
posted @ 2015-05-26 19:53
外禅内定,程序人生
阅读(238)
评论(0)
推荐(0)
摘要:
TCP建立连接时三次握手(2) 当 客户端 发出链接请求后,服务器响应客户端处于之前,客户端处于 SYS_SENT状态,由于这个过程很快,不易观察,这里尝试用facebook官网: 客户端收到请求之后,做出响应,处于SYS_RCVD状态,我们这里用syn攻击本机观察,syn攻击本机时,发出大量伪地址的包,本机作为服务端无法找到客户端自然无法收到回应,一直处于SYS_RCVD状态。攻击结果... 阅读全文
posted @ 2015-05-26 19:53
外禅内定,程序人生
阅读(286)
评论(0)
推荐(0)
摘要:
python中的yield(转载) yield的英文单词意思是生产,刚接触Python的时候感到非常困惑,一直没弄明白yield的用法。只是粗略的知道yield可以用来为一个函数返回值塞数据,比如下面的例子:def addlist(alist): for i in alist: yield i + 1 取出alist的每一项,然后把i... 阅读全文
posted @ 2015-05-26 19:50
外禅内定,程序人生
阅读(201)
评论(0)
推荐(0)
摘要:
filter过滤器(转载) Python内建的filter()函数用于过滤序列。和map()类似,filter()也接收一个函数和一个序列。和map()不同的时,filter()把传入的函数依次作用于每个元素,然后根据返回值是True还是False决定保留还是丢弃该元素。例如,在一个list中,删掉偶数,只保留奇数,可以这么写:def is_odd(n): return n % 2... 阅读全文
posted @ 2015-05-26 19:49
外禅内定,程序人生
阅读(186)
评论(0)
推荐(0)
摘要:
匿名函数 lambda 当我们在传入函数时,有些时候,不需要显式地定义函数,直接传入匿名函数更方便。在Python中,对匿名函数提供了有限支持。还是以map()函数为例,计算f(x)=x2时,除了定义一个f(x)的函数外,还可以直接传入匿名函数:>>> map(lambda x: x * x, [1, 2, 3, 4, 5, 6, 7, 8, 9]) [1, 4, 9, 16, 25, 3... 阅读全文
posted @ 2015-05-26 19:48
外禅内定,程序人生
阅读(189)
评论(0)
推荐(0)
摘要:
偏函数(转载) Python的functools模块提供了很多有用的功能,其中一个就是偏函数(Partial function)。要注意,这里的偏函数和数学意义上的偏函数不一样。在介绍函数参数的时候,我们讲到,通过设定参数的默认值,可以降低函数调用的难度。而偏函数也可以做到这一点。举例如下:int()函数可以把字符串转换为整数,当仅传入字符串时,int()函数默认按十进制转换:>>> in... 阅读全文
posted @ 2015-05-26 19:46
外禅内定,程序人生
阅读(168)
评论(0)
推荐(0)
摘要:
python中的多重继承和Mixin(转载) 继承是面向对象编程的一个重要的方式,因为通过继承,子类就可以扩展父类的功能。回忆一下Animal类层次的设计,假设我们要实现以下4种动物:Dog - 狗狗;Bat - 蝙蝠;Parrot - 鹦鹉;Ostrich - 鸵鸟。如果按照哺乳动物和鸟类归类,我们可以设计出这样的类的层次:但是如果按照“能跑”和“能飞”来归类,我们就应该设计出这样的类的... 阅读全文
posted @ 2015-05-26 19:45
外禅内定,程序人生
阅读(563)
评论(0)
推荐(0)
摘要:
__slot__ 正常情况下,当我们定义了一个class,创建了一个class的实例后,我们可以给该实例绑定任何属性和方法,这就是动态语言的灵活性。先定义class:>>> class Student(object): ... pass ... 然后,尝试给实例绑定一个属性:>>> s = Student() >>> s.name = 'Michael' # 动态给实例绑定一个属性... 阅读全文
posted @ 2015-05-26 19:45
外禅内定,程序人生
阅读(290)
评论(0)
推荐(0)
摘要:
python中的定制类(转载) 看到类似__slots__这种形如__xxx__的变量或者函数名就要注意,这些在Python中是有特殊用途的。__slots__我们已经知道怎么用了,__len__()方法我们也知道是为了能让class作用于len()函数。除此之外,Python的class中还有许多这样有特殊用途的函数,可以帮助我们定制类。__str__我们先定义一个Student类,打印... 阅读全文
posted @ 2015-05-26 19:43
外禅内定,程序人生
阅读(305)
评论(0)
推荐(0)
摘要:
简单外挂详解由于win系统不允许进程间相互修改,采用dll注射的方法修改一个exe文件中的值。一个简单的程序:#include#includevoid main(){int x = 10;int y = 100000; printf("%x,%x\n" , & x, &y );while (1){... 阅读全文
posted @ 2015-05-26 19:38
外禅内定,程序人生
阅读(573)
评论(0)
推荐(0)
摘要:
三级指针 n维指针用于控制权限,维数越高权限越高#define _CRT_SECURE_NO_WARNINGS#include#include/*//修改变量用一级指针//修改一级指针用二级指针//修改二级指针用三级指针//修改n级指针用n+1级指针c程序分配给全局变量内存后才启动main函数*/int a = 1;int* p = &a;int b = 2;int* p2 = &b;vo... 阅读全文
posted @ 2015-05-26 19:36
外禅内定,程序人生
阅读(769)
评论(0)
推荐(0)
摘要:
外挂指针 //外挂 //改变一个数据,需要数据的地址,也就是指针,int需要int* //改变一个指针变量,需要指针的地址,二级指针,int*需要int ** //改变一个二级指针,需要二级指针的地址,三级指针,int**需要int *** //改变一个指针,指针指向数组,需要指针的地址,数组的首地址 //函数指针,找到地址,进行类型转换,调用函数。 #include#include//... 阅读全文
posted @ 2015-05-26 19:32
外禅内定,程序人生
阅读(362)
评论(0)
推荐(0)
摘要:
内存四区(1)(转载) 来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 19:31
外禅内定,程序人生
阅读(139)
评论(0)
推荐(0)
摘要:
内存四区(3)(转载) func_param:函数参数在栈区来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 19:30
外禅内定,程序人生
阅读(152)
评论(0)
推荐(0)
摘要:
劫持(1) 第一步: 微软官网下载: 第二步:安装后编译:第三步:编译结束后将如下文件拷贝到新建项目中:结果如下:然后开始编写代码:在文件中加入:#include"detours.h"#pragma comment (lib ,"detours.lib" )来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 19:28
外禅内定,程序人生
阅读(203)
评论(0)
推荐(0)
摘要:
过滤劫持和函数回调(2) 注意release模式:这里实现对tasklist指令的劫持,其它不劫持:#include#include#include#include"detours.h"#pragma comment (lib ,"detours.lib" )static int (*oldsystem)(const char * _Command) = system;//全部劫持int ... 阅读全文
posted @ 2015-05-26 19:27
外禅内定,程序人生
阅读(361)
评论(0)
推荐(0)
摘要:
劫持程序(3) 劫持代码://开始拦截void Hook(){ DetourRestoreAfterWith ();//恢复原来状态 , DetourTransactionBegin ();//拦截开始 DetourUpdateThread (GetCurrentThread());//刷新当前线程 //这里可以连续多次调用 DetourAttach,表明HOOK ... 阅读全文
posted @ 2015-05-26 19:25
外禅内定,程序人生
阅读(279)
评论(0)
推荐(0)
摘要:
dll注入实现MFC程序劫持(4) 双击会运行system("pause")打开计算器现在禁止打开#include#include#include#include#include"detours.h"#pragma comment (lib ,"detours.lib" )static int (*oldsystem)(const char * _Command) = system;int... 阅读全文
posted @ 2015-05-26 19:24
外禅内定,程序人生
阅读(498)
评论(0)
推荐(0)
摘要:
劫持系统进程禁止打开任何进程(5) windows创建进程的函数:把这个函数劫持之后注射到 explore.exe进程中即可。现在注射到印象笔记中测试:#include#include#include#include"detours.h"#pragma comment (lib ,"detours.lib" )BOOL(WINAPI * oldCreateProcessW)( ... 阅读全文
posted @ 2015-05-26 19:21
外禅内定,程序人生
阅读(479)
评论(0)
推荐(0)
摘要:
劫持系统进程禁止创建文件 #include#include#include#include"detours.h"#pragma comment (lib ,"detours.lib" )HANDLE(WINAPI * oldCreateFileW)( _In_ LPCWSTR lpFileName, _In_ DWORD dwDesiredAccess, ... 阅读全文
posted @ 2015-05-26 19:19
外禅内定,程序人生
阅读(697)
评论(0)
推荐(0)
摘要:
缓冲区(1)(文件结构体) 文件结构体源码: 来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 19:17
外禅内定,程序人生
阅读(231)
评论(0)
推荐(0)
摘要:
仿函数--创建结构体或类的内部函数指针 #include#include#includeusing namespace std;using namespace std::placeholders;//仿函数 创建一个结构体或类的内部函数的函数指针struct MyStruct{ void add( int a){ cout << a << endl;... 阅读全文
posted @ 2015-05-26 19:15
外禅内定,程序人生
阅读(458)
评论(0)
推荐(0)
摘要:
vector实现十字链表管理不规则数据 #include#includeusing std::vector ;void main(){ vector myvector1; myvector1.push_back(12); myvector1.push_back(13); myvector1.push_back(13); myvec... 阅读全文
posted @ 2015-05-26 19:15
外禅内定,程序人生
阅读(165)
评论(0)
推荐(0)
摘要:
非缓冲 和 全缓冲 非缓冲:不需要flush函数刷新,直接从缓冲区自动补上了#include#includeint main(){ printf( "%d\n", *(stdin ->_ptr)); //打印换成区内容 \0 -> 0 printf( "%d\n", stdin ->_cnt);//缓冲区还有多少个字节 char ch = getcha... 阅读全文
posted @ 2015-05-26 19:15
外禅内定,程序人生
阅读(157)
评论(0)
推荐(0)
摘要:
缓冲区(2) #include#includeint main(){ printf( "%d\n", *(stdin ->_ptr)); //打印换成区内容 \0 -> 0 printf( "%d\n", stdin ->_cnt);//缓冲区还有多少个字节 char ch = getchar(); //输入123 会把1提走 缓冲区剩余... 阅读全文
posted @ 2015-05-26 19:15
外禅内定,程序人生
阅读(152)
评论(0)
推荐(0)
摘要:
auto_ptr 智能指针(C98)#includeusing namespace std;void main(){//auto_ptrfor ( int i = 0; i a_p(p);}cin.get();}查看任务管理器: 阅读全文
posted @ 2015-05-26 19:06
外禅内定,程序人生
阅读(312)
评论(0)
推荐(0)
摘要:
static_cast,const_cast,reinterpret_cast,dynamic_cast详解 #include//c++的数据类型转换:static_cast(要转换的数据),//用于一般的数据类型转换void main1(){ int n = static_cast(78.98); int* p = static_cast(malloc(100... 阅读全文
posted @ 2015-05-26 19:05
外禅内定,程序人生
阅读(370)
评论(0)
推荐(0)
摘要:
mysql面试(转载) 问题1:你如何确定 MySQL 是否处于运行状态?答案: Debian 上运行命令service mysql status,在RedHat 上运行命令service mysqld status。然后看看输出即可。问题2:如何开启或停止 MySQL 服务?答案:运行命令service mysqld start开启服务;运行命令service mysqld stop停止... 阅读全文
posted @ 2015-05-26 19:02
外禅内定,程序人生
阅读(187)
评论(0)
推荐(0)
摘要:
堆和栈在内存中的生长方向 堆从低地址到高地址生长栈从高地址到低地址生长二者生长方向相反来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 19:02
外禅内定,程序人生
阅读(927)
评论(0)
推荐(0)
摘要:
const 和 mutable 来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 19:02
外禅内定,程序人生
阅读(74)
评论(0)
推荐(0)
摘要:
unique_ptr 智能指针(C++11) #include#include //内存using namespace std;void main(){ for ( size_t i = 0; i up(new double ); } cin.get();} 使用智能指针,系统会检测有多少个指针指向一片内存,当系统检查到没有指针指向这片内存的时候或者... 阅读全文
posted @ 2015-05-26 19:02
外禅内定,程序人生
阅读(176)
评论(0)
推荐(0)
摘要:
设计模式(转载) 自己写代码,基本是面向过程的,换句话说,就是直接实现工程,不会考虑什么借口啊,对象啊,的东西。。。所以对设计模式,也了解不了太深,简单的列出23种模式及简介。 面向对象实际上就两句话:一是松耦合(Coupling),二是高内聚(Cohesion)。面向对象系统追求的目标就是尽可能地提高系统模块内部的内聚(Cohesion)、尽可能降低模块间的耦合(Coupling) 创建... 阅读全文
posted @ 2015-05-26 19:00
外禅内定,程序人生
阅读(154)
评论(0)
推荐(0)
摘要:
红黑树与hash table最大的不同是,红黑树是有序结构,而hash table不是。但不是说set就不能用hash,如果只是判断set中的元素是否存在,那么hash显然更合适,因为set 的访问操作时间复杂度是log(N)的,而使用hash底层实现的hash_set是近似O(1)的。然而,set应该更加被强调理解为“集合”,而集合所涉及的操作并、交、差等,即STL提供的如交集set_inter... 阅读全文
posted @ 2015-05-26 19:00
外禅内定,程序人生
阅读(336)
评论(0)
推荐(0)
摘要:
main 主函数执行完毕后,是否可能会再执行一段代码?(转载) #include#includeusing namespace std;int f1(){ cout << "f1" << endl; return 0;}int f2(){ cout << "f2" << endl; return 0;}int f3(){ c... 阅读全文
posted @ 2015-05-26 19:00
外禅内定,程序人生
阅读(311)
评论(0)
推荐(0)
摘要:
计算机网络(转载) 1、OSI(Open System Interconnect):开放系统互联,是一个七层的计算机网络模型,分别为:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。TCP/IP(Transmission Control Protocol/Internet Protocol):传输控制协议/因特网互联协议,是一个四层的计算机网络模型,分别为:网络接口层、网络层、... 阅读全文
posted @ 2015-05-26 18:57
外禅内定,程序人生
阅读(255)
评论(0)
推荐(0)
摘要:
2014! 的末尾有多少个0 假设 末尾有 k 个0,所以 2014! = x * 10^k ; 10 ^ k = (2 * 5 )^ k = 2^k * 5^k, 明显所有数字中因数含有2的数字多于含有5的数字。因此只要求得所有数字中的因数中一共有所少个数字5即可。首先,5,10,15,20,25.....2010 , 这些数字因数都含有5,但是发现有的数字中5的因数不止一个。至少含有... 阅读全文
posted @ 2015-05-26 18:54
外禅内定,程序人生
阅读(415)
评论(0)
推荐(0)
摘要:
5. HTTP 401错误 (未经授权)访问者试图访问受限页面但未经授权时,网站返回HTTP 401错误。错误登录尝试是导致这一错误的主因。4. HTTP 400错误(错误请求)Web服务器通过返回HTTP 400错误告诉访问者,访问者用来访问网站的程序出错,或访问请求途中遭到破坏。3. HTTP 403错误(禁止访问)403错误类似于401错误,不同之处在于401错误是未经授权,而403错误是禁... 阅读全文
posted @ 2015-05-26 18:54
外禅内定,程序人生
阅读(557)
评论(0)
推荐(0)
摘要:
内存分配(转载) 来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 18:50
外禅内定,程序人生
阅读(126)
评论(0)
推荐(0)
摘要:
fork( )函数(转载) 来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 18:48
外禅内定,程序人生
阅读(147)
评论(0)
推荐(0)
摘要:
软件开发中的迭代(转载) 在RUP中,迭代被定义为:迭代包括产生产品发布(稳定、可执行的产品版本)的全部开发活动和要使用该发布必需的所有其他外围元素。这个定义太学究气,半天看不明白。这样解释可能更容易理解:我们开发一个产品,如果不太复杂,会采用瀑布模型,简单的说就是先需求定义,然后构建框架,然后写代码,然后测试,最后发布一个产品。这样,几个月过去了,直到最后一天发布时,大家才能见到一个产品... 阅读全文
posted @ 2015-05-26 18:46
外禅内定,程序人生
阅读(552)
评论(0)
推荐(0)
摘要:
进程间通信的方式(转载) 来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 18:45
外禅内定,程序人生
阅读(144)
评论(0)
推荐(0)
摘要:
要计算或解决一个问题,该问题通常有一个大小规模,用n表示。例如,若分析计算一个二进制数,该数有多少位,这个位就是其大小规模。再比如,从n个数里面找出最大的那个数,这个n就是该问题的规模大小。怎么找?我们要比较n-1次才能得到结果,这个n-1就是所花的时间,也就是时间复杂度。再比如,将n个数按从大至小排序,n是其规模大小,若是我们按这样的方法:第一次从n个数里找最大,第二次从n-1个数里找最大,以此... 阅读全文
posted @ 2015-05-26 18:44
外禅内定,程序人生
阅读(196)
评论(0)
推荐(0)
摘要:
P: 能在多项式时间内解决的问题 NP: 不能在多项式时间内解决或不确定能不能在多项式时间内解决,但能在多项式时间验证的问题 NPC: NP完全问题,所有NP问题在多项式时间内都能约化(Reducibility)到它的NP问题,即解决了此NPC问题,所有NP问题也都得到解决。 NP hard:NP难问题,所有NP问题在多项式时间内都能约化(Reducibility)到它的问题(不... 阅读全文
posted @ 2015-05-26 18:43
外禅内定,程序人生
阅读(171)
评论(0)
推荐(0)
摘要:
大小端字节序 来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 18:40
外禅内定,程序人生
阅读(159)
评论(0)
推荐(0)
摘要:
求n对括号的排列组合(卡特兰数) 关键:从起始位置至右的任意序列,左括号的数目>=右括号的数目void generateParenthesis(int n ){ generate( n, n, "" );}void generate(int leftNum , int rightNum , string s ){ //递归出口 if ( leftNum ... 阅读全文
posted @ 2015-05-26 18:39
外禅内定,程序人生
阅读(1245)
评论(0)
推荐(0)
摘要:
字节序 来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 18:37
外禅内定,程序人生
阅读(162)
评论(0)
推荐(0)
摘要:
在返回值时,返回false也可以看做是一种异常,那么我们可以自己编写package org.jsoft.test;public class User1 { public void verify(String username, String password) { if (!("ivan" .equals(username) && "ivan".equals(passw... 阅读全文
posted @ 2015-05-26 18:33
外禅内定,程序人生
阅读(429)
评论(0)
推荐(0)
摘要:
私有ip段 来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 18:30
外禅内定,程序人生
阅读(194)
评论(0)
推荐(0)
摘要:
realloc函数实现数组动态增长 realloc函数有两种机制:#include#includeint main(){ int *p = ( int*)calloc(10, sizeof( int)); printf( "%p",p); for ( int i = 0; i #includeint main(){ ... 阅读全文
posted @ 2015-05-26 18:28
外禅内定,程序人生
阅读(736)
评论(0)
推荐(0)
摘要:
回溯法--基本思想 有些问题的解有限但是有很多种可能性,解需要穷尽搜索才能获得,为了减少搜索范围,进行剪枝,避免所有的搜索情况。当遍历到某种情况的时候,满足剪枝条件,则停止遍历此种情况,反之,继续遍历下一个。来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 18:25
外禅内定,程序人生
阅读(1856)
评论(0)
推荐(0)
摘要:
回溯法---子集和问题(6) 问题描述: 在给定的集合中挑选出所有和为C的子集和。在(2)的算法框架基础上:import java. util.Vector ;public class Subset extends CombineProblem { int[] arr ; int c; public Subset(int[] arr , i... 阅读全文
posted @ 2015-05-26 18:24
外禅内定,程序人生
阅读(460)
评论(0)
推荐(0)
摘要:
回溯法---哈密顿回路(5) 在给定图中任取一点,要求经过图中所有点,最后回到起始点,要求同一个点不允许重复经过 在(2)算法框架基础上:import java. util.Vector ;public class Hamilton extends CombineProblem { int start; int[][] graph ; pu... 阅读全文
posted @ 2015-05-26 18:24
外禅内定,程序人生
阅读(411)
评论(0)
推荐(0)
摘要:
回溯法---n皇后问题(4) 以八皇后问题为例: 如何能够在 8×8 的国际象棋棋盘上放置八个皇后,使得任何一个皇后都无法直接吃掉其他的皇后?为了达到此目的,任两个皇后都不能处于同一条横行、纵行或斜线上。在前面所说的算法框架上解八皇后问题:import java. util.Vector ;public class Queen extends CombineProblem { ... 阅读全文
posted @ 2015-05-26 18:24
外禅内定,程序人生
阅读(205)
评论(0)
推荐(0)
摘要:
回溯法---n-着色问题(3) 以三色问题为例: 对给定无向图着色,相邻点颜色不能相同,限用3种颜色在框架基础上的实现:import java. util.Vector ;public class ThreeColor extends CombineProblem { int[][] graph; int start ; public ThreeColor (int[]... 阅读全文
posted @ 2015-05-26 18:24
外禅内定,程序人生
阅读(741)
评论(0)
推荐(0)
摘要:
回溯法--算法框架(2) 基本框架和组成部分:public abstract class Problem { //判断是否有解向量 boolean flag ; //解向量 Comparable [] x; //解向量的大小 int n; //判断是否为完整解 public abstract boolean complete... 阅读全文
posted @ 2015-05-26 18:24
外禅内定,程序人生
阅读(168)
评论(0)
推荐(0)
摘要:
创建二叉树的所有深度上的节点链表 深搜:public static ArrayList> getRes(TreeNode root){ ArrayList> res = new ArrayList>(); getRes(res,root,0); return res;}public sta... 阅读全文
posted @ 2015-05-26 18:16
外禅内定,程序人生
阅读(234)
评论(0)
推荐(0)
摘要:
笔试 这道题应该注意 指针类型加减 时步长的问题。A 大小为 4B 大小为 8那么:void seta(A* data, int idx) { data[idx].a = 2;} 由于传入的实参为B类型,大小为8,而形参为A类型,大小为4data[idx] 取 data + idx 处的元素,这时指针 data加1 的长度不是一个B长度,而是一个A长度,或者说是1/2个B长度。这时该... 阅读全文
posted @ 2015-05-26 18:06
外禅内定,程序人生
阅读(102)
评论(0)
推荐(0)
摘要:
笔试 (2) 来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 18:03
外禅内定,程序人生
阅读(137)
评论(0)
推荐(0)
摘要:
虚函数(转载)一般继承(无虚函数覆盖)下面,再让我们来看看继承时的虚函数表是什么样的。假设有如下所示的一个继承关系:请注意,在这个继承关系中,子类没有重载任何父类的函数。那么,在派生类的实例中,其虚函数表如下所示:对于实例:Derive d; 的虚函数表如下:我们可以看到下面几点:1)虚函数按照其声... 阅读全文
posted @ 2015-05-26 17:56
外禅内定,程序人生
阅读(145)
评论(0)
推荐(0)
摘要:
实现死锁 #include #include #include #include #include #include pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;//初始化了一个MUTEX锁 void *func1(void *arg) { pthread_mutex_lock(&mutex);//给mutex加锁,这是一... 阅读全文
posted @ 2015-05-26 17:50
外禅内定,程序人生
阅读(162)
评论(0)
推荐(0)
摘要:
mutex互斥锁 #include #include #include #include #include #include pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;//初始化了一个MUTEX锁 void *func1(void *arg) { pthread_mutex_lock(&mutex);//给mutex加锁... 阅读全文
posted @ 2015-05-26 17:50
外禅内定,程序人生
阅读(154)
评论(0)
推荐(0)
摘要:
共享内存实现进程间通信 #include #include #include #include #include #include #include using namespace std; int main() { //创建共享内存 长度是1024 权限为666 int shmid = shmget(IPC_PRIVATE,1024,0666); if(sh... 阅读全文
posted @ 2015-05-26 17:50
外禅内定,程序人生
阅读(134)
评论(0)
推荐(0)
摘要:
#include#include#include#include#include#include #include using namespace std;int main(){ //创建共享内存 长度是1024 权限为666 int shmid = shmget(IPC_PRIVATE,1024,0666); if(shmid<0) { cout<<"err... 阅读全文
posted @ 2015-05-26 17:50
外禅内定,程序人生
阅读(146)
评论(0)
推荐(0)
摘要:
文件拷贝 来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 17:48
外禅内定,程序人生
阅读(115)
评论(0)
推荐(0)
摘要:
linux 面试 answer:A来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 17:48
外禅内定,程序人生
阅读(111)
评论(0)
推荐(0)
摘要:
/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行并从/etc/profile.d目录的配置文件中搜集shell的设置. /etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取~/.ba... 阅读全文
posted @ 2015-05-26 17:41
外禅内定,程序人生
阅读(157)
评论(0)
推荐(0)
摘要:
统计文件中“牛客”出现的次数: grep -o "查找单词" “查找的文件”| wc -l grep -o "查找单词" “查找的文件”: -o 表示精确匹配,没有-o,只会显示要查找单词所出现的那一行来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 17:33
外禅内定,程序人生
阅读(154)
评论(0)
推荐(0)
摘要:
指针之间的加减法 来自为知笔记(Wiz) 阅读全文
posted @ 2015-05-26 17:14
外禅内定,程序人生
阅读(321)
评论(0)
推荐(0)
摘要:
linux下压缩命令(转载) .tar解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)———————————————.gz解压1:gunzip FileName.gz解压2:gzip -d FileName.gz压缩:gzip FileName.tar.gz 和 .tgz解压:tar zxvf Fi... 阅读全文
posted @ 2015-05-26 17:14
外禅内定,程序人生
阅读(139)
评论(0)
推荐(0)
摘要:
作者:阮一峰一、inode是什么?理解inode,要从文件储存说起。文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector)。每个扇区储存512字节(相当于0.5KB)。操作系统读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性连续读取多个扇区,即一次性读取一个"块"(block)。这种由多个扇区组成的"块",是文件存取的最小单位。"块"的大小,最常见的是4KB,即连续八个 s... 阅读全文
posted @ 2015-05-26 17:14
外禅内定,程序人生
阅读(521)
评论(0)
推荐(0)
摘要:
Linux /etc/group文件与/etc/passwd和/etc/shadow文件都是有关于系统管理员对用户和用户组管理时相关的文件。linux /etc/group文件是有关于系统管理员对用户和用户组管理的文件,linux用户组的所有信息都存放在/etc/group文件中。具有某种共同特征的用户集合起来就是用户组(Group)。用户组(Group)配置文件主要有 /etc/grou... 阅读全文
posted @ 2015-05-26 17:14
外禅内定,程序人生
阅读(423)
评论(0)
推荐(0)
摘要:
“volatile”的含义是“请不要做没谱的优化,这个值可能变掉的”,而并非“你可以修改这个值”。因此,它们本来就不是矛盾的 const和volatile放在一起的意义在于: (1)本程序段中不能对a作修改,任何修改都是非法的,或者至少是粗心,编译器应该报错,防止这种粗心; (2)另一个程序段则完... 阅读全文
posted @ 2015-05-26 17:08
外禅内定,程序人生
阅读(767)
评论(0)
推荐(0)
摘要:
CCLabelTTF: 使用系统字体,每个字符串会生成一个纹理,显示效率比较低下,适合不变化的文字 CCLabelAtlas: 使用NodeAtlas优化渲染,适合经常变化的数字,比如分数,金钱之类的数字,直接使用图片,将文字画在图片上CCLabelBMFont的作用就是:处理不等长的复杂各种字体bool T02Layers ::init(){ if (! CCLayer::init(... 阅读全文
posted @ 2015-05-26 17:01
外禅内定,程序人生
阅读(377)
评论(0)
推荐(0)
摘要:
批处理精灵节点 批处理精灵节点用于精灵数目很多的时候,使用批处理的方式可以降低渲染次数,提高效率,当然,当精灵数目较小的时候是没有必要使用批处理的bool T02Layers ::init(){ if (! CCLayer::init()) { return false; } CCSize winSize = C... 阅读全文
posted @ 2015-05-26 16:55
外禅内定,程序人生
阅读(356)
评论(0)
推荐(0)
摘要:
解释: 新创建一个普通文件的时候,系统不允许执行,所以存取权限最大就是 6,而如果是目录文件可以执行就是7 那么 普通文件存取权限是 666 , 目录 777 umask 为 244 新的文件的权限就是 422 如果是目录就是 533 来自为知笔记(Wiz)附件列表Image.png 阅读全文
posted @ 2015-05-26 12:29
外禅内定,程序人生
阅读(306)
评论(0)
推荐(0)
摘要:
字节序分为 little-endian 和 big-endian,不同主机通信字节序转换过程: 主机字节序 -> 网络字节序 ->主机字节序 判断网络字节序: #includeint isBigEndian(){ int flag = 0; short a = htons(0x0102); char* p = &a; if(*p==0x01) { fla... 阅读全文
posted @ 2015-05-26 11:40
外禅内定,程序人生
阅读(184)
评论(0)
推荐(0)

浙公网安备 33010602011771号