自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 查找算法总结:顺序查找,二分查找,分块查找,散列查找,二叉排序树查找

查找算法包括:顺序查找,二分查找,分块查找,散列查找,二叉排序树查找,B树 B树用于查找磁盘数据,这里不进行分析顺序查找思想:从头到尾一个一个比较,简单,时间复杂度O(n)java实现:public static int seqSearch(List<Integer> arr, int key) { for (int i = 0; i < arr.size(); i++) {

2016-08-29 20:56:32 5931

原创 Android 性能优化二 内存优化

Android内存管理是由JVM进行管理的,不熟悉可以参考http://note.youdao.com/yws/public/redirect/share?id=eabcd96832004fb98c00afd34b42cfde&type=falsehttp://note.youdao.com/yws/public/redirect/share?id=59ae46025f3eaac9eee144e8e

2016-08-21 13:52:03 631

原创 Anddroid 性能优化一 UI性能优化

UI性能优化思路就是减少ui加载的时间,提高流畅性。布局优化思路:减少布局层级,减少布局复杂度,减少绘制时间1.在不需要嵌套的情况下,使用LinearLayout或者FrameLayout代替RelativeLayout2.需要嵌套情况下,使用RelativeLayout代替LinearLayout。3.使用 标签标签用于布局的复用,标签用于被复用的布局中,减少布局的嵌套层级。include标签只支

2016-08-21 13:30:13 398

原创 Android 广播

广播是典型的观察者模式,发送发不关心接收方是否收到,也不关心接收方如何处理,实现发送方和接收方的解耦。Android广播分为,普通广播,有序广播,本地广播,和sticky广播普通广播普通广播,通过sendBroadcast()方法发送的广播,优点:消息传递效率高。缺点:1.所有接收器的执行顺序不一致,广播消息的处理结果不能发送给下一个接受者。2.不能终止广播的传播,直到没有接受者为止。使用步骤:1.

2016-08-21 13:12:48 387

原创 Sqlite数据库基础

1.Sqlite基本介绍SQLite是一个Acid的数据库管理系统,不是一般的C/S结构,而是被连接到程序中,成为应用的一部分,减少了跨进程通信的开销,采用写入数据时加锁,但同时也支持多任务操作。SQLite只支持部分触发器,不支持对Alter table的删除和修改列,不进行类型检查。主要优点:1.零配置,无需安装。 2.跨平台, 3.最大支持2T 4.足够小,3万行代码 5.开源主要有两

2016-08-21 11:35:20 1650

原创 HTTP协议简介

HTTP请求响应的过程1.客户端执行请求,从url中解析主机名,有主机名解析IP,解析端口号(默认8080)。2.客户端与服务器建立TCP连接3.客户端通过Socket输出流发送Http请求3.服务器向客户端返回http响应报文,客户端通过输入流解析获得报文内容。4.关闭TCP连接,更新ui或数据HTTP的请求方式7中请求方式:GET,POST,DELETE,PUT,HEAD,TRACE,OPTIO

2016-08-21 11:02:44 548

原创 java多线程和线程池

1.创建线程方法有两种:继承Thread实现run()方法,实现runnable实run()方法,其实thread类也是实现了runnable接口的, TestThread t=new TestThread(); 启动线程t.start(); 同一个线程对象只能启动一次,调用多次start()是无效的,出现异常。实现Runnable接口相对于继承Thread类来说,有如下显著的优势: (1

2016-08-21 10:56:13 882

原创 Android IPC机制之 Android的各种IPC方式

使用BundleBundle实现了Parcelable接口,可以在四大组建之间传递数据,使用Intent将Bundle传递过去,Bundle支持的数据类型: 基本数据类型,实现parcel的数据类型,bundle等使用文件共享数据将对象序列化到文件系统,然后在另一个进程中进行反序列化,虽然得到的对象内容是一样的,但是不是同一个对象了,该方式需要考虑并发读写的问题使用MessagerMessager

2016-08-12 23:48:25 1196

原创 Android IPC机制之 理解Binder

服务端 IBinder类的创建Binder是Android一个类实现了Ibinder接口,Binder也是Android跨进程通信的一种方式,Binder是连接Android各种manager和ManagerService的桥梁,Binder还是服务端和客户端通信的媒介, bindService时,服务端会返回一个包含了服务端一些方法的Binder对象,通过该对象我们可以调用服务端的服务。我们通常

2016-08-12 23:47:36 400

原创 Android IPC机制之IPC概念、Android 多进程和相关基础知识

1.IPC 的基本概念1.1 IPC的使用场景IPC 即 Inter-Process Communication 进程间通信,IPC用于多进程,而Android的多进程情况一般有:1.一个应用需要在多进程模式下运行,例如,一些组件需要再单独的进程中运行,或者,为了增加应用可使用的内存。2.当前应用需要获取其他应用的数据,例如content provider。2.Android的多进程模式Androi

2016-08-12 23:46:41 398

原创 字符串匹配--KMP算法

字符串匹配指在主串字符串s,中找到模式串t。字符串匹配指在主串字符串s,中找到模式串t。BF算法BF算法是朴素的字符匹配算法,思想是:如果模式串t和主串s,在对应位置匹配那么下标同时增加1,否则模式串从头开始,回到上次匹配中主串开始位置的下一位置继续往后比较,直到主串末尾。可以看到其时间复杂度为O(m*n)。KMP算法kmp在bf算法上进行了改进,主要是在模式串每次都要从头开始与主串匹配这一过程进行

2016-08-12 23:13:08 284

reactorio模型

reactor的线程模型支持高并发请求,是nio的一种设计模式。

2019-01-09

内存bytebuf读写模型

java的bytebuffer必须要进行读写模式的手动切换,否则不能正常读写数据

2019-01-09

服务端的bio 模型

bio模型,每个客户端连接必须要有一个连接与之对应,性能较低

2019-01-09

linux io 模型

linux io模型,区分阻塞非阻塞同步异步的概念,从底层理解io。

2019-01-09

feign原理解析时序图

feign原理解析时序图,展示了springcloud的rpc组件的原理

2018-12-16

空空如也

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

TA关注的人

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