- 博客(14)
- 资源 (4)
- 收藏
- 关注
原创 Effective C++总结
条款1:View C++ as a federation of languages。视C++为一个语言联邦。分为四个部分:C、Object-Oriented C++(Class)、Template C++、STL条款2:Prefer consts, enums, inlines to #defines。尽量以const, enum, inline替代#define。记住
2012-10-30 17:04:38 1375
转载 Python对象模型
Python对象模型对一门具体的编程语言来说,在应用设计模式时影响最大的莫过于它的对象模型了,这是因为大部分设计模式都源自于C++和Java这类面向对象编程语言。要想在Python中复用这些设计模式,首先需要对Python的对象模型有一个比较清晰的认识。4.1 类同其它面向对象编程语言一样,Python中的类也是一种用户自定义的数据类型,其基本的语法格式是:
2012-10-29 09:56:03 2967
原创 等概率产生0和1(延伸)
1.有一个随机数发生器,能以概率p生成0,以概率1-p生成1,问如何做一个随机数发生器 使得生成0和1的概率相等。 2.用上面那个生成0和1的概率相等的随机数发生器,怎样做一个随机数发生器使得它生成 的数在1...N之间均匀分布。 第一题比较简单,可以用原发生器周期性地产生2个数,直到生成01或者10。 由于生成01和10的概率均为p(1-p),故预先任意指定01为0
2012-10-28 21:29:08 3115
转载 螺旋数组
题目:输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字。例如:如果输入如下矩阵:1 2 3 45 6 7 89 10 11 1213
2012-10-26 22:24:47 868
转载 二分查找及其变形
二分查找常用来查找指定有序集合中元素的位置,思路和代码都比较简单,所以大家都很熟练。二分查找貌似很多公司在面试或笔试的时候都会多少涉及到,经常会让你在纸上直接写代码,所以平常只知道原理而从来不自己写的人,可能不会太快写出来,或是代码有点小漏洞,所以经常敲敲常见的数据结构和代码还是很必要的。经典二分查找的代码:int Find(int arr[], int key,int length)
2012-10-26 19:59:22 842
转载 socket的read和recv函数的区别
1、recv和send recv和send函数提供了和read和write差不多的功能.但是他们提供了第四个参数来控制读写操作。int recv(int sockfd,void *buf,int len,int flags)int send(int sockfd,void *buf,int len,int flags)前面的三个参数和read,write相同,第四个参数能够是0或
2012-10-26 19:31:00 1160
转载 linux的tcp服务端、客户端例子
TCP编程的服务器端一般步骤是:1、创建一个socket,用函数socket();2、设置socket属性,用函数setsockopt(); * 可选3、绑定IP地址、端口等信息到socket上,用函数bind();4、开启监听,用函数listen();5、接收客户端上来的连接,用函数accept();6、收发数据,用函数send()和recv(),
2012-10-26 19:18:50 1066
原创 Mysql数据常用命令
1:使用SHOW语句找出在服务器上当前存在什么数据库: mysql>SHOW DATABASES; 2:2、创建一个数据库MYSQLDATA mysql> CREATE DATABASE MYSQLDATA; 3:选择你所创建的数据库 mysql> USE MYSQLDATA; (按回车键出现Database changed 时说明操作成功!)4:查看现在
2012-10-24 09:26:13 886
原创 自己实现memcpy/strcpy/strcmp/strcat/strlen/strstr
字节拷贝函数:void * memcpy1(void *dest, const void *src, size_t n){ assert(dest!=NULL&&src!=NULL); //有效性检测 if(dest == src) return dest; else if(dest
2012-10-23 18:10:37 908
原创 C++中的空类,默认产生哪些类成员函数?
class Empty{public: Empty(); // 缺省构造函数 Empty( const Empty& ); // 拷贝构造函数 ~Empty(); // 析构函数 Empty& operator=( const Empty& )
2012-10-23 17:44:16 996
原创 定义一个宏获取结构体中变量相对结构体开始的偏移量
#include using namespace std;struct test{ int a; char b; int c; char d;};#define find(type, var) (unsigned int)(&(((type *)(0))->var))int main(){ int a = find(test, a); //0 int b = fin
2012-10-22 14:26:11 1348
转载 继承和组合的区别
首先它们都是实现系统功能重用,代码复用的最常用的有效的设计技巧,都是在设计模式中的基础结构。相信大家已了解的,类继承允许我们根据自己的实现来覆盖重写父类的实现细节,父类的实现对于子类是可见的,所以我们一般称之为白盒复用。对象持有(其实就是组合)要求建立一个号的接口,但是整体类和部分类之间不会去关心各自的实现细节,即它们之间的实现细节是不可见的,故成为黑盒复用。 继承是在编译时刻静态
2012-10-21 22:02:00 4900
转载 RAID详解[RAID0/RAID1/RAID10/RAID5]
一.RAID定义RAID(Redundant Array of Independent Disk 独立冗余磁盘阵列)技术是加州大学伯克利分校1987年提出,最初是为了组合小的廉价磁盘来代替大的昂贵磁盘,同时希望磁盘失效时不会使对数据的访问受损 失而开发出一定水平的数据保护技术。RAID就是一种由多块廉价磁盘构成的冗余阵列,在操作系统下是作为一个独立的大型存储设备出现。RAID可以充分发 挥出多
2012-10-18 15:39:08 3453
原创 百度2013校园招聘笔试题(含自己整理的答案)
一:简答题(30)1:数据库以及线程发生死锁的原理及必要条件,如何避免死锁答:产生死锁的原因主要是:(1) 因为系统资源不足。(2) 进程运行推进的顺序不合适。(3) 资源分配不当等。产生死锁的四个必要条件:(1)互斥条件:一个资源每次只能被一个进程使用。(2)请求与保持条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放。(3)不剥夺条件:
2012-10-07 17:35:16 7738 2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人