自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 资源 (1)
  • 收藏
  • 关注

转载 OKHTTP3.3.1

一、概述OKHTTP3.3.1版本,主要的几个核心类为:类名 描述 类比说明 OkHttpClient 主要涉及OKHTTP内部一些类的初始化,和参数的设置。用户可以拿到OKHTTP的引用进行设置一些用户网络访问的一些参数。 类比于一个咖啡厅的服务员,接受用户请求,自己不做处理,而是分发给下一层。 ReallCall 处理用户请求,并返回响应结果给用户...

2018-04-25 18:16:26 562

原创 java 利用动态规划求两个字符串最大子序列长度

public static int lcs(String str1, String str2) { int len1 = str1.length(); int len2 = str2.length(); int c[][] = new int[len1 + 1][len2 + 1]; for (int i = 0; i <= len1; i++) { ...

2018-04-24 17:11:13 474

原创 java基数排序

public class BasicSort { public void sort(int [] array){ int max = 0;//获取最大值 for(int i = 0;i<array.length;i++){ if(max<array[i]){ max = array[i]; } } int times = 0;//获取最大值位数 while(ma...

2018-04-24 11:00:08 99

原创 java 递归求阶乘

public class CalNFact { public int f(int n){ if(n == 1){ return n; }else{ return n*f(n-1); } }}

2018-04-24 10:49:16 441

原创 java归并排序

public class MergeSort { public void mergeSort(int[] a,int left,int right){ if(left<right){ int middle = (left+right)/2; mergeSort(a, left, middle); mergeSort(a,...

2018-04-23 16:26:16 143

原创 java快速排序

算法介绍快排图设要排序的数组是A[0]……A[N-1],首先任意选取一个数据(通常选用数组的第一个数)作为关键数据,然后将所有比它小的数都放到它前面,所有比它大的数都放到它后面,这个过程称为一趟快速排序。值得注意的是,快速排序不是一种稳定的排序算法,也就是说,多个相同的值的相对位置也许会在算法结束时产生变动。一趟快速排序的算法是:1)设置两个变量i、j,排序开始的时候:i=0,j=...

2018-04-23 15:06:01 496

原创 java 二分法插入

private static void sort(int[] a) { for (int i = 0; i < a.length; i++) { int temp = a[i]; int left = 0; int right = i-1; int mid = 0; //确定要插入的位置 ...

2018-04-23 11:10:31 736

原创 java堆排序 大堆

//时间复杂度 nLognpublic static void heapSort(int[] array) { if (array == null || array.length <= 1) { return; } buildMaxHeap(array);//建立最大堆 for (int i = array.length - 1; i >...

2018-04-23 10:59:21 127

原创 java插入排序

private static void insertSort(int[] array) { if (array == null || array.length < 1) { return; }//int[] array = {6, 3, 5, 7, 2, 4, 1, 0, 9, 8};//外循环负责拿数内循环负责比较排序//拿出3跟6比,3比6小,6往后移...

2018-04-23 10:40:17 98

原创 冒泡排序

private static void bubblingSort(int[] array) { for (int i = 0; i < array.length - 1; i++) { for (int j = 0; j < array.length - 1 - i; j++) { if (array[j] > array[j +...

2018-04-20 15:22:16 87

原创 选择排序

private static void selectSort(int[] array) { //选择排序 //每次选择最小的,比完往前放,所以外循环负责把每次最小的放每次循环的最前面 //即外循环负责排序,内循环负责比较 //第一次比较从a[0]开始,比较结束最小放到a[0],第二次比较从a[1]开始,比较结束放到a[1], for (int j = 0;...

2018-04-20 15:20:13 93

原创 手写二叉树

public class BinaryTree {private TreeNode root = null;public BinaryTree(){root = new TreeNode(1, "A");}/*** 构建二叉树* A* B C* D E F*/public void createBinaryTre...

2018-04-19 16:48:06 349

转载 LinkedList

LinkedList和ArrayList都是List,不同的是ArrayList是以数组的形式来存储的,而LinkedList是以链表的形式存储的,ArrayList很简单,没什么可说的,下面就简单看一下LinkedList,他里面有个节点Node,是双向的链表[java] view plain copyprivate static class Node<E> {      E ite...

2018-04-19 14:55:37 81

原创 栈的经典使用

逆波兰表达式法    标准四则运算表达式—中缀表达式 例:9 + ( 3 - 1) * 3 + 10 / 2         计算机采用—后缀表达式 例:9 3 1 - 3 * + 10 / 2 +中缀表达式转后缀表达式 9 + ( 3 - 1) * 3 + 10 / 2    -->  9 3 1 - 3 * + 10 / 2 +        数字输出,运算符进栈,括号匹配出栈,运算符相...

2018-04-19 11:54:41 293 2

原创 Android 面试

1java面试题 (一) java基础面试知识点  java中==和equals和hashCode的区别 int、char、long各占多少字节数         byte 1字节 short 2字节 int 4字节 long 8字节 float 4字节 double 8字节 char 2字节 boolean 1字节 int与integer的区别     ...

2018-04-12 17:50:02 354

翻译 EventBus3.0

` public void register(Object subscriber) { //首先获得订阅者的class对象 Class<?> subscriberClass = subscriber.getClass(); //通过subscriberMethodFinder来找到订阅者订阅了哪些事件.返回一个SubscriberMethod对象的List,Su...

2018-04-07 01:18:08 108

原创 Android应用开发性能优化完全分析

1 应用UI卡顿常见原因人为在UI线程中做轻微耗时操作,导致UI线程卡顿;布局Layout过于复杂,无法在16ms内完成渲染;同一时间动画执行的次数过多,导致CPU或GPU负载过重;View过度绘制,导致某些像素在同一帧时间内被绘制多次,从而使CPU或GPU负载过重;View频繁的触发measure、layout,导致measure、layout累计耗时过多及整个View频繁的重新渲染;内存频繁触...

2018-04-06 22:36:37 121

转载 Android 中的Dalvik和ART

Dalvik和JVM有啥关系?主要区别:Dalvik是基于寄存器的,而JVM是基于栈的。Dalvik运行dex文件,而JVM运行java字节码自Android 2.2开始,Dalvik支持JIT(just-in-time,即时编译技术)。优化后的Dalvik较其他标准虚拟机存在一些不同特性: 1.占用更少空间 2.为简化翻译,常量池只使用32位索引  3.标准Java字节码实行8位堆栈指令,Dal...

2018-04-06 22:13:35 166

原创 链表

2018-04-04 18:26:23 82

原创 IntentService

一、IntentService概述它本质是一种特殊的Service,继承自Service并且本身就是一个抽象类它可以用于在后台执行耗时的异步任务,当任务完成后会自动停止它拥有较高的优先级,不易被系统杀死(继承自Service的缘故),因此比较适合执行一些高优先级的异步任务它内部通过HandlerThread和Handler实现异步操作创建IntentService时,只需实现onHandleInt...

2018-04-04 16:50:41 116

原创 Android 多线程之HandlerThread

HandlerThread有那些特点:HandlerThread本质上是一个线程类,它继承了Thread;HandlerThread有自己的内部Looper对象,可以进行looper循环;通过获取HandlerThread的looper对象传递给Handler对象,可以在handleMessage方法中执行异步任务。创建HandlerThread后必须先调用HandlerThread.start(...

2018-04-04 16:14:37 142

转载 JobScheduler学习

后台任务是应用开发中常见的问题。 最简单的做法就是直接开一个Thread,用Handler通信即可,但是所开的线程和活动是没有关系的,一旦应用被杀死,就和之前所创建的线程失去了联系,就算活动再次启动,此时启动的线程并不是之前的线程。 当然,这个问题可以用Service解决,那么如果用户把服务也杀了呢?你可能会想用AlarmManager,周期性地进行唤醒,可是用户关机了,AlarmManager也...

2018-04-04 14:52:28 153

转载 java垃圾回收

    在空闲时间以不定时的方式进行垃圾回收,回收的是无任何引用的对象占据的内存空间而不是对象本身触发主GC(Garbage Collector)的条件    (1)当应用程序空闲时,即没有应用线程在运行时,GC会被调用。因为GC在优先级最低的线程中进行,所以当应用忙时,GC线程就不会被调用,但以下条件除外。     (2)Java堆内存不足时,GC会被调用。若GC一次之后仍不能满足内存分配的要求...

2018-04-04 11:31:56 99

转载 单链表

      数据结构还是很重要的,就算不是那种很牛逼的,但起码得知道基础的东西,这一系列就算是复习一下以前学过的数据结构和填补自己在这一块的知识的空缺。加油。珍惜校园中自由学习的时光。按照链表、栈、队列、排序、数组、树这种顺序来学习数据结构这门课程把。                            -WH一、单链表的概念      链表是最基本的数据结构,其存储的你原理图如下图所示    ...

2018-04-03 16:07:18 173

原创 startService()与bindService()

1.生命周期    startService():onCreate() -> onStartCommand() -> onStart() (过时方法由onStartCommand()替代) -> onDestroy()     bindService():onCreate() -> onBind() -> onServiceConnected() -> ...

2018-04-02 15:24:55 271

转载 AndroidAPP性能优化

布局优化避免OverDraw过渡绘制优化布局层级避免嵌套过多无用布局当我们在画布局的时候,如果能实现相同的功能,优先考虑相对布局,然后在考虑别的布局,不要用绝对布局。使用<include />标签把复杂的界面需要抽取出来使用<merge />标签,因为它在优化UI结构时起到很重要的作用。目的是通过删减多余或者额外的层级,从而优化整个Android Layout的结构。核心功...

2018-04-01 21:22:23 168

转载 TCP为什么要三次握手而结束要四次

举个打电话的例子:  A : 你好我是A,你听得到我在说话吗  B : 听到了,我是B,你听到我在说话吗  A : 嗯,听到了  建立连接,开始聊天!   简单而言:如果不是三次握手的话,那么到底需要几次握手最佳呢?2次握手,或者4次以上的握手? 先看2次握手的情况:客户端给服务器发送建立连接的请求,服务器同意连接请求发回应给客户端,连接就此建立。有...

2018-04-01 12:52:24 554

tablayout简单实用

tablayout简单实用

2017-08-02

空空如也

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

TA关注的人

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