- 博客(64)
- 资源 (16)
- 收藏
- 关注
原创 CSS Float nine rules
CSS Float nine rulesw3 css float nine rulesCSS Float Rule1CSS Float Rule2CSS Float Rule3CSS Float Rule4CSS Float Rule5CSS Float Rule6CSS Float Rule7CSS Float Rule8CSS Float Rule9finally参考文章
2016-07-10 19:46:39
5836
1
原创 RabbitMQ 基础教程(2) - Work Queue
RabbitMQ 基础教程(2) - Work Queue 注:本文是对众多博客的学习和总结,可能存在理解错误。请带着怀疑的眼光,同时如果有错误希望能指出。 如果你喜欢我的文章,可以关注我的私人博客:http://blog-qeesung.rhcloud.com/在上一篇文章 RabbitMQ 基础教程(1) - Hello World 中,我们已经简单的介绍了RabbitMQ以及如
2016-06-04 23:55:31
14694
原创 RabbitMQ 基础教程(1) - Hello World
RabbitMQ 基础教程(1) - Hello World 注:本文是对众多博客的学习和总结,可能存在理解错误。请带着怀疑的眼光,同时如果有错误希望能指出。 如果你喜欢我的文章,可以关注我的私人博客:http://blog-qeesung.rhcloud.com/RabbitMQ是一个message broker,消息的生产者(producer)负责生产消息,然后将消息传入传入qu
2016-05-29 14:12:29
11439
原创 nodejs 异步I/O和事件驱动
nodejs 异步IO和事件驱动几个例子example 1example 2example 3example 4example 5异步IOasynchronous IO阻塞IO 和 非阻塞IO同步IO 和 异步IO事件驱动线程驱动和事件驱动nodejs的事件驱动和异步IO事件驱动模型异步IO问题答案nodejs 异步I/O和事件驱动 注:本文是对众多博客的学习和总
2016-05-22 09:51:13
9655
原创 nodejs q模块
nodejs module qq模块promiseq模块的安装promise的使用then 函数流式操作组合操作Promise的创建Using QfcallUsing DeferredsUsing QPromise实际例子测试服务器并行请求串行请求延时操作接触nodejs时间不长,如果有所纰漏,请大家批评指正nodejs module q众所周知,nodejs是
2016-05-15 22:10:37
16494
1
原创 继续征程
继续征程看了看自己最后一次写的博客,已经是去年七月份了,算了一算,从自己毕业(工作)以后就再也没有写过博客了,虽然零零散散的学了一些技术,知识虽然学了,但是缺乏自己的理解,会用,却做不到触类旁通。彷徨了好一阵,决定继续写博客,总结自己在工作中的一些心得体会。工作虽忙,但也还是要保证一周一篇高质量博文。新的领域毕业以后的工作内容和之前学校学的东西有很大的不同,在学校的时候主要是底层方面的东西,什么单片
2016-04-17 20:59:44
1866
1
原创 散列表之完美散列
散列表之完美散列完美散列perfect hashing两级散列法gperf工具来自动生成完美散列函数gperf的安装gperf关键字文件的书写格式gperf应用举例注意本文中的所有代码你都可以在这里:https://github.com/qeesung/algorithm/tree/master/chapter11/11-5/gperf(这里会及时更新)或者是这里:http://dow
2015-07-27 11:56:54
5738
原创 Vim技巧之四大模式_可视模式
Vim技巧之四大模式_可视模式什么是可视模式如何选中一块区域如何快速选中目标区域如何重复选择目标区域如何在选中中切换选择模式如何对选中的区域进行操作可视命令的重复最好使用操作符命令而不是可视命令Vim技巧之四大模式_可视模式在前面的两篇文章《Vim技巧之四大模式_插入模式》和《 Vim技巧之四大模式_普通模式》我们已经介绍了插入模式和普通模式里面的技巧,下面我们将继续介绍四大模式之一
2015-07-20 00:15:02
16044
3
原创 Python学习笔记_数字
Python学习笔记_数字整形布尔型标准整形长整形双精度浮点型复数复数的内建特性操作符混合模式操作符标准类型的操作符算数操作符除法位操作符只适用于整形内建函数与工厂函数标准类型函数数字类型函数其他数字类型布尔数十进制浮点数随机数Python学习笔记_数字整形布尔型布尔型的取值范围只有两个值,True和False标准整形Python的标准整形就好比是32位的i
2015-07-20 00:00:53
1059
原创 散列表之开放定址法
散列表之开放定址法散列表的基本操作插入操作_INSERT查找操作_SEARCH删除操作_DELETE散列表的探查方法probe methods散列表探查的定义线性探查二次探查双重散列总结注意: 本文中所有的代码你可以在这里:https://github.com/qeesung/algorithm/tree/master/chapter11/11-4/openAddressing
2015-07-12 00:13:46
11497
原创 Vim技巧之四大模式_插入模式
Vim技巧之四大模式_插入模式在插入模式中及时更正错误插入-普通模式在插入模式模式下面直接粘贴指定寄存器的内容插入模式中做运算用字符编码插入非常用字符替换已有的文本Vim技巧之四大模式_插入模式在前面的文章《Vim技巧之四大模式_普通模式》中我们提到过四大模式之一的普通模式,今天我们继续讲讲Vim四大模式里面的插入模式普通模式好比是发动一个技能,而插入模式则好比是一般的物理攻击,但是就算
2015-07-08 00:16:45
20217
原创 Python学习笔记_Python对象
Python学习笔记_Python对象Python对象标准类型其他内建类型类型对象和type类型对象Python的Null对象None标准类型操作符对象值的比较对象身份比较布尔类型标准类型的内建函数typeObjcmpobj1 obj2strobj reprobjtypeobj isinstanceobj标准类型的分类存储模型更新模型访问模型不支持的类型P
2015-07-06 20:45:36
1184
原创 Vim技巧之四大模式_普通模式
Vim技巧之四大模式_普通模式一见不钟情的普通模式普通模式下面的强悍操作什么是操作符什么是动作命令误操作怎么办那种操作更划算普通模式下的神秘大招Vim技巧之四大模式_普通模式众所周知,vim里面最具特色的东西就是它可以切换模式,那什么是模式呢?可以简单的理解为在不同的模式下面按相同的键而得到不同的效果。比如Vim在插入模式下面连按两次d,那么就会在光标位置插入两个字母d,如果在普通模式
2015-07-06 00:27:39
6028
3
原创 回头一望,继续向前
懵懂的大一瞎折腾的大二找到方向的大三将要离别的大四总结大学四年的就这样结束了,没想到就这么快的结束了,不舍住了四年的舍友,不舍三舍结盟的829,830,831的小伙伴们,不舍在球场上挥洒汗水的三班足球队,但还是走了,此去经年,不知相见又是何时,想见时只希望还能把酒言欢当初报志愿时,还以为自动化是造机器人神马的,听听就感觉高大山,就算不是造机器人,造个火箭坦克神马的也应该不在话下吧,于是就抱着
2015-07-04 22:06:59
1202
5
原创 Python学习笔记_Python基础
Python 基础语句和语法注释继续代码组代码的缩进在一行书写多个语句 模块变量赋值赋值操作符增量赋值多重赋值多元赋值python编写的基本风格模块的结构和布局内存管理变量定义引用计数增加引用计数减少引用计数del语句Python 基础语句和语法注释python中用#号进行注释继续如果一个语句需要跨行,那么需要用\来连接两个跨行的语句if name == '
2015-06-26 18:30:27
1167
原创 散列表之散列函数
散列表之散列函数什么是好的散列函数将关键字转化为自然数散列函数的三种设计方法除法散列法乘法散列法全域散列法散列表之散列函数我们在之前的文章《散列表之链接法》中已经提到过,散列函数是散列表的一个难点,一个好的散列可以很大程度上提升散列表的查找和删除操作的速度,而一个设计差劲的散列表的,查找和删除操作的运行时间将和链式链表一样,将达到O(n)O(n)。所以设计一个表现良好的散列函数尤为重要!
2015-06-26 13:38:20
4215
1
原创 Vim技巧之重复
Vim技巧之重复Vim重复的类型文本改变重复行内查找重复全文查找重复文本重复替换宏录制重复Vim技巧之重复当我们用vim编辑文本的时候,不免会进行一些重复的操作,当我们想要重复上次的操作,难道还要重复一遍相同的操作么?这样不免会浪费时间。于是vim就将你上次进行的一些操作记录在vim的寄存器里,当你想要重复上次进行的操作的时候,直接点击快捷键就可以了。Vim重复的类型vim中有五种基本的
2015-06-14 23:41:38
21197
2
原创 散列表之链接法
散列表之链接法散列表的定义散列表的基本操作散列表的编码实现散列表的设计主测试文件编译运行结论注意: 本文中的所有代码你可以在这里 https://github.com/qeesung/algorithm/tree/master/chapter11/11-2/hashTable(这里会及时更新) 或者这里 http://download.csdn.net/detail/ii124
2015-06-14 12:38:37
3863
原创 散列表之直接寻址表
散列表之直接寻址表直接寻址表的定义直接寻址表的操作直接寻址表的代码实现dataNode的定义直接寻址表的定义测试文件编译运行总结注意: 本文中的所有代码你可以在这里: https://github.com/qeesung/algorithm/tree/master/chapter11/11-1/directAddr(这里的会及时更新) 或者这里: http://downloa
2015-06-13 13:10:34
4874
1
原创 链表_LINKLIST
链表_LINKLIST链表的结构链表节点_LinkNode链表节点连接链表的基本操作节点的插入_INSERTNODE节点的删除_REMOVENODE访问链表元素_VISITNODE链表基本操作接口_INTERFACE链表的编码实现链表总结本文中的所有代码都可以在这里: https://github.com/qeesung/algorithm/tree/master/chapt
2015-06-05 20:44:50
2951
原创 队列_QUEUE
队列_QUEUE队列的基本操作队列的代码实现本文中的所有代码你可以在这里:https://github.com/qeesung/algorithm/tree/master/chapter10/10-1/队列或者是这里:http://download.csdn.net/detail/ii1245712564/8753843找到!队列_QUEUE队列_QUEUE是一种特殊的线性表,特殊之处在于它只允
2015-05-30 15:34:52
1291
转载 vim map映射
MAP*map.txt* For Vim version 7.4. 最后更新: 2013年8月 VIM 参考手册 作者: Bram Moolenaar 译者: con http://vimcdoc.
2015-05-29 19:51:24
3489
原创 栈_STACK的实现
栈_STACK栈的基本操作栈的代码实现栈的C语言实现栈的C实现结论本文中的完整代码你可以在这里: https://github.com/qeesung/algorithm/tree/master/chapter10/10-1/栈或者这里:顺序栈的实现:http://download.csdn.net/detail/ii1245712564/8744663 链式栈的实现:http://
2015-05-29 11:58:22
1695
原创 选择算法总结
选择算法选择算法之选取最大数或最小数选取最大数或最小数代码实现选择算法之选取最大数和最小数选取最大数和最小数代码实现选取最大数和最小数代码优化快速选择算法快速选择算法分析快速选择算法编码实现快速选择算法代码优化BFPRT选择算法BFPRT选择算法主元选择BFPRT选择算法性能分析BFPRT选择算法代码实现注:本文中的所有代码都在这里选择算法选择算法就是用来解决在一堆数里面选
2015-05-24 15:13:33
10019
原创 桶排序_BUCKETSORT
桶排序_BUCKETSORT桶排序的思想桶排序的代码编写总结桶排序_BUCKETSORT假设你有五百万份试卷,每份试卷的满分都是100分,如果要你对这些试卷按照分数进行排序,天噜啦,五百万份试卷啊,快速排序?堆排序?归并排序?面对这么多的数据,平均下来上面的每一种一种算法至少都要花费nlogn=5000000log5000000=111267433nlogn=5000000log5000000
2015-05-20 13:18:36
4415
原创 基数排序_RADIXSORT
基数排序_RADIXSORT基数排序的思想基数排序算法实现基于计数排序的基数排序基于最优桶排序的基数排序基数排序_RADIXSORT基数排序是一种基于计数排序_COUNTINGSORT或者是最优桶排序(当然也可以基于其他排序算法,只不过计数排序对于基数排序来说应该是最快的了,因为二者的拼音都是jishupaixu,哈哈)的一种可以在线性时间O(n)O(n)完成的排序算法。博主在做基数排序的
2015-05-19 17:36:21
1454
原创 zsh安装和配置
zsh安装和配置Zsh是一个Linux用户很少使用的power-shell,这是由于大多数Linux产品安装,以及默认使用bash shell。几乎每一款Linux产品都包含有zsh,通常可以用apt-get、urpmi或yum进行安装。zsh是兼容bash的,但是又比bash好用,有什么理由不用zsh呢?zsh的安装在终端中输入下面命令进行安装 sudo apt-get install zsh
2015-05-19 13:32:14
30668
原创 linux查缺补漏之磁盘参数修订
linux磁盘参数修订 档案代表装置 在linux下面我们都知道可以用相应的档案代表一个装置,比如 /dev/sdb1代表sdb硬盘的第一个分隔槽,该装置通过major和minor来标示对应代替的装置 brw-rw—- 1 root disk 8, 0 5月 12 20:16 /dev/sda brw-rw—- 1 root disk 8, 1 5月 12 19
2015-05-16 22:02:17
818
原创 计数排序_COUNTINGSORT
计数排序_COUNTINGSORT我们之前讲过四种基本的排序方法:《快速排序_QUICKSORT》:http://blog.csdn.net/ii1245712564/article/details/45749061 《堆排序_HEAPOSRT》http://blog.csdn.net/ii1245712564/article/details/45534625 《归并排序_MERGESORT》:
2015-05-16 15:16:31
991
原创 快速排序_QUICKSORT
快速排序快速排序的基本思想快速排序的代码实现快速排序的性能分析快速排序快速排序是一个最坏情况时间复杂度为Θ(n2)\Theta(n^2),最好情况下时间复杂度为O(nlogn)O(nlogn)的排序算法。虽然在最坏情况下的时间复杂为n2n^2,但是快速排序的平均性能非常好,只有Θ(nlogn)\Theta(nlogn),而且我们也可以主动避免快速排序的最差的情况,所以快速排序在排序作业中还是
2015-05-15 20:09:06
1978
原创 linux查缺补漏之磁盘和文件系统
linux磁盘与文件系统 格式化 因为每一种文件系统设置所设定的文件属性/权限并不相同,为了存放这些数据,就需要将分隔槽格式化,比如在linux上面文件系统里面就有inode, block, superBlock,这些就是为文件系统而存在的,所以在格式化的时候,就需要在磁盘里面加上标签,标号神马的! 文件系统 在没有LVM和磁盘阵列技术之前,一个分隔槽就代表了一个文件系统,
2015-05-12 20:57:37
1135
原创 C++解析JSON(jsonCpp)
C++解析JSON(jsonCpp)JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript,
2015-05-11 23:33:54
3819
原创 贪心算法之赫夫曼编码
贪心算法之赫夫曼编码编码基本介绍等长编码变长编码前缀码赫夫曼编码的构造贪心选择是安全的最优子结构编码实现编码树节点TreeNode优先队列的实现赫夫曼编码的构建maincc和Makefile编译运行贪心算法之赫夫曼编码赫夫曼编码(Huffman coding)是一种编码方式,赫夫曼编码是变长编码的一种。可以有效的压缩数据,一般可以节约20%~90%的空间,这一般是由文件的数
2015-05-11 15:35:36
2935
原创 优先队列
优先队列我们在之前讲过的《堆的基础知识》和《堆排序》之后,我们来讲讲最大堆和最小堆的具体应用优先队列!优先队列基础知识我们来看看这样的场景,给定你一组数据,要你在这组数据里面找到最大的那个数据,你要怎么做?你可能会说直接遍历一次就行啦,运行时间也就O(n)O(n),但是如果要求你在这堆数据里面找到最大的,然后删除,再在剩下的元素里面找到最大的,那还是要遍历一般所有数据。那有没有其他快速的方法呢?
2015-05-07 20:31:50
4552
原创 堆排序
堆排序堆的基础知识我们已经在《堆的基础知识》:http://blog.csdn.net/ii1245712564/article/details/45505799里面介绍过了,这次我们将介绍堆的用途之一:堆排序在诸多的排序算法里面里面,堆排序算是比较快速的了,排序时间消耗为:O(nlogn)O(nlogn),虽然相对于快速排序来说慢了一点点,但是就对于堆的特有性质而言(最大堆堆顶元素为最大元素,最小
2015-05-06 13:12:28
1707
原创 堆的基础知识
堆堆的基本性质堆也可以说是一个完全二叉树,就是除了最底层的,其它层是满的,既然我们可以用完全二叉树来表示一个堆,那么我们这里就采用数组结构的二叉树来阐述堆的性质。 假设在这里我们用数组A表示堆,A[i]表示堆里面的第i个元素,于是我们通过二叉树的性质可知: - PARENT(i) = i/2 - LEFTCHILD(i) = 2*i - RIGHTCHILD(i) = 2*i+1就如下图表现
2015-05-05 18:01:32
3119
原创 sublime下编辑LaTeX
sublime下编辑LaTeXLaTeX(LATEX,音译“拉泰赫”)是一种基于ΤΕΧ的排版系统,由美国计算机学家莱斯利·兰伯特(Leslie Lamport)在20世纪80年代初期开发,利用这种格式,即使使用者没有排版和程序设计的知识也可以充分发挥由TeX所提供的强大功能,能在几天,甚至几小时内生成很多具有书籍质量的印刷品。对于生成复杂表格和数学公式,这一点表现得尤为突出。因此它非常适用于生成高印
2015-05-05 13:19:56
2920
1
原创 活动选择问题(贪心算法vs动态规划)
活动选择问题贪心算法vs动态规划基础知识1-1动态规划1-2贪心算法1-3贪心算法vs动态规划活动选择问题描述活动选择问题最优子结构活动选择问题算法设计4-1贪心算法之选择最早结束活动4-1-1递归贪心算法4-1-2迭代的方式进行4-2贪心算法之选择最短时长活动4-3动态规划方法实现4-3-1自上而下的实现4-3-2自下而上的实现结论活动选择问题(贪心算法vs动态规划)1.基
2015-05-01 16:25:46
20683
7
原创 0-1背包问题与分数背包问题
0-1背包问题与分数背包问题问题描述问题分析之分数背包代码设计之分数背包问题问题分析之0-1背包问题代码设计之0-1背包问题动态规划算法之间的差别0-1背包问题与分数背包问题我们在文章《贪心算法原理》:http://blog.csdn.net/ii1245712564/article/details/45369491中提到过动态规划和贪心算法的区别。以及两个经典的例子:0-1背包问题和
2015-04-30 16:50:15
11183
原创 贪心算法原理
贪心算法原理贪心算法就是做出一系列选择来使原问题达到最优解。在每一个决策点,都是做出当前看来的最优选择,比如在活动选择问题里面,我们总是在一个问题的基础上选择结束时间最早的活动,之后再在剩下活动的基础上选出结束时间最早的活动,以此类推,直到没有活动可以进行选择。但是遗憾的是这种算法并不是总能得到最优解,并且是否能得到最优解还取决于对于贪心策略的选择。一般来说,设计贪心算法涉及到下面几个步骤: 1
2015-04-29 17:31:47
9250
链表_LINKLIST
2015-06-05
顺序队列的实现
2015-05-30
选择算法实现代码
2015-05-24
桶排序_BUCKETSORT
2015-05-20
zsh与oh-my-zsh终极配置文件
2015-05-18
赫夫曼编码
2015-05-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人