自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(85)
  • 资源 (6)
  • 收藏
  • 关注

转载 shell脚本if -a到-z

[ -a FILE ]  如果 FILE 存在则为真。  [ -b FILE ]  如果 FILE 存在且是一个块特殊文件则为真。  [ -c FILE ]  如果 FILE 存在且是一个字特殊文件则为真。  [ -d FILE ]  如果 FILE 存在且是一个目录则为真。  [ -e FILE ]  如果 FILE 存在则为真。  [ -f FILE ]

2018-02-02 09:54:22 331

原创 leetcode twoSum

Given an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would have exactly one solution, and you may not use the sam

2018-01-11 11:15:34 350

原创 Windows下Myeclipse不能卸载的解决方案Failed to load Library jvm

重新安装myeclipse还是卸载myeclipse都会提示Failed to load library jvm。解决办法就是卸载干净之后重新安装。在window是下myeclipse没有直接删除了myeclipse的文件夹,但是在此安装却不能安装的问题,可以使用以下工具:MicrosoftProgram_Install_and_Uninstall.meta.diagcab,可以去百度一下,这

2017-10-27 12:14:25 3861

原创 ubuntu下配置jdk-1.8.0_151和eclipse4.8.0问题的解决

在ubuntu下配置jdk-1.8.0_151遇到的问题;我自己下载的jdk.tar.gz解压在了/etc/local下,并且在/etc/profile下配置的jdk环境没有任何问题,但是在终端使用java -version 却是1.5.0并且javac -version版本是1.6.0和我原来的版本不一样。最终发现版本的问题是因为1、系统有内置的openjdk,可以通

2017-10-26 16:28:26 863

转载 hash

转自:http://blog.csdn.net/zxycode007/article/details/6999984散列表,它是基于快速存取的角度设计的,也是一种典型的“空间换时间”的做法。顾名思义,该数据结构可以理解为一个线性表,但是其中的元素不是紧密排列的,而是可能存在空隙。散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据

2017-10-07 10:29:31 850

原创 mysql配置与可视化配置

mysql下载链接,里面有mysql和navicat mysql可视化工具。云盘地址:https://pan.baidu.com/s/1skF7ci5还有mysql的配置说明http://www.cnblogs.com/sshoub/p/4321640.htmlnavicat的使用http://www.cnblogs.com/neuedu/p/5876874.html

2017-09-21 19:25:11 516

原创 python在设置编码和写csv文件遇到的问题以及解决方案

#coding=utf-8from lxml import etreeimport requestsimport csvimport timeimport sysimport codecsreload(sys)sys.setdefaultencoding('utf8')def WriteCSV(Item): print Item[0],Item[1],Item[2]

2017-09-10 17:49:53 2551 1

原创 图那里的算法总结

//这里整理的为图那里的算法//邻接矩阵和邻接表的图的表示很重要//这里就不说明MAXSIZE就为最大值的默认了typedef struct ArcCell{ VRType adj; //这里是点中的值 InfoType *info; //这里是有关点的信息比如这里可以放

2017-03-13 19:20:24 388

原创 树那里代码总结

//树的非递归三种遍历算法//先序遍历算法void PreOrder(BiTree* bt){ Stack s; init(s) p = bt; while(p&&!IsEmpty(s)) { if(p) //当p不为空的时候一直往左走并且访问 { visit(p->data); push(s,p)

2017-03-13 19:19:27 521

原创 排序算法总结

//几个排序//快排 堆排序 希尔排序 归并排序 插入排序,选择排序 //快速排序//以下所有的排序都是从小到大排序//不稳定 时间复杂度O(nlgn)空间复杂度O(1) 最坏时间复杂度O(n^2)当序列基本或者完全趋于有序void qsort(int a[].int low,int high){ int privot = partition(a,low,high);

2017-03-13 19:16:50 345

原创 linux下添加新用户和用户添加到组

添加用户useradd gd删除用户userdel gd;把gd加入到root组gpasswd -a gd root把gd从root删除gpasswd -d gd root

2016-05-27 11:53:01 1816

转载 ubutun安装程序出错

通过终端安装程序sudo apt-get install xxx时出错: E: Could not get lock /var/lib/dpkg/lock - open (11: Resource temporarily unavailable)E: Unable to lock the administration directory (/var/lib/dpkg/),

2016-05-27 10:44:47 531

转载 select poll epoll的区别

本文转载至:http://www.cnblogs.com/Anker/p/3265058.htmlselect,poll,epoll都是IO多路复用的机制。I/O多路复用就通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作。但select,poll,epoll本质上都是同步I/O,因为他们都需要在读写事件就绪后自己负责进行读写,也

2016-05-23 12:52:02 361

原创 vim配置文件

“——————————————————————- ” VIM 配置 ” ” 最后修改时间:2015-08-22 “——————————————————————-” vundle 配置 set nocompatible filetype off set rtp+=~/.vim/bundle/Vundle.Vim call vundle#begin()Plugin

2016-03-05 15:38:58 597 1

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

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

2016-03-05 15:37:16 354

原创 gdb调试程序

gdb调试程序,其实很方便,也很简单。不过今天才学会一点gdb。g++ file.cpp -g -o file这里需要注意需要加-g编译选项.接下来直入正题,我现在用gdb调试程序。gdb> file filename这个filename是你生成的二进制文件名。gdb>r这里r表示run;然后gdb>b 12表示在12行设置断点。然后gdb>n表示运行下一行

2016-03-05 15:33:11 373

原创 UNP小记

UNIX下的open函数和create函数都只有两个函数。open(pathname,O_WRONLY|O_CREATE,mode);create(pathname,O_WRONLY,mode);close(int filedes);关闭一个文件时也释放该进程加在该文件上的所有记录锁。当一个进程终止时,它所有的打开文件都由内核自动关闭,很多程序都使用这一功能,而不显示的使用cl

2016-02-24 12:04:06 416

原创 linux下编译静态库和使用静态库

在linux下静态库一般表示为xx.a在这里就需要先把你的xx.h文件编译成静态库,比如我这里写了一个文件就是my.hint foo(int x,int y){return x+y;}这里使用的这个函数的目的就是编译静态库;首先在编译静态库之前需要把你的my,h编译成my.o文件这里使用的命令很简单g++ my.h -o my.o然后现在my.h现在就变

2015-12-17 22:20:49 624

原创 Word Pattern

Word PatternGiven a pattern and a string str, find if str follows the same pattern.Here follow means a full match, such that there is a bijection between a letter in pattern and a non-em

2015-11-30 22:34:18 467

原创 STL的copy真是是做的了极致的效率

inline char* unitialized_copy(const char* first, const char* last, char* result){ std::memmove(result, first, last - first); return result + (last - first); } inline wchar_t* unitialized_copy(c

2015-11-30 21:00:46 1314

原创 自己实现的一个list双链表

#ifndef __LIST__#define __LIST__#ifndef __IOSTREAM__#include #endif#ifndef __ALLOCATOR__#include "allocator.h"#endif#ifndef __DEFAULT_ALLOC_TEMPLATE__#include "__default_alloc_templa

2015-11-30 20:50:53 417

原创 自己实现的简单heap max_heap和min_heap 还有sort

#ifndef __HEAP__#define __HEAP__#include "allocator.h"#include "__default_alloc_template.h"#include "Vector.h"templateclass heap{public: typedef typename Vector::iterator iterator;//底层用vector

2015-11-30 20:47:12 603

原创 binary_serach_tree

这个binary_search_tree由于比较简单,就不细细解释了

2015-11-30 20:36:40 334

转载 RBT

前面一篇文章介绍了2-3查找树,可以看到,2-3查找树能保证在插入元素之后能保持树的平衡状态,最坏情况下即所有的子节点都是2-node,树的高度为lgN,从而保证了最坏情况下的时间复杂度。但是2-3树实现起来比较复杂,本文介绍一种简单实现2-3树的数据结构,即红黑树(Red-Black Tree)定义红黑树的主要是像是对2-3查找树进行编码,尤其是对2-3查找树中的3-node

2015-11-23 20:25:22 440

转载 linux 文件操作

Linux系统本身设计类Unix而来,系统由C语言设计实现。同样Linux也支持丰富的底层系统调用库提供给应用程序的文件操作处理。事实上C++语言自身许多类库的方法的封装,内部基本都采用封装系统调用提供统一简洁便利的接口方式。对于Linux系统,针对文件操作除了提供系统方法操作以外,C语言也提供了标准文件操作库,而C++语言由于基于C语言发展而来,因此C++文件编程除了本身提供的标准文件库以外,也

2015-11-22 22:11:44 994

转载 C++ virtual 继承

重复继承 下面我们再来看看,发生重复继承的情况。所谓重复继承,也就是某个基类被间接地重复继承了多次。 下图是一个继承图,我们重载了父类的f()函数。  其类继承的源代码如下所示。其中,每个类都有两个变量,一个是整形(4字节),一个是字符(1字节),而且还有自己的虚函数,自己overwrite父类的虚函数。如子类D中,f()覆盖了超类的函数, f1()和f2() 覆盖

2015-11-22 22:04:34 537

转载 C++ virtual 继承

07年12月,我写了一篇《C++虚函数表解析》的文章,引起了大家的兴趣。有很多朋友对我的文章留了言,有鼓励我的,有批评我的,还有很多问问题的。我在这里一并对大家的留言表示感谢。这也是我为什么再写一篇续言的原因。因为,在上一篇文章中,我用了的示例都是非常简单的,主要是为了说明一些机理上的问题,也是为了图一些表达上方便和简单。不想,这篇文章成为了打开C++对象模型内存布局的一个引子,引发了大家对C++

2015-11-22 22:03:22 1133

转载 C++virtual继承

C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。  关于虚函数的使用方法,我在这

2015-11-22 22:00:48 550

原创 一个位操作的小技巧

如果把一个整形 你想的二进制置1;可以这样 比如这里有个32位int  t;可以这样 t |= 0x00在big endian下则是将它的第一位置1;然后如果是这样t|=0x01的话就将他的第二位置1;这里很简单了 在用字典的时候这个有很大用处

2015-11-05 10:45:15 452

原创 STL memory pool的详细解析下

首先需要把你的需要取得内存块转换成8的倍数这样转换 (m+ 8 - 1)&~(8-1)这样的话就可以转化了,然后直接找打自由链表的节点需要这个函数freelist_index这个函数可以计算你的第几个自由链表;然后直接找到自由链表中的现在可以使用的头结点的地址这里用my_free_list = freelist + index;然后找到之后就开始分配了,看看你的自由联是不是还有可以分配

2015-11-03 21:48:05 821

原创 STL memory pool的详细解析上

其实我感觉SGI STL的memory pool其实比较简单的,我记着大一的时候看的时候感觉挺复杂的,但是现在看不难,而且我对SGI STL的memory pool感觉十分厉害;我分析了一下这个内存池可能有内存碎片估计就这个几个地方;估计是memory pool中最后小于8字节的内存碎片 还有就是在freelist中的小于8字节的内存碎片,很简单freelist可以很大的改善,可以把1

2015-11-03 20:02:05 1613

原创 之前介绍 thread join和detach的区别但是不详细 (详细介绍)

线程状态:在一个线程的生存期内,可以在多种状态之间转换,不同的操作系统可以实现不同的线程模型,定义许多不同的线程状态,每个状态还可以包含多个子状态,但大体来说,如下几种状态是通用的:1)就绪:参与调度,等待被执行,一旦被调度选中,立即开始执行2)运行:占用CPU,正在运行中3)休眠:暂不参与调度,等待特定事件发生4)中止:已经运行完毕,等待回收线程资源

2015-11-03 19:40:52 5096

转载 lock_guard和unique_lock的区别

C++11中有一个区域锁lock_guard,还有第二个区域锁unique_lock。    区域锁lock_guard使用起来比较简单,除了构造函数外没有其他member function,在整个区域都有效。    区域锁unique_guard除了lock_guard的功能外,提供了更多的member_function,相对来说更灵活一些。    unique_guar

2015-11-03 19:39:00 3264

原创 thread的join和detach

thread的join其实就是区分就是会不会和主线程回合;其实也就是能不能释放资源的意思;join这个需要和主线程回合等到主线程快结束的时候然后释放该子线程的资源;detach这是是不需要和主线程回合的这个只要子线程执行完了之后 直接释放子线资源

2015-11-03 19:35:59 536

原创 复制构造和重载()的区别

复制构造是第一次在构造对象的时候就需要直接调用复制构造,比如class A{};A a;a b(a);这里使用的就是复制构造;但是如果是这样就不对了A a;a b;b(a);注意这里就是重载()了。很细微的差别

2015-11-02 19:55:03 438

转载 July的大学生涯

我的大学生涯作者:July,湖南人,2008年入学东华理工。时间:二零一一年七月二十三日。    半个多月前,便已离校了。往往是某些事还未来得及回顾,又将会有新的生活,新的挑战迎面扑来,令你手脚失措。但终究是为了不致忘却,也算是对过去三、四年的回顾与纪念,还是记下点什么吧,免得对以后的生活心生倦意。    三年前,即2008年10月,我是

2015-10-28 21:07:14 1024

原创 shell命令

shell命令之sed命令 我感觉sed最有用的命令是修改字符串的命令;比如 this is first;执行sed "s/is/IS/" 1.txt;这时就变成了thIS IS first;这里会把is改成IS还有这个命令:this is first this is secondthis is three这里使用命令sed "1 c/ 中国" 1.txt现在就

2015-10-17 18:28:14 519

原创 libevent

libevent细解event_base首先需要的是配置event_base,我这里假设读者都熟悉一点libevent,libevent是基于event的,然后event_base就是对注册激活的event处理,或者还可以调用event_dispeach进行处理。建立event_base只需要这个函数就可以 struct event_base * event_base_new(void);

2015-10-15 22:17:44 695

原创 libevent

Libevent Memory Mange#include                                                                  #include                                                                     #include                

2015-10-13 16:57:39 532

原创 Linux下rename批量改变同文件夹的文件后缀名

linux下rename的使用首先说明我的系统是Centos6.5现在我首先说我的rename是perl下的有Linux(0)就说明了是perl语言下的然后先看效果看这里就可以批量的是文件后缀名改变

2015-10-12 20:50:30 2701

数据结构C++版本

数据结构

2017-08-24

rose2003crack

uml安装免费版的插件。

2017-01-14

cpp多线程编程

cpp多线程编程,可以了解多线程的更多漏洞,这里需要仔细学习

2015-11-21

NOSQL数据库入门

NOSQL的简单介绍和使用 NOSQL数据库入门

2015-07-29

More Effective C++

真是一本好书,如果C++有一定的基础之后一定要看的书这本书,里面详细的说明了一些晓得细节,我的博客里面也有读书笔记

2015-06-08

空空如也

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

TA关注的人

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