自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

佛曰不可说

路漫漫其修远兮,吾将上下而求索

  • 博客(197)
  • 资源 (9)
  • 收藏
  • 关注

转载 Windows下gvim配置

Windows下gvim配置原作地:http://hi.baidu.com/leemoncc/blog/item/a6be15cf40d7ab31b600c806.html0.准备软件及插件。(a)gvim72.exe地址ftp://ftp.vim.org/pub/vim/pc/gvim72.exe。(b)vimcdoc-1.7.0-setup.exe地http://prdownloa

2015-11-12 09:52:57 788

转载 C/C++语言中关于const用法的总结

原文:http://blog.csdn.net/liyuefeilong/article/details/48900121一. const的基本功能与用法1.将限定符声明为只读使用方法如下,在类型前/后加上关键字const,该变量必须被初始化,否则编译错误;该变量不能被重新赋值,否则也编译错误。 举例:const int i = 50; // 编译正确cons

2015-11-05 08:11:08 783

原创 欢迎使用CSDN-markdown编辑器

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2015-11-02 17:29:32 594

转载 vim常用插件及安装

首先在建立~/.vim,以后所有的插件都存放在此。在.vim下分别建立doc、syntax、plugin三个文件夹分别存放插件帮助文档、语法文件、插件。        1、ctags        软件功能:用于产生一个tags文件(代码索引文件),tags文件中记录的源文件的索引以帮助你快速得找到某个符号的定义。它支持相当多的语言,如C、C++、C#、Shell等等。后面所有的包括函

2015-10-09 18:29:13 605

原创 DNS劫持与DNS污染

某些网络运营商为了某些目的,对DNS进行了某些操作,导致使用ISP的正常上网设置无法通过域名取得正确的IP地址。       某些国家或地区出于某些目的为了防止某网站被访问,而且其又掌握部分国际DNS根目录服务器或镜像,也会利用此方法进行屏蔽。       常用的手段有:DNS劫持和DNS污染。正常的DNS请求流程为:(1)在浏览器输入http://www.baidu.co

2015-10-08 17:23:18 823

原创 朋友圈问题

/*问题描述:假如已知有n个人和m对好友关系(存于数字r)。如果两个人是直接或间接的好友(好友的好友的好友...),则认为他们属于同一个朋友圈,请写程序求出这n个人里一共有多少个朋友圈。假如:n = 5, m = 3, r = {{1 , 2} , {2 , 3} ,{4 , 5}},表示有5个人,1和2是好友,2和3是好友,4和5是好友,则1、2、3属于一个朋友圈,4、5属于另一个朋友

2015-09-30 18:22:19 2041

原创 内存池C++实现

程序在向系统申请内存时,很容易造成内存碎片,影响程序性能。内存池是一种内存分配策略,程序在之前,先向系统申请一大块内存,并将这一大块内存分割成若干小的内存块,供程序使用。当内存不足时再向系统申请。  1、程序以1024位为界,将内存块block分为两种,一种是普通的block,可以直接向内存池申请,一种是大block,需要向系统申请;  2、MemoryChunk中是一系列大小相等的b

2015-09-27 17:08:13 622

原创 操作系统常见面试问题

1. 进程的有哪几种状态,状态转换图,及导致转换的事件。    当然理论上上述三种状态之间转换分为六种情况;     运行---》就绪:这是有调度引起的,主要是进程占用CPU的时间过长     就绪---》运行:运行的进程的时间片用完,调度就转到就绪队列中选择合适的进程分配CPU     运行---》阻塞:发生了I/O请求或等待某件事的发生     阻塞---》就绪:进程所

2015-09-24 10:26:56 1629

转载 字符串匹配算法

第一篇随笔,开始写博客生涯。写程序这么长时间,突然发现也要总结与积累。原来想第一篇博文是关于以前写的代码研究,发现还需要整理。这样,先发表一篇关于字符串匹配的文章。就这样啦!        字符串匹配主要是关于模式串与主串匹配的问题。关于这个问题,有很多方法。网上也有不少例子,借鉴了不少,以下就介绍下面几种算法。         (1)BF算法(常规算法) 

2015-09-15 15:59:48 860

原创 2016百度的三个编程题

感觉三个题目也不算特别难吧,但还是做的跟翔一样,没有给出标准的接口,其次也没法调试,也不知道对不对就直接提交了.而且转移罪犯的题怎么看都觉得给的算例有问题.最后问一句:有多少人是以为百度所有题都是可以更改的?

2015-09-12 21:32:44 609

原创 百度试题:度度熊

加班了一个通宵的度度熊,神经有点恍惚,想到依然未能解决的Bug,眼泪禁不住霹雳哗啦往下掉……他抬头看了看帝都灰蒙蒙的天空,一咬牙,一跺脚,大叫一声——劳资今天要吃点好的!已知本厂有n个食堂,第i(i属于[1,n])个食堂有m[i]种食物,每种食物有一个价钱c,享受度v,度度熊希望去一个食堂就餐,花费[bot,top]范围内的钱数(也可以拍桌子走人,哪里都不吃了),选择若干种食物,使得自己所能获得的

2015-09-12 16:24:25 1036

原创 01背包问题

容量为V的背包,装N件物品,使所装物品价值最大//01背包问题//朱传林于20150912//状态转移方程:f[i][v]=MAX{f[i-1][v],f[i-1][v-c[i]]+w[i]}#include#includeusing namespace std;const int N=3;const int V=10;//如果要求刚好装满,除了v=0时刚妈装满,

2015-09-12 09:45:19 697

转载 vim配置及插件安装管理(超级详细)

1写在前面 Linux下编程一直被诟病的一点是: 没有一个好用的IDE, 但是听说Linux牛人, 黑客之类的也都不用IDE. 但是对我等从Windows平台转移过来的Coder来说, 一个好用的IDE是何等的重要啊, 估计很多人就是卡在这个门槛上了, "工欲善其事, 必先利其器"嘛, 我想如果有一个很好用的IDE, 那些Linux牛人也会欢迎的. 这都是劳动人民的美好愿望罢了

2015-09-08 11:04:34 738

原创 vs 2008的相关插件

用了多年vs2008了,一直没怎么换过,不过用vs机会也不是很多,今天重装系统,把用的几个插件整理一下。1、MetalScrollSetup:类似于Sublime的侧边栏2、VimEmu:vim的编辑环境3、vs2008_VAX:一系列有用工具链接:点击打开链接

2015-09-07 19:39:37 1448

原创 设计模式之七外观模式

//外观模式:给接口提供一致的外观//当客户需要使用到子系统的多个功能时,客户如果逐个去调用每一个功能会引起较大代码量;//并存在潜在的错误可能性;//如果这些功能都位于不同的类中,客户需要去了解每一个类//解决方法是:为所有类的接口提供一个一致的接口,这一接口提供了所有用户需要的操作;//通俗理解:木兰从军,需要买各种从军用品如马、马鞍、配剑、靴子等,这些东西都不在同一个店里,从而导致

2015-08-26 17:12:34 644

原创 设计模式之六模板方法模式

#includeusing namespace std;//把所有公共操作都提取到基类实现,具体操作由子类完成class AbstractClass{public: virtual ~AbstractClass() { //基类要有虚析构函数 } void templateMethod() { PrimitiveOperation1(); PrimitiveO

2015-08-26 15:55:40 497

原创 设计模式之五工厂方法模式

//simple factory model//与简单工厂模式的区别:简单工厂模式在增加新操作时,需要更改工厂函数,违反了开放与封闭原则//而工厂方法模式支持扩展,在修改时只需要添加新的操作类和工厂类即可,但客户端也需要作相应的修改#includeusing namespace std;//用一个单独的类来做这个创造实例的过程,即工厂class Operation{public:

2015-08-26 11:27:07 527

原创 设计模式之四代理模式

//代理模式,对真实对象的访问通过代理完成#includeusing namespace std;//代理和真实对象的公用接口class Subject{public: virtual void request()=0; virtual void behavior()=0;};//真实对象class RealSubject:public Subject{public:

2015-08-26 09:37:28 575

原创 设计模式之三装饰模式

//decorate model//用于给某些类动态添加功能,虽然添加了一些功能,但人还是人,只不过是装饰后的人#include#includeusing namespace std;class Person{//被装饰对象类public: virtual void show() { cout<<"Person"<<endl; }};class Decorate:

2015-08-26 09:02:48 530

原创 设计模型之二策略模式

//strategy model//策略模式是一种定义一系列算法的方法#includeusing namespace std;//一个抽象的策略类class Strategy{public: virtual void algorithmInterface()=0;};//三种不同策略class StrategyA:public Strategy{ void algori

2015-08-25 21:51:28 809

原创 设计模式之一简单工厂模式

根据用户需求实例化不同对象。//simple factory model#includeusing namespace std;//用一个单独的类来做这个创造实例的过程,即工厂class Operation{public: Operation() { number1=0; number2=0; result=0; } Operation(int one

2015-08-25 20:26:36 742

原创 基数排序C++实现

基数排序介绍基数排序(Radix Sort)是桶排序的扩展,它的基本思想是:将整数按位数切割成不同的数字,然后按每个位数分别比较。 具体做法是:将所有待比较数值统一为同样的数位长度,数位较短的数前面补零。然后,从最低位开始,依次进行一次排序。这样从最低位排序一直到最高位排序完成以后, 数列就变成一个有序序列。基数排序图文说明基数排序图文说明通过基数排序对数组{53, 3, 54

2015-08-24 19:56:38 4093

原创 计数排序C++实现

//counting sort//计数排序基于一个假设,待排序数列的所有数均出现在(0,k)的区间之内,如果k过大则会引起较大的空间复杂度//计数排序并非是一种基于比较的排序方法,它直接统计出键值本应该出现的位置//时间复杂度为O(n),空间复杂度为O(n+k)#include#includeusing namespace std;void countSort(vector&

2015-08-24 17:03:30 1631 1

原创 归并排序C++实现

//merge sort//归并排序是通过将两个有序的数列合并成一个有序的数列的排序过程;//具体流程可以看成一个树形结构,最底层是两个结点合并,往上合并的结点个数越多,所以时间复杂度为O(nlgn);#include#includeusing namespace std;//二路归并,当然也可以多路归并,核心templatevoid merge(vector& vec,

2015-08-24 15:51:21 926

原创 希尔排序C++实现

//shell sort//希尔排序是一种对直接插入排序的改进方法,//使用直接插入排序对于一个基本有序的数列进行排序时,内部循环的次数会明显减少,因此可以减小时间复杂度;//希尔排序就是先使数列基本有序,然后再直接插入排序,减小插入排序的时间复杂度;//希尔排序首先按一定增量进行插入排序,再逐步缩减增量,当这一增量缩减至1时,希尔排序变为直接插入排序;//所以这一增量的选取很关键,且这

2015-08-24 11:27:32 1181

原创 桶排序C++实现

//bucket sort//现在假设我有一堆蛋,包括麻雀蛋、鸡蛋、恐龙蛋,相同类别蛋的大小是一样的,现在我要将这几种蛋排序下序;//有点常识就知道,这三种类别的蛋大小是不一样的,现在我对这三种蛋进行排序,我是这样排的://准备三个桶,把同一类别的蛋放到同一个桶中,然后按顺序从三个桶中取出相应蛋排序;//即,从放有麻雀蛋的桶里取出所有麻雀蛋,依次排好序,大小都一样,随便怎么排了,然后再将鸡

2015-08-24 10:54:28 4042 3

原创 堆排序C++实现

//heap sort//堆排序可以分为两个过程,其一是建堆,其二是出堆//堆是一种完全二叉树,所以它可以用数组进行存储;//堆可分为最大堆和最小堆,最大堆指任一节点的值都大于其左右孩子节点的值,最小堆自不必说;//STL中有一套完整的堆排序算法,其相关函数包括make_heap\push_heap\pop_heap\sort-heap//四个函数都是接受一对迭代器作为参数,其作用分

2015-08-24 09:49:31 1657 1

原创 快速排序算法C++实现

//quick sort//STL中也有现成的快速排序算法,内部实现采用了以下技巧//1)枢轴的选择采取三数取中的方式//2)后半段采取循环的方式实现//3)快速排序与插入排序结合#include#include#includeusing namespace std;//这一版本是最简单实现版本,对于快速排序的优化主要有以下几个方面://1)枢轴的选择,若枢轴选取不全适,比

2015-08-23 23:05:42 978

转载 C语言undefined behaviour未定义行为

C语言中的未定义行为(Undefined Behavior)是指C语言标准未做规定的行为。同时,标准也从没要求编译器判断未定义行为,所以这些行为有编译器自行处理,在不同的编译器可能会产生不同的结果,又或者如果程序调用未定义的行为,可能会成功编译,甚至一开始运行时没有错误,只会在另一个系统上,甚至是在另一个日期运行失败。当一个未定义行为的实例发生时,正如语言标准所说,“什么事情都可能发生”,也许什么

2015-08-22 22:57:08 1920

原创 三种继承方式的区别

对于public和protected成员,三种继承方式仅仅只是改变了在子类中的访问标号。但对于private成员,无论哪种继承方式,在子类中都是不可访问的,但这种成员在子类中仍然占有存储空间。

2015-08-17 08:54:22 2827

转载 写给准备参加秋招的学弟学妹们

一、前言        好久没写blog了,可能工作比较忙的原因吧。工作之后也略显疲惫,有点懒,不是很愿意动笔。不过由于今年秋招的临近,于是决定整理一下自己和其他几个大牛的经验,指导一下自己的学弟学妹们。        首先要说明的是,此次我主要是针对互联网公司的面试来整理的。所以如果你打算以后搞销售,或者立志去某某渣滓公司的话,就大可不必这么辛苦的来按照这个复

2015-08-13 21:21:53 717

原创 hard link与symbolic link区别

Linux下的文件组织方式是每个文件都占用一个inode,inode中存放有文件的权限信息、block信息等,可以理解为索引文件系统,通过inode索引到对应的block,即读取文件。         hard link        hard link其实就是多个文件连接到同一个inode,因此,这两个文件的信息几乎是一模一样的,hard link有以下特点:        1)你将

2015-08-12 20:19:44 962

原创 TR1和Boost

TR1是对C++标准库的一次扩充;Boost是备用标准库;

2015-08-12 15:30:29 1363 1

转载 我的一些简单的shell脚本实例

自己写了一下小的shell实例,虽然很小,但所有的大的程序都是由小的模块堆积起来的,程序员一定要懂得一种脚本的书写,而我,只会在linux下工作,所以就只能写linux的shell脚本了,呵呵,本文会陆续更新,给自己加油!1.模拟linnux登录shell#/bin/bashecho -n "login:" read nameecho -n "password:"read

2015-08-11 20:40:14 506

原创 leetCode(55):Minimum Window Substring(limits.h头文件)

Given a string S and a string T, find the minimum window in S which will contain all the characters in T in complexity O(n).For example,S = "ADOBECODEBANC"T = "ABC"Minimum window is "BAN

2015-08-09 22:01:01 936

原创 八皇后问题

问题描述   八皇后问题是在8*8的棋盘上放置8枚皇后,使得棋盘中每个纵向、横向、左上至右下斜向、右上至左下斜向均只有一枚皇后。求解思路   对于八皇后的求解可采用回溯算法,从上至下依次在每一行放置皇后,进行搜索,若在某一行的任意一列放置皇后均不能满足要求,则不再向下搜索,而进行回溯,回溯至有其他列可放置皇后的一行,再向下搜索,直到搜索至最后一行,找到可行解,输出。一般有两种方法实

2015-08-09 17:06:40 891

转载 lib和dll的区别

共有两种库:一种是LIB包含了函数所在的DLL文件和文件中函数位置的信息(入口),代码由运行时加载在进程空间中的DLL提供,称为动态链接库dynamic link library。一种是LIB包含函数代码本身,在编译时直接将代码加入程序当中,称为静态链接库static link library。共有两种链接方式:动态链接使用动态链接库,允许可执行模块(.dll文件或.exe文件)仅

2015-08-09 10:03:50 476

转载 Linux下源码安装软件

在linux下的很多软件都是通过源码包方式发布的,这样做对于最终用户而言,虽然相对于二进制软件包,配置和编译起来繁琐点,但是它的可移植性却好得多,针对不同的体系结构,软件开发者往往仅需发布同一份源码包,不同的最终用户经过编译就可以正确运行,这也是非常符合c语言的设计哲学的,一次编写,到处编译么,而常见的二进制包,比如rpm和deb,软件开发者必须为每种特定的平台定制好专门的软件包,这个通过rpm文

2015-08-07 16:36:54 584

转载 Linux进程间通信方式--信号,管道,消息队列,信号量,共享内存

1、概述通信方法无法介于内核态与用户态的原因管道(不包括命名管道)局限于父子进程间的通信。消息队列在硬、软中断中无法无阻塞地接收数据。信号量无法介于内核态和用户态使用。内存共享需要信号量辅助,而信号量又无法使用。套接字在硬、软中断中无法无阻

2015-08-07 15:49:58 839 1

原创 leetCode(54):Gas Station

There are N gas stations along a circular route, where the amount of gas at station i is gas[i].You have a car with an unlimited gas tank and it costs cost[i] of gas to travel from station i to

2015-08-06 10:09:39 591

vim常用插件集合

Gvim的常用插件,包括ctags,taglist,minibuffer,winmanager,a

2015-11-12

局域网速查手册/完全精通局域网

局域网速查手册/完全精通局域网 作者:刘鹏 万征

2015-11-04

vim的几个常用插件(winmanage,tallis,ctags...)

vim的几个常用插件(winmanage,tallis,ctags...)

2015-09-08

vs 2008的几个有用插件

vs2008的几个有用插件,包括VimEMu2.5.4,vs2008_VAX,MetalScroll,还有10多个Vs 2008的配色方案,给有需要的朋友们。

2015-09-07

常见排序算法C++实现

包括以下排序算法:冒泡排序、选择排序、插入排序、希尔排序、快速排序、堆排序、归并排序

2015-06-29

string转化成int,double,bool

对string作了一些扩展,包括string转化为int、string转化为double、string转化为bool、打印系统当前时间。但没有解决数据溢出的问题,请大神帮忙解决!

2015-06-12

计算机网络笔试面试题

计算机网络相关知识及易考点,希望给找工作的朋友带来帮助

2015-04-27

二维数组全排列代码C++版

二维数组全排列生成方法,采用递归方法实现,10*24大概用时30min,有待进一步改进

2015-03-10

空空如也

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

TA关注的人

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