自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 【算法】一个长度为n的数组,其中数组中每个元素的值都不大于n,如何用O(n)的算法判断数组中是否存在重复元素

Javapublic class Test { static Integer[] arrays = {1, 2, 3, 5, 3, 4}; private static void findRepetition(Integer[] arrays) { Integer[] initList = new Integer[arrays.length + 1]; ...

2019-06-20 17:25:42 2757

原创 【算法】单链表反转

Java:public class TestNode { private static Node initNode(){ Node node5 = new Node(5,null); Node node4 = new Node(4,node5); Node node3 = new Node(3,node4); Node ...

2019-06-20 17:06:30 159

原创 人工智能之语音机器人

 

2018-07-27 13:50:50 1070

原创 年终总结

回忆了这一年的风风雨雨,有喜也有悲,有欢乐,但是没有眼泪,所以2017年还是挺幸福的一年。 在这一年发生了很多故事,换了新的工作,认识了新的同事,交了新的朋友,但是每年也终究是这样。说实话,我对这一年满意值,不是很高,可能一方面是我的满意期待值太高了,或者是没有一个明显满意的地方,尽管在别人眼里,我这一年已经很不错了。作为社会新人,职场新人,确实有需要太多学习和适应的地方,调节生活的节奏,生活作息

2018-01-02 15:35:35 436

原创 Git常用命令

********************GIT********************git init 初始化git clone https://github.com/libgit2/libgit2 clonegit status 检查当前文件状态git status -s 命令或 git status --short 状态简览git add README *全部 跟踪新文件/

2017-12-05 16:29:35 272

原创 如何将bug扼杀在摇篮里

关于bug,我想大家都不陌生,就像是产品世界里的‘恐怖分子’ 也是最不招人喜欢的家伙,主要是因为bug经常潜藏于无形之中,而一旦发作轻则影响用户体验,重则造成经济损失,我们来看一组兑吧近半年的bug数据。通过bug统计数据图可以看出,线上bug逐月再下降 。那么问题来了:有人会问:怎么做到bug每月都是递减的呢?通过对历史bug数据的分析,有关产

2017-08-11 16:13:25 1359

原创 基于软件的负载均衡(Nginx与ZooKeeper解析)

什么是负载均衡负载均衡(Load Balance)是分布式系统架构设计中必须考虑的因素之一,它通常是指,将请求/数据【均匀】分摊到多个操作单元上执行,负载均衡的关键在于【均匀】。常见互联网分布式架构如上,分为客户端层、反向代理nginx层、站点层、服务层、数据层。现在使用最多的基于软件的负载均衡是Nginx和ZooKeeper: Nginx是著名的反向代理服务器,也被广泛的作为负载均衡服务器 Z

2017-04-01 10:55:34 14122

原创 使用反射实现接口引擎

最近刚换了工作,新的公司主要做p2p,在业界也是比较出名的,我们的产品叫《钱庄理财》,有兴趣的可以玩玩。因为产品推广和运营的需求,所以每次节日都避免不了设计新的活动,而以前项目活动这块主要是每次编写新的接口,导致活动模块类里面代码越来越多,不便于阅读和维护,所以我接手的时候就想做一次优化,初衷是增强代码的可读性和维护性,尽可能增加模块复用性。先介绍一下活动模块的背景活动主要关系活动表和环节表,每个

2017-03-29 14:48:27 977 3

原创 人工智能项目(介绍)

人工智能(Artificial Intelligence),英文缩写为AI。百度百科是这样介绍的:它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。下面我将用技术的层面解释人工智能的实现:一般人工智能会用到ASR和NLP技术以及其他方面的技术:ASR技术:语音识别技术,也被称为自动语音识别Automatic Speech Recognition,(ASR),其

2017-02-23 15:19:36 10017

转载 VirtualAPK:滴滴 Android 插件化的实践之路

一、前言在 Android 插件化技术日新月异的今天,开发并落地一款插件化框架到底是简单还是困难,这个问题不同人会有不同的答案。但是我相信,完成一个插件化框架的 Demo 并不是多难的事儿,然而要开发一款完善的插件化框架却并非易事,尤其在国内,各大 ROM 厂商都对 Android 系统做了一定程度的定制,这更进一步加剧了 Android 本身的碎片化问题。滴滴出行在插件化上的探索

2017-02-23 13:38:43 917 1

转载 Android 开发:由模块化到组件化

模块化和组件化模块化组件化不是个新概念,其在各行各业都一直备受重视.至于组件化什么时候在软件工程领域提出已经无从考究了,不过呢可以确认的是组件化最早应用于服务端开发,后来在该思想的指导下,前端开发和移动端开发也产生各自的开发方式.在了解组件化之前,先来回顾下 模块化 的定义Modular programming is a software design techni

2017-02-23 13:35:34 585 1

原创 年初小记

最近因为工作的原因,突然想写点什么。回忆15年刚出来的时候,在大学我是我们班上第一个出来工作的,那时候心里还有点小骄傲,小优越感的。虽已经有了两年的社会经验,可身上已是伤痕累累,遍体鳞伤,但是我热爱生活,我也很感谢自己,走的比别人快了一步,或许就是这一步,过去和现在一直推着我一步一步的往前,不知疲倦,来不及疗伤,总想着比别人快两步,三步。15年,我到了第一家公司实习,那时候满满的都是新鲜感,对

2017-02-23 13:13:22 564 1

转载 App服务端架构变迁

从2013年开始,我们先后进行了不同路径的多样性架构探索,在实践过程中也经历了各种曲折与压力,最终实现了2015年的这个全新架构,实现了无线服务端基于API Gateway的架构框架、客户端的模块化开发、测试与部署,支持运行期间的模块实时加载、按需Lazyloding、Remote加载,从而实现模块级动态升级以及代码级热修复,并 且逐步推动数百人的客户端研发团队由不堪重负、效率低下的大版本大火

2017-01-02 16:58:57 8119

原创 Service的绑定过程

和Service的启动过程一样,Service的绑定过程也是从ContextWrapper开始的,如图: 图中所示,realStartServiceLocked和Service的启动过程类似,故省略了,都是通过ApplicationThread来完成Service的创建并执行onCreat方法,在图中其实有个断点(handleBindService),不知大家发现没有,其实我是故意留的一个断点。接

2017-01-02 15:25:06 690

原创 Activity的启动过程

我看过很多有关Activity的启动过程的博客,但是写的太过细致,导致我真正理解起来还是有难度的,所有下面我将用流程图的形式展示Activity的启动过程: 在Hander H 中启动Activity是由handLauchActivity实现的,而handLauchActivity方法内调用了performLauchActivity方法,然后调用了handResumeActivity方法,ha

2017-01-02 14:44:32 663

原创 Service的启动过程

如果看过上篇Activity的启动过程Activity的启动过程的文章,相信这篇Service的启动过程,能帮助大家更加容易理解Android四大组件的启动过程,首先我们知道Service分为两种工作状态,一种是启动状态,主要执行后台计算,一种是绑定状态,用于和其他组件的交互:首先看看Service的启动过程:这个流程图好像很熟悉,是的,他和Activity的启动过程很相似,都主要是通过Activi

2017-01-02 13:27:10 551

空空如也

空空如也

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

TA关注的人

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