自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 图片url

2019-02-01 14:18:06 267 0

原创 5、edrawmax 安装

sudo spctl –master-disable

2018-05-14 15:26:27 781 0

转载 3、MacBook 跳到行尾、行首、Home和end快捷键

Ctrl+A:到行首(达到Home键的效果) Ctrl+E:到行尾(达到End键的效果) Ctrl+N:到下一行 Ctrl+P:到上一行 Ctrl+K:从光标处开始删除,直到行尾 fn键+左方向键是HOME fn键+右方向键是END fn+上方向键是page up fn+下方...

2018-05-09 12:53:34 43748 0

转载 2、Mac系统如何显示隐藏文件?

Command+Shift+. 可以显示隐藏文件、文件夹,再按一次,恢复隐藏;

2018-05-09 11:44:30 157 0

转载 6、spring component-scan扫描 context:exclude-filter 与 context:include-filter

1 在主容器中(applicationContext.xml),将Controller的注解打消掉 <context:component-scan base-package="exampleBean"> <co...

2018-05-09 11:40:19 1298 0

转载 2、JDWP 协议及实现

JPDA(Java Platform Debugger Architecture) 是 Java 平台调试体系结构的缩写,通过 JPDA 提供的 API,开发人员可以方便灵活的搭建 Java 调试应用程序。JPDA 主要由三个部分组成:Java 虚拟机工具接口(JVMTI),Java 调试线...

2018-05-09 10:01:17 335 0

转载 4、linux内核架构设计

linux内核架构 Linux内核只是Linux操作系统一部分。它管理系统的所有硬件设备;提供系统调用接口。 Linux内核的了5个子系统,分别负责如下的功能: Process Scheduler,也称作进程管理、进程调度。负责管理CPU资源,以便让各个进程可以以尽量公平的方式访问...

2018-04-27 14:51:56 320 0

原创 25、etcd(1/5)

etcd 是 CoreOS 团队发起的一个管理配置信息和服务发现(service discovery)的项目。 github.com/coreos/etcd 受到 Apache ZooKeeper 项目和 doozer 项目的启发,etcd 在设计的时候重点考虑了下面四个要素: 简单...

2018-04-21 21:36:21 58 0

原创 3、java读写锁的实现

问:1、AQS是什么? 2、CAS是什么? AQS:AbstractQueuedSynchronizer CAS :CompareAndSwap 重入锁和读写锁基于AQS和CAS实现。 AQS依赖同步队列(一个FIFO双向队列)来完成同步状态的管理。当前线程获取同步状态失败...

2018-04-20 10:56:27 416 0

原创 24、 Kubernetes(一)单机启动及概念描述

1、在kubernetes里,一个pod能和其他机器上的pod进行通信,因为kubernetes采用了二级虚拟网络。 2、如果pod里面的业务容器down了,kubernetes会重启这个pod 3、如果node宕了,kubernetes会将node上的所有pod转移到其他node上 k...

2018-04-19 22:05:38 176 0

转载 15、2016校招腾讯研发岗笔试题(第二题)用Java实现

有下图的题解,请用 C/C++ 代码来列出满足下图 0-100 内的所有答案。 分析: a1+a2-9=4 (1) a4-a5*a6=4 (2) a7+a8-a9=4 (3) a1+a4/a7=4 (4) a2-a5*a8=4 ...

2018-04-17 10:57:08 184 0

转载 14、约瑟夫环

已知n个人围坐在一张圆桌周围,从编号为1的人开始报数,数到m的那个人出列。下一个人从1开始报数,数到m的人继续出列,以此类推直至全部人出列。求出列顺序? 解决方案: 1、最简单明了的办法就是用循环链表存储这n个人。数到m的人出列,只需将该结点从链表里剔除即可,然后继续往后报数,直到链表只剩下一...

2018-04-17 10:33:37 84 1

转载 13、大整数操作

long型数据最大能对21亿以内的数字操作,可是如果两个100亿的数字相加,或者相乘呢?long型肯定不能满足需求。如果是用在天文学的计算,数字更可能达到几十位,甚至是几百位的数字。这已经不可能再使用系统定义的数据类型了,那该怎么解决? 主要思想: 不管是大整数相加,还是大整数相乘,都可以把一...

2018-04-17 10:25:21 105 0

转载 12、计算机如何实现开根号?

如何求一个数字的算术平方根(又叫开根号,或者开方)? 大家普遍都是用计算器直接计算的,对于程序员来说,就是调用sqrt()方法。但是其内部又是怎么实现的呢? 方法一:迭代法 学过计算方法的应该都还有印象:一个函数 f(x) 在区间 [a,b] 上连续,且 f(x)=0 在 x∈[a,b] ...

2018-04-17 10:16:44 2115 0

原创 11、八皇后问题求解

在一个8*8的棋盘上放8个皇后,使得这8个皇后无法互相攻击( 任意2个皇后不能处于同一行,同一列或是对角线上),输出所有可能的摆放情况。 高斯认为有76种方案。1854年在柏林的象棋杂志上不同的作者发表了40种不同的解,后来有人用图论的方法解出92种结果。现代教学中,把八皇后问题当成一个经典递归...

2018-04-17 10:04:15 142 0

原创 10、连续子数组最大和

给定一个数组,求连续的几个子元素构成最大和的子集合: public class findMaxSum { public int FindGreatestSumOfSubArray(int[] array) { if(array == null || (array....

2018-04-17 00:55:11 59 0

原创 9、区间重合判断

区间重合判断 给你一个target线段,判断它是否被已给出的一些线段所包含。 先排序,再将目标区间合并为一个或多个更大的区间,最后判断这些大区间是否可以覆盖源区间。 排序使用快速排序,排序后进行合并,例如比较y0和x1的大小可以判断两个相邻的目标区间是否有交集,如果有交集合并为一个...

2018-04-17 00:34:47 167 0

原创 8、数组循环移位问题

把一个数组中的元素循环右移k位,时间复杂度严格为O(n),不能是O(kn). 利用三次对调,每次对调时间复杂度为 n/2 ,sum(n/2) 刚好为N public class Displacement { public static void removerightk(in...

2018-04-17 00:10:34 593 0

原创 7、数组分割

有一个没有排序,元素个数为2N的正整数数组。要求把它分割为元素个数为N的两个数组,使得2个数组之和最小。 利用背包思想,包大为 sum(array)/2,然后向包中装物品,使 其中大(不过不确定这种方法的正确性,因为此时规定 装入的东西不得大于 sum/2)但事实是可以大于sum/2 ; 1、...

2018-04-16 23:46:31 73 0

原创 6、求数组中最长递增子序列

写一个时间复杂度尽可能低的程序,求一个一维数组(N个元素)中最长递增子序列的长度。 例如:在序列1,-1,2,-3,4,-5,6,-7中,其最长递增子序列为1,2,4,6。 import java.util.Arrays; import java.util.Random; pu...

2018-04-16 23:12:41 73 0

原创 5、KMP算法

字符串匹配。给你两个字符串,寻找其中一个字符串是否包含另一个字符串,如果包含,返回包含的起始位置。 如下面两个字符串: char str = "bacbababadababacambabacaddababacasdsd"; char ptr = "ababaca...

2018-04-16 16:24:09 51 0

原创 23、 聊聊akka(三) 集群&持久化

Akka集群支持去中心化的基于P2P的集群服务,没有单点故障(SPOF)问题,它主要是通过Gossip协议来实现。对于集群成员的状态,Akka提供了一种故障检测机制,能够自动发现出现故障而离开集群的成员节点,通过事件驱动的方式,将状态传播到整个集群的其它成员节点。 集群概念 节点(n...

2018-04-16 12:30:46 371 0

原创 22、聊聊akka(二)监控和监视

虽然通过充分利用多核CPU的计算能力把数据处理运算进行并行处理,提高系统整体效率,对现今大数据普遍盛行的系统计算要求还是远远不足的,只有通过硬件平行拓展(scale-out)形成机群并在之上实现分布式运算才能正真符合新环境对软件程序的要求。 Akka程序是由多个Actor组成的。它的工作原理是把...

2018-04-16 10:56:14 842 0

原创 2、git Permission to userA/repo.git denied to userB

由于更换电脑,直接把mac下的.ssh 目录拷贝在centos下,一直出现: Permission to userA/repo.git denied to userB 在网上查找了许多方法都没有解决, 首先第一步,删除userB的rsa & rsa.pub ,再次提交: ...

2018-04-16 00:33:48 75 0

原创 21、聊聊akka(一)使用及集群调用(负载)

问到:akka的线程模型 为actor模型,那actor模型具体是怎么样的呢? 一种类似于协程的事件(消息)驱动? AKKA提供一种Actor并发模型,其粒度比线程小很多,这意味着你可以在项目中使用大量的Actor。 Akka提供了一套容错机制,允许在Actor出错时进行一些恢复或者重...

2018-04-16 00:24:27 2366 0

原创 1、linux下制作启动盘

Linux下如何把镜像文件刻录到DVD光盘里 参考:http://www.xitongzhijia.net/xtjc/20141209/32201.html # growisofs -dvd-compat -speed=4 -Z /dev/cdrom=WindowsXPProfessio...

2018-04-14 00:16:20 1239 0

原创 20、谈谈consul(一)

consul的基本概念 组成 consul 集群的每个成员上都要运行一个 agent,可以通过 consul agent 命令来启动。agent 可以运行在 server 状态或者 client 状态。自然的,运行在 server 状态的节点被称为 server 节点;运行在 client 状态...

2018-04-13 11:08:19 374 0

原创 19、聊聊redis(二)

集群 Redis 集群是一组能进行数据共享的Redis 实例(服务或者节点)的设施,集群可以使用的功能是普通单机 Redis 所能使用的功能的一个子集;Redis 集群通常具有高可用、可扩展性、分布式、容错等特性。了解redis的集群后,这些晦涩的概念可结合redis的主从、集群分区和集群运维等...

2018-04-13 01:46:55 98 0

原创 18、聊聊redis(一)

Redis 内置了复制(Replication),LUA脚本(Lua scripting), LRU驱动事件(LRU eviction),事务(Transactions) 和不同级别的磁盘持久化(Persistence),并通过 Redis哨兵(Sentinel)和自动分区(Cluster)提供高...

2018-04-12 22:46:06 91 0

转载 2、Spring的两种代理JDK和CGLIB的区别浅谈

一、原理区别 Java动态代理是利用反射机制生成一个实现代理接口的匿名类,在调用具体方法前调用InvokeHandler来处理。 而cglib动态代理是利用asm开源包,对代理对象类的class文件加载进来,通过修改其字节码生成子类来处理。 1、如果目标对象实现了接口,默认情况下会采用JDK...

2018-04-12 10:33:17 63 0

原创 4、查找

空间复杂度是对一个算法在运行过程中临时占用存储空间大小的量度,记做S(n)=O(f(n))。一个算法的优劣主要从算法的执行时间和所需要占用的存储空间两个方面衡量。 查找算法 顺序查找 二分查找 1、二叉树 时间复杂度和高度成正比 2、平衡二叉树 ...

2018-04-12 00:03:26 71 0

原创 3、排序

时间复杂度:程序运行耗费多少时间? 空间复杂度:程序运行耗费了多少内存? 整理数据的第一步就是排序,即使已经存在许多标准的排序库,我们仍然需要学习排序算法。 基础排序 冒泡排序 public class BubbleSort { public static vo...

2018-04-11 13:24:22 47 0

原创 2、栈&队列&链表

在java中,常见于集合如List这种写法,就是确保一个集合内的所有对象是属于一个类型的。 算术表达式的存储 如何让一个算术表达式正确的执行? 5 +2*3 +4/2 E.W.Dijkstra在上世纪60年代发明了一种简单的存储方法,使用2个栈,一个用来保存数字,一个用来保存...

2018-04-11 00:06:42 112 1

原创 1、二分查找法

二分查找算法 1.二分查找又称折半查找,它是一种效率较高的查找方法。 2.二分查找要求:(1)必须采用顺序存储结构 (2)必须按关键字大小有序排列 3.原理:将数组分为三部分,依次是前值,中值,后值;将要查找的值和数组的中值进行比较,若小于中值则在中值前 面找,若大于中值则在中值后面找,等于...

2018-04-10 20:52:04 79 0

原创 18、分布式全局id实践(1/4)

1、利用mongodb的id MongoDB的ObjectId和snowflake算法类似。它设计成轻量型的,不同的机器都能用全局唯一的同种方法方便地生成它。MongoDB 从一开始就设计用来作为分布式数据库,处理多个节点是一个核心要求。使其在分片环境中要容易生成得多。 前4 个字节是从标...

2018-04-10 01:53:16 97 0

原创 17、mongoDB的使用(1/7)

MongoDB 复制 MongoDB复制是将数据同步在多个服务器的过程。 复制提供了数据的冗余备份,并在多个服务器上存储数据副本,提高了数据的可用性, 并可以保证数据的安全性。 MongoDB复制原理 mongodb的复制至少需要两个节点。其中一个是主节点,负责处理客户端请求,其余的都...

2018-04-09 23:59:49 58 0

原创 16、kernel devel 安装与卸载

1、查看已安装kernel-devel uname -a ; rpm -qa kernel\* | sort 2、查看系统内核 uname -r 3、下载对应的rpm wget xxx/kernel-devel-3.10.0-514.el7.x86_64.rpm 4、卸载已安...

2018-04-08 15:14:50 4608 0

原创 15、ethereum(2/3)

git clone https://github.com/ethereum/ethereumj.git 结构介绍 本项目主要使用spring来管理对象,使用netty完成通信,使用leveldb负责存储,整体的包的结构如下所示: 每个包的作用大致为: cli : 负责启动...

2018-04-08 00:39:31 593 0

原创 Golang (1/3)

Go 语言环境安装 安装包下载地址为:https://golang.org/dl/。 如果打不开可以使用这个地址:https://golang.google.cn/dl/。 UNIX/Linux/Mac OS X, 和 FreeBSD 安装 以下介绍了在UNIX/Linux/Mac OS ...

2018-04-06 10:36:29 82 0

原创 14、分库分表的实现

package sharding.sql |-annotation |-Select |-Insert |-Update |-Delete |-connect |-DB |-DB.Con...

2018-04-05 14:03:26 77 0

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