git submodule以及被忽略的.gitignore

###引言:  不积跬步,无以至千里;不积小流,无以成江海。原本自以为对git相关的东西以及原理已经有了不错的认识和理解,然而当碰到一个小小的problem才发现自己掌握得并没有自己想象的那么好,好记性不如烂笔头,于是决定把自己对.gitignore以及submodule的部分理解简单记录下来,由于个人能力有限,如有不当之处,欢迎指正。   ###git submodule git submodule在项目中虽一直在使用(用于维护自有公共类库),不过对此知之甚少,于是抽空做一个小小的总结。可运行...阅读全文

www.allocmem.com 2017-06-25 23:48 www.allocmem.co 等

[转]Ubuntu如何正确地切换Intel和Nvidia显卡

如需转载,请注明”来自linux大神博客”,并附上原文链接。 本文固定链接 https://www.linuxdashen.com/switch-intel-nvidia-graphics-card-ubuntu 本文转载自:https://www.linuxdashen.com/switch-intel-nvidia-graphics-card-ubuntu 现在的笔记本电脑通常有两块显卡:Intel集成显卡和Nvidia(英伟达)独立显卡。这篇教程介绍Ubuntu如何正确地切换Intel和N...阅读全文

www.allocmem.com 2017-06-02 21:29 www.allocmem.co 等

golang中new和make简析

引言:   目前简单梳理了golang的知识点,进行查漏补缺,这里简要记录下golang中的make和new,由于个人能力有限,如有错误,欢迎指正。    正文: 1. make 分配了一个有初始值(非零)的T类型(我这里打印的为空,个人理解为空值)返回值 当slice cap无法满足需要,则在初始大小cap(即第三个参数,这里为6),成倍增长 2. new 分配了零值填充的T类型的内存空间,并返回其地址(指针) 当slice cap无法满足需要,则以16为基数,成倍增长 测试代码如下: “` ...阅读全文

www.allocmem.com 2017-05-31 23:18 www.allocmem.co 等

[转]iptables详细教程:基础、架构、清空规则、追加规则、应用实例

本文出自 Lesca技术宅,转载时请注明出处及相应链接。 本文永久链接: http://lesca.me/archives/iptables-tutorial-structures-configuratios-examples.html iptables防火墙可以用于创建过滤(filter)与NAT规则。所有Linux发行版都能使用iptables,因此理解如何配置iptables将会帮助你更有效地管理Linux防火墙。如果你是第一次接触iptables,你会觉得它很复杂,但是一旦你理解ipta...阅读全文

www.allocmem.com 2017-04-20 21:49 www.allocmem.co 等

常用排序算法原理简析

前言     本文只作一些概念性说明,后续会整理每种排序算法的具体实现。个人知识和能力有限,搜集整理和理解可能不到位,如有错误,欢迎指正 插入排序原理 跑n-1趟,对于p=1到N-1趟,插入排序保证从位置0到位置p(数组也是从0开始计算)的数据是有序的,从后面每次拿一个数组往前面插,找到有序的位置(如此时51为被插入数,则在34到64之间)。需要使用两次for循环,时间复杂度为O(n^2) 希尔排序原理(缩减增量排序) 简单粗暴 计算效率取决于选择的缩减增量序列,只要序列最后最小的为1,任何增量...阅读全文

www.allocmem.com 2017-03-29 21:06 www.allocmem.co 等

折半查找算法

运行时间中的对数     前一篇文章中分治递归的时间复杂度为O(nlogn);对数最常出现的规律可概括为如下一般规律: 如果一个算法用常数时间O(1)将问题的大小削减为其的一部分(通常是二分之一),那么该算法就是O(logn).另一方面,如果一个算法用常数时间O(1)将问题的大小消减一个常数数量(如将问题减少1等等),那么这种sauna就是O(n)的。 折半查找简单引论问题     求x在数组T[]中的坐标,如果不存在x,则返回-1 方案一 思路:直接穷举,进行遍历,时间复杂度O(n),线性增长...阅读全文

www.allocmem.com 2017-03-29 15:25 www.allocmem.co 等

经典问题-

前言     最近回溯算法,对以往算法和新学习算法进行一个系统的整理和学习,本文的最大子序列和的问题在很多算法书籍和技术文章中对此都有详述,个人简单整理仅为了再次消化和日后查阅,不喜误喷。个人理解,如有错误,欢迎指正。 注:本文中提及的时间复杂度均使用大O法。 问题描述     求-2,4,-1,5,6的最大子序列和 注:如果所有值都为负,则最大子序列和为0 方案一 思路:使用穷举的方式,使用for循环列出所有的子序列进行求和,每次进行对比并把大的数赋值给最大子序列和变量,总共使用三个for循环...阅读全文

最大子序列和的个人简单整理 2017-03-29 13:16 最大子序列和的个人简单整理

算法之时间复杂度简析

算法之时间复杂度简析 前言     最近准备对算法进行一些系统的总结和学习,不积跬步无以至千里,不积小流无以成江海.此文主要对时间复杂度进行简单梳理和个人总结,本人才疏学浅,有所疏漏在所难免,如有不当和错误之处,欢迎指正 时间复杂度的定义(Time Complexity)     时间复杂度,用简单地话描述为:为了大概估算程序运算时间的一种概量。那用什么来估算的呢?用简单的程序执行代码的次数,如int a = 3执行一次,一个n此的for循环表示执行n次等等。广义的T(n)表示在一个完全理想状态...阅读全文

www.allocmem.com 2017-03-27 20:40 www.allocmem.co 等

golang实现简易TCP服务以及TCP和UDP协议对比

引言 ECHO(Echo Protocol,回绕协议,应答协议,如linux中的echo命令),用于查错及测量应答时间(运行在TCP和UDP协议上)本文示例为echo协议,服务器只需把收到的客户端的请求数据发给这个客户端即可,其它什么功能都不做。 tcp/ip是一个协议簇(族),TCP(传输控制协议)和IP(网际协议)是此协议簇的核心。七层OSI模型中,tcp/udp在传输层,而ip在网络层。 OSI七层协议由上到下分别是:应用层(http,https),表示层(简单地说不同计算机通信会话进行表...阅读全文

www.allocmem.com 2017-03-25 23:57 www.allocmem.co 等

简析超文本传输协议(HTTP,HyperText Transfer Protocol)

http 超文本传输协议(HTTP,HyperText Transfer Protocol) http request结构: request line: 请求行 包含请求的方法(如get,post) 请求资源路径(URL,URL总是以/开头,/就表示首页) HTTP协议版本号 request head: 其他重要请求信息 如服务器生成的response给浏览器的cookie,后面的请求携带在request head中(Cookie是由服务器创建的,然后通过response响应发送给客户端的一个键...阅读全文

www.allocmem.com 2017-03-25 00:40 www.allocmem.co 等

go协程goroutine与Java多线程比较

引言: 个人理解的线程,协程和单,多核线程 单核CPU上运行的多线程程序, 同一时间只能一个线程在跑, 系统帮你切换线程而已(cpu时间切片), 系统给每个线程分配时间片来执行, 每个时间片大概10ms左右, 看起来像是同时跑, 但实际上是每个线程跑一点点就换到其它线程继续跑,效率不会有提高的,切换线程反倒会增加开销(线程的上下文切换),宏观的可看着并行,单核里面只是并发,真正执行的一个cpu核心只在同一时刻执行一个线程(不是进程)。 多线程的用处在于,做某个耗时的操作时,需要等待返回结果,这时...阅读全文

www.allocmem.com 2017-03-24 17:13 www.allocmem.co 等

ubuntu 安装本地版storm并运行WordCount

前言: 开始从apache下载的最新版1.0.3,本地安装没有问题,但是当执行example-wordcount的时候报错找不到主类,后来解压jar包发现,1.03里面没有wordcount,有一些其他的类,于是第二次去下载安装了一个早期版本0.9.6,成功执行。 关于1.0.3和0.9.6的配置异同,可参考官方文档地址http://storm.apache.org/releases/1.0.3/Setting-up-a-Storm-cluster.html 和http://storm.apac...阅读全文

www.allocmem.com 2017-03-05 00:17 www.allocmem.co 等

自己写GoBinaryHead 二叉堆binaryheap实现优先队列(堆)

##前言: java GoBinaryHead二叉堆binaryheap实现优先队列(堆) 1. 二叉堆是完全二叉树 因为完全二叉数的规律(root始终最小) 用数组实现此数据结构优于链表 2. ,注意在插入和删除时,需要在数组实现的完全二叉树结构代码中,对原有节点数据进行上滤和下滤,插入时,和子树的根节点比较, 只有比子树根节点大才能满足定义, 否则循环交换位置。堆内元素向下移动为 下滤,删除后空余的位置,从上至下找最小儿子节点填充 3. 在printHeap()方法中对数组的遍历使用了去nu...阅读全文

www.allocmem.com 2017-03-03 18:13 www.allocmem.co 等

自己写GoBinarySearchTree 二叉查找树

前言:   java GoBinarySearchTree的简易实现,代码中注释比较详尽,通俗易懂,注意事项亦在注解中标明。 正文: GoBinarySearchTree.java package com.anteoy.dataStructuresAndAlgorithm.javav2.my; /** * Created by zhoudazhuang on 17-3-2. * Description: AnyType extends Comparable<? super AnyType> * ...阅读全文

www.allocmem.com 2017-03-02 23:26 www.allocmem.co 等

自己写Stack 实现栈结构

前言: 栈的应用: 1. 可计算数学后缀表达式 2. 把正常中缀表达式转换为后缀表达式 3. 计算检测编译程序{}等括号符号是否正确,是否存在语法错误 4. 递归中需要实用栈存储方法信息,计算机中函数调用是通过栈(stack)这种数据结构实现,在递归中调用一层函数,栈就会加一层栈帧,每当函数返回,栈就会减少一层栈帧。 正文: java中使用数组实现栈 package com.anteoy.dataStructuresAndAlgorithm.javav2; import java.util.Ar...阅读全文

www.allocmem.com 2017-03-02 14:42 www.allocmem.co 等

[转]在Java中谈尾递归-

我不是故意在JAVA中谈尾递归的,因为在JAVA中谈尾递归真的是要绕好几个弯,只是我确实只有JAVA学得比较好,虽然确实C是在学校学过还考了90+,真学得没自学的JAVA好 不过也是因为要绕几个弯,所以才会有有意思的东西可写,另外还有我发现把尾递归如果跟JAVA中的GC比对一下,也颇有一些妙处(发现还没有人特地比较过) (不过后来边写边整理思路,写出来又是另一个样子了) 转载请注明:博客园-阁刚广志,地址:http://www.cnblogs.com/bellkosmos/p/5280619.h...阅读全文

尾递归和垃圾回收的比较 2017-03-02 12:39 尾递归和垃圾回收的比较

自己写LinkedList GoLinkedList

##前言:   java GoLinkedList的简易实现,代码中注释比较详尽,通俗易懂,注意事项亦在注解中标明。 ###正文: GoLinkedList.java package com.anteoy.dataStructuresAndAlgorithm.javav2.my; import java.util.Iterator; /** * Created by zhoudazhuang on 17-3-1. * Description: 简易Linkedlist实现 */ public c...阅读全文

www.allocmem.com 2017-03-01 22:24 www.allocmem.co 等

docker使用容器ubuntu安装mongodb

前言:   最近准备使用docker安装一个mongo,可以使用Docker Hub上的镜像,后来就琢磨着自己用dockerfile来构建,后来在使用dockerfile构建过程中,因为TC网络环境,部分资源始终下载不了,后在容器中使用apt-get ppa依旧如此,最后决定使用mongo官网压缩包到容器里面安装,一切顺利。 安装过程: 从docker Hub上拉去ubuntu image docker pull ubuntu:16.04 交互式(-i),进入/bin/bash(-t),目录挂在...阅读全文

www.allocmem.com 2017-02-25 23:23 www.allocmem.co 等

nginx搭配frp进行端口和服务转发

###引言:   java接入三方运营商服务接口,需要可供回调的公网接口,并在本地两台(及以上)调试接口服务,于是使用开源frp进行穿透,nginx搭配负责分发请求到不同机器。 ###安装环境: 1. ubuntu 16.04 LTS 一台服务器 两台客户机 2. 已安装好nginx ###frp配置过程: 参考我之前博文[http://blog.csdn.net/yan_chou/article/details/53406095](http://blog.csdn.net/yan_chou/a...阅读全文

www.allocmem.com 2017-02-20 16:06 www.allocmem.co 等