自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

蜗牛不会飞

程序员的世界也能精彩......

  • 博客(57)
  • 资源 (1)
  • 收藏
  • 关注

翻译 c++ Constructor FAQ 续

隐式声明的默认构造函数有什么用。。。。。

2014-08-12 10:35:46 680

翻译 C++ Constructors FAQ

默认构造函数是C++中被很多程序员忽略的知识点,此篇文章解释了什么是默认构造函数等易被程序员想当然误解的基础知识。

2014-08-07 14:41:43 734

原创 C++如何实现类似JAVA中加了FINAL关键字的类

JAVA中定义FINAL标明该类为不能继承的类。而在c++中并没有相类似的定义的关键字。如何实现一个不能继承的类呢?  很多人一初始便会想到定义一个构造函数和拷贝构造函数和析构函数为私有属性,便阻止了其它的类对该类的继承啦。代码如下:class A{ private: A(); ~A();};class B:public A{/*............*/}

2014-07-28 22:53:56 1389 2

原创 求旋转有序数组的最小值和在旋转数组中查找

#includeusing namespace std;int find2(int A[],int n){ int high=n-1; int low =0; int mid; while(A[high]<=A[low]) { if(high-low==1) { mid=high; break; }

2014-09-04 22:10:19 777

原创 删除模式串中出现的字符

删除模式串中出现的字符,如“welcome to asted”,模式串为“aeiou”那么得到的是“wlcm t std”。#include#includeusing namespace std;char *re(char *str,char *model){ if(str==NULL||model==NULL) return NULL; i

2014-09-02 10:58:20 893

原创 C++中把函数作为参数并执行

#includeusing namespace std;typedef int(*PFUN)(int a,int b);int add(int a,int b){ return a+b;}int fun(PFUN pfun,int a,int b){ return pfun(a,b);}int main(){ PFUN pfun = add; cout

2014-08-31 19:43:17 854

原创 LeetCode之小孩分糖果

给定一群站好队的小孩并且按某项分值排名(姑且假设为年龄吧),年龄大的要比他身边年龄小的拿的糖要多,求怎么分配糖果使得分配的糖果数最少。用一个数组从左到右再从右到左的遍历,向前遍历时若右边的比左边的大则其值为前一个糖果数+1,向后遍历时则判断如果比后面的小孩的年龄要大且糖果数比其还少则更改其糖果数为后面小孩分的糖果数+1.具体描述代码:#include#includeusing n

2014-08-23 22:54:20 1494

原创 LeetCode之逆波兰式求解

计算逆波兰式子:有效的操作只有 +, -, *, /. 每一个输入不是一个整数就是一个操作符。Some examples: ["2", "1", "+", "3", "*"] -> ((2 + 1) * 3) -> 9 ["4", "13", "5", "/", "+"] -> (4 + (13 / 5)) -> 6#include#include#i

2014-08-23 22:02:16 896

原创 DP求两个字符串的编辑距离

计算字符串的相似度(编辑距离)为了判断字符串的相似程度,定义了一套操作方法来把两个不相同的字符串变得相同,具体的操作方法为: 1.修改一个字符。2.增加一个字符。3.删除一个字符。

2014-08-22 21:57:26 778

原创 STL vector的简单实现

STL中的Vector的简单小实现。

2014-08-22 20:47:37 663

原创 BOOST之noncopyable类

在boost源码中很多类实现noncopyable

2014-08-22 14:47:45 677

原创 简单的计数智能指针实现

templateclass myCountPtr{ public: T *p_re; int *count; public: explicit myCountPtr(T *p=0):p_re(p),count(new int(1)){ } myCountPtr( const myCountPtr& rhs

2014-08-21 21:01:33 485

原创 BOOST之scoped_ptr源码及与auto_ptr的区别

BOOST库里面给出的几种智能指针中最简单也是与auto_ptr最接近的一种指针。

2014-08-21 15:48:54 704

原创 LRU的C++的简单实现

class LRUCache提供两个接口:get(int key)和set(int key,value)#includeusing namespace std;class LRUCache{public:    LRUCache(int cap):current(0),capacity(cap){        A=new node[ca

2014-08-20 22:58:35 1500 1

原创 apue学习:exit()和_exit()与return()的区别

unix下进程有5种正常终止方式:  1、在main函数内执行return。  2

2014-08-17 09:11:34 441

转载 R树

R树在数据库等领域做出的功绩是非常显著的。它很好的解决了在高维空间搜索等问题。举个R树在现实领域中能够解决的例子吧:查找20英里以内所有的餐厅。如果没有R树你会怎么解决?一般情况下我们会把餐厅的坐标(x,y)分为两个字段存放在数据库中,一个字段记录经度,另一个字段记录纬度。这样的话我们就需要遍历所有的餐厅获取其位置信息,然后计算是否满足要求。如果一个地区有100家餐厅的话,我们就要进行100次位置

2014-08-15 10:25:20 595

原创 求公共最长子序列

/* LCS公共最大子序列 dp[i][j]=0;//i=0||j=0时。 dp[i][j]=dp[i-1][j-1]+1;//s[i]==t[j]时 dp[i][j]=max(dp[i-1][j],dp[i][j-1]);//s[i]!=t[j]时 根据这个规律很容易写出代码*/#include#includeusing namespace std;con

2014-08-14 20:30:00 596

原创 关于ICMP的小总结

ICMP分属于网络层,用来报告

2014-08-14 11:04:59 1362

转载 非阻塞IO 和阻塞IO

IO模式设置网络编程常见问题总结—IO模式设置,阻塞与非阻塞的比较,recv参数对性能的影响—O_NONBLOCK(open使用)、IPC_NOWAIT(msgrcv)、MSG_DONTWAIT(recv使用)非阻塞IO 和阻塞IO:       在网络编程中对于一个网络句柄会遇到阻塞IO 和非阻塞IO 的概念, 这里对于这两种socket 先做一下说明:       基本概念

2014-08-14 10:01:08 433

原创 字符串中的字符是否唯一

实现一个算法来判断一个字符串中的字符是否唯一(即没有重复).不能使用额外的数据结构。 (即只使用基本的数据结构)这个是

2014-08-11 21:56:25 481

原创 快速排序的简单实现

快速排序为什么能快呢?  结合分治的车略

2014-08-11 21:35:13 533

原创 从尾到头打印链表

struct ListNode{ int m_key; ListNode *next;};

2014-08-11 21:17:25 506

原创 UDP需要connect函数

UDP很明显是一种可以通过不连接

2014-08-11 21:03:27 1821

原创 c++智能指针auto_ptr的实现

c++由于没有类似Java的垃圾自动回收机制,股

2014-08-07 22:26:52 598

原创 STL学习之LIST

STL源码剖析里面对LIST讲解的很透彻。首先要明白

2014-08-07 20:47:44 475

转载 超经典智力面试题

一、摸豆子问题 5个囚犯,分别按1-5号,在装有100颗绿豆的麻袋里抓绿豆,规定每人至少抓一颗,而抓得最多 和最少的人将被处死,而且,他们之间不能交流,但在抓的时候,可以摸出剩下的豆子数。问他 们中谁的存活几率最大?   提示:   1.他们都是很聪明的人   2.他们的原则是先求保命,再去多杀人   3.100颗不必都分完   4.若有重复的情况,则也算最大或最小

2014-08-07 17:03:16 476

转载 select、poll、epoll之间的区别总结[整理]

select,poll,epoll都是IO多路复用的机制。I/O多路复用就通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作。但select,poll,epoll本质上都是同步I/O,因为他们都需要在读写事件就绪后自己负责进行读写,也就是说这个读写过程是阻塞的,而异步I/O则无需自己负责进行读写,异步I/O的实现会负责把数据从内核拷贝到用

2014-08-05 21:20:22 630

转载 腾讯后台开发面试题及答案

linux下管理内存,因为内存的大小实在有限

2014-08-05 16:44:29 5626

转载 面试经验

linux和os:netstat tcpdump ipcs ipcrm (如果这四个命令没听说过或者不能熟练使用,基本上可以回家,通过的概率较小,这四个命令的熟练掌握程度基本上能体现面试者实际开发和调试程序的经验)cpu 内存 硬盘 等等与系统性能调试相关的命令必须熟练掌握,设置修改权限 tcp网络状态查看 各进程状态 抓包相关等相关命令 必须熟练掌握awk sed需掌握共享内存的使用实现

2014-08-05 16:01:54 8031 4

转载 inux c语言连接mysql

准备工作 安装好mysql 重点是devel包夜要安装 也就是mysql的c库文件#include  #include  #include  int main(void) { MYSQL *con; MYSQL_RES *res; MYSQL_ROW row; con = mysql_init(NULL);//初始化 if (!mysql_r

2014-08-05 11:03:59 492

转载 MySQL 学习笔记 一

一、数据库简单介绍1、 按照数据库的发展时间顺序,主要出现了以下类型数据库系统:Ø 网状型数据库Ø 层次型数据库Ø 关系型数据库Ø 面向对象数据库上面4中数据库系统中,关系型数据库使用最为广泛。面向对象数据库则是由面向对象语言催生的新型数据库,目前的一些数据库系统,如:SQL Server 2005、Oracle10g等都开始增加面向对象的特性。

2014-08-05 10:57:40 496

转载 Linux netstat命令详解

简介Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。输出信息含义执行netstat后,其输出结果为Active Internet connections (w/o servers)Proto Re

2014-08-05 09:03:26 356

原创 全排列的递归实现

全排列问题,假设让你打印出1234的全排列。考虑这个问题,观察

2014-08-04 21:36:29 650

原创 堆排序的非递归算法

/*by leowang 堆排序的非递归算法*/#include using namespace std;/* run this program using the console pauser or add your own getch, system("pause") or input loop */int parent(int i){//此处数组从1开始

2014-08-04 21:14:22 638

转载 C++中构造函数中调用虚函数的问题

C++中构造函数中调用虚函数的问题在构造函数中调用虚成员函数,虽然这是个不很常用的技术,但研究一下可以加深对虚函数机制及对象构造过程的理解。这个问题也和一般直观上的认识有所差异。先看看下面的两个类定义。struct C180{ C180() {  foo();  this->foo(); } virtual f

2014-08-04 19:45:57 831

转载 深度探索c++对象模型 小结【转】

Chapter 2 构造函数语义学习小结1、 C++编译器何时会为C++中的类生成缺省的构造函数(Default constructor)?如果程序员没有定义构造函数,编译器会在下面四种情况为类生成缺省的构造函数:?        类中聚合的元素有构造函数(可以是程序员自定义的或者编译器生成的);?        类的基类有构造函数(可以是程序员自定义的或者编译

2014-08-04 10:22:50 675

原创 C++中的RTTI与dynamic_cast<> static_cast<>

C++中多态的存在导致一个类型的真实类型

2014-08-03 20:49:56 525

转载 转:教你轻松理解复杂的C/C++声明

介绍曾经碰到过让你迷惑不解、类似于int * (* (*fp1) (int) ) [10];这样的变量声明吗?本文将由易到难,一步一步教会你如何理解这种复杂的C/C++声明:我们将从每天都能碰到的较简单的声明入手,然后逐步加入const修饰符和typedef,还有函数指针,最后介绍一个能够让你准确地理解任何C/C++声明的“右左法则”。需要强调一下的是,复杂的C/C++声明并不是好的编程风

2014-07-31 11:25:18 766

原创 HTTP状态码

状态码含义100客户端应当继续发送请求。这个临时响应是用来通知客户端它的部分请求已经被服务器接收,且仍未被拒绝。客户端应当继续发送请求的剩余部分,或者如果请求已经完成,忽略这个响应。服务器必须在请求完成后向客户端发送一个最终响应。101服务器已经理解了客户端的请求,并将通过Upgrade 消息头通知客户端采用不同的协议来完成这个请求。在发送完

2014-07-29 17:01:21 313

转载 HTTP协议简介和多线程断点续传(转)

HTTP协议是一种超文本传输协议(Hypertext Transfer Protocol),工作于网络应用层,自1990年起广泛应用于WWW 的全球信息服务,HTTP协议的详细说明可以在网上查阅RFC2518、RFC2616等文档。   HTTP 协议老的标准是HTTP/1.0,目前最通用的标准是HTTP/1.1。HTTP/1.1是在HTTP/1.0基础上的升级,增加了一些功能,全面兼容

2014-07-29 16:49:21 706

短码之美PDF

本书介绍了短码编程的三要素,更是通过讲解几道POJ的题目来切身实现

2014-06-09

空空如也

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

TA关注的人

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