自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 Android中Build类以及@SuppressLint("NewApi")和@TargetApi()区别

1、类结构Object类的子类。2、类描述 Information about the current build, extracted from system properties. 从系统属性中提取设备硬件和版本信息。3、内部类3.1 Build.VERSION Various ver...

2017-03-28 14:37:54 940 0

原创 网易2017实习生招聘笔试题—奇怪的表达式求值

1、题目 题目描述 常规的表达式求值,我们都会根据计算的优先级来计算,比如*/的优先级高于+-。但是小易所生活的世界的表达式规则很简单,从左往右依次计算即可,而且小易所在的世界没有除法,意味着表达式中没有/,只有(+,-和*)。现在给出一个表达式,需要你帮忙计算出小易所在的世界这个表达式的值是多...

2017-03-26 16:30:27 826 0

原创 网易2016实习研发工程师编程题——寻找第K大

1、题目有一个整数数组,请你根据快速排序的思路,找出数组中第K大的数。 给定一个整数数组a,同时给定它的大小n和要找的K(K在1到n之间),请返回第K大的数,保证答案存在。 测试样例: [1,3,5,2,2],5,3 返回:22、基本思想本文中不考虑优化算法,直接使用快排算法对数据先进行排序,然...

2017-03-25 00:32:21 510 0

原创 告白气球

时光荏苒,青春总是美好,杰伦的歌再循环一遍,心情有些平静也有些低落。最近有点累了,工作,学习,生活存在不同的问题,再承受,再坚持。因为人的一生是一张永远不能成为正式作品的草稿,是一场永远不能正式登上舞台的彩排,生命属于我们只有一次,到头来,我们自己是无法通过比较来检验出究竟是哪种生活方式更正确,于...

2017-03-22 22:30:50 1570 1

原创 python中的Matlibplot绘图库

1、概述 Matplotlib的GitHub链接: https://github.com/matplotlib/matplotlib Matplotlib的安装链接: http://blog.csdn.net/walkandthink/article/details/...

2017-03-22 02:52:44 13255 0

原创 Android中的IPC机制

1、概述 IPC(Inter-Process Communication),含义为进程间通信或者跨进程通信,是指两个进程之间进行数据交换的过程。 2、Android中的IPC场景(1)单应用 一个应用因为某种原因自身需要采用多进程模式来实现,至于原因,比如,有些模块因为特殊原因需要运行在单的...

2017-03-16 18:16:13 464 0

原创 Android中Binder机制简单说明

1、概述 Binder是Android中跨进程间通信(IPC)的方式之一。 直观来说,Binder是Android中的一个类,它实现了IBinder接口。从IPC角度来说,Binder是Android中的一种跨进程通信方式,Binder还可以理解为一种虚拟的物理设备,它的设备驱动是/dev/b...

2017-03-15 15:04:11 253 0

转载 Android Binder机制原理

Binder是Android系统进程间通信(IPC)方式之一。Linux已经拥有的进程间通信IPC手段包括(Internet Process Connection): 管道(Pipe)、信号(Signal)和跟踪(Trace)、插口(Socket)、报文队列(Message)、共享内存(Share...

2017-03-15 11:06:16 276 0

转载 Android中RecyclerView源码解析

1、基本使用RecyclerView的基本使用并不复杂,只需要提供一个RecyclerView.Apdater的实现用于处理数据集与ItemView的绑定关系,和一个RecyclerView.LayoutManager的实现用于 测量并布局 ItemView。2、绘制流程众所周知,android控...

2017-03-14 02:10:10 785 0

原创 Tensorflow在Android上的应用(Windows、Mac、Linux)

1、概述作为一个Android开发者和Tensorflow爱好者,当发现tensorflow可以在Android平台开发,那必须来玩玩。大多数参考文章说,Tensorflow在Android上的应用只能在Linux系统编译,事实上不是,构建工具bazel 现在支持Windows、Mac、Linux...

2017-03-14 00:46:03 4580 2

转载 Android ListView工作原理完全解析,带你从源码的角度彻底理解

在Android所有常用的原生控件当中,用法最复杂的应该就是ListView了,它专门用于处理那种内容元素很多,手机屏幕无法展示出所有内容的情况。ListView可以使用列表的形式来展示内容,超出屏幕部分的内容只需要通过手指滑动就可以移动到屏幕内了。另外ListView还有一个非常神奇的功能,我相...

2017-03-12 13:49:07 473 0

原创 Android Studio v2.3 进行NDK配置和使用

1、概述以前在eclipse上玩过NDK,现在想在Android Studio试试NDK,看了网上的一些教程,大多数比较老,步骤过时。本文根据最新android Studio版本进行NDK的配置,并进行基本使用。2、环境配置(1)安装NDK 从菜单栏中选择Tools > Android &g...

2017-03-10 15:06:33 1398 0

原创 java排序算法(6)—归并排序

1、概述 排序就是将一组对象按照某种逻辑顺序重新排列的过程。 归并排序(MERGE-SORT)是建立在归并操作上的一种有效的排序算法,该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有...

2017-03-10 14:07:18 431 0

转载 感悟、资产和幸福感

随着阅历的加深,我关注的事物和接受的知识也在不断地发生着变化。大学毕业已经四年了,过去的半年中,我接触了一些看似不连贯的信息,因为觉得它们有用,就把这些信息全部记在了脑子中。直到最近,才发现一个片段正在解释和说明着另一个片段,而当我把这些片段信息串起来思考的时候,忽然有了一种开朗的感觉。我有一个习...

2017-03-10 13:46:17 315 0

原创 java排序算法(5)—快速排序

1、概述 排序就是将一组对象按照某种逻辑顺序重新排列的过程。 快速排序是一种分治的排序算法。它将一个数组分成两个子数组,将两部分独立排序。快速排序和归并排序是互补的:归并排序将数组分成两个子数组分别排序,并将有序的子数组归并并以将整个数组排序;而快速排序将数组排序的方式则是当两个子数组都有序时...

2017-03-09 21:02:51 334 0

原创 Android中Intent传递的四种数据类型以及传递方法

1、Bundle Bundle是将数据传递到另一个上下文中或保存,或者回复自己状态的数据存储方式,数据不是持久化状态。 (1)简单用法//传递参数 Intent intentSimple = new Intent(); intentSimple.setClass(MainActivity...

2017-03-08 14:43:22 3398 0

原创 java排序算法(4)—冒泡排序

1、概述 排序就是将一组对象按照某种逻辑顺序重新排列的过程。 冒泡排序是依次比较相邻的两个数,将小数放在前面,大数放在后面。 冒泡排序基本思想: (1)第一趟:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数...

2017-03-08 09:47:07 458 0

原创 Android中的asserts和res/raw资源目录

1、assets目录 assets目录下称为原生文件,无法通过R资源清单类访问,这类文件在被打包成apk文件时是不会进行压缩的; (1)使用方法AssetManager assets = this.getResources().getAssets(); ((TextView)findViewB...

2017-03-08 00:59:06 3279 0

原创 java中volatile、synchronized和lock解析

1、概述在研究并发程序时,我们需要了解java中关键字volatile和synchronized关键字的使用以及lock类的用法。首先,了解下java的内存模型:(1)每个线程都有自己的本地内存空间(java栈中的帧)。线程执行时,先把变量从内存读到线程自己的本地内存空间,然后对变量进行操作。 ...

2017-03-07 21:10:34 8087 6

原创 java排序算法(3)—希尔排序

1、概述 排序就是将一组对象按照某种逻辑顺序重新排列的过程。 希尔排序是基于插入排序的的快速排序算法。对于大规模乱序排序数组插入排序很慢,因为它只会交换相邻的元素,例如,如果主键最小的元素正好在数组的尽头,要将它挪到正确位置就要就需要N-1次移动。希尔排序为了加快速度简单地改进了插入排序,交换...

2017-03-07 00:36:25 403 0

原创 java排序算法(2)—插入排序

1、概述 排序就是将一组对象按照某种逻辑顺序重新排列的过程。插入排序基本思想: (1)每次从无序表中取出第一个元素,把它插入到有序表的合适位置,使有序表仍然有序;(2)第一趟比较前两个数,然后把第二个数按大小插入到有序表中; 第二趟把第三个数据与前两个数从前向后扫描,把第三个数按大小插入到有序...

2017-03-06 15:49:30 403 0

原创 java排序算法(1)—选择排序

1、概述 排序就是将一组对象按照某种逻辑顺序重新排列的过程。选择排序基本思想:(1)首先找到数组中最小的那个元素,其次将它和数组的第一个元素交换位置(如果第一个元素就是最小元素那么它就和自己交换)。(2)再次,在剩下的元素中找到最小的元素,将它与数组的第二个元素交换位置。(3)如此往复,直到整...

2017-03-05 14:11:25 345 0

原创 Android中的Fragment回退栈

1、概述我们知道Activity可以通过栈的方式管理Activity(standard、singleTop、singleTask、singleInstance),那么Fragment怎么实现回退栈,官方提供了addToBackStack(String name)来实现fragment的回退栈,但是...

2017-03-04 20:59:00 1031 0

原创 Android的Handler深入解析

1、概述前面写过一篇文章《Android中的消息机制》简单分析了异步消息机制,本文将深入解读Handler的原理。2、基本概念 单线程模型中的Message、Handler、Message Queue、Looper之间的关系: Handler获取当前线程的Looper对象,Looper用来从存放M...

2017-03-04 19:38:18 2034 0

原创 通过注解和反射编写一个android注解框架

1、概述 你可以 随便找个人依靠 那么寒冬后 炎夏前 谁会给你春一样的爱恋 日落后 最美的 时光已溜走——《三十岁的女人》 上篇文章《java反射机制和自定义注解原理分析和实例》已经介绍了java的反射机制和自定义注解的基本原理和简单实例。本篇文章模仿android的框架xUtils的View...

2017-03-03 15:20:02 663 0

原创 java反射机制和自定义注解原理分析和实例

1、概述熟悉android开发的都会了解到Android的xUtils框架的ViewUtils模块,简化了findViewById的编写,通过完全注解方式就可以进行UI,资源和事件绑定。实现基本原理就是通过java中的注解和反射实现,本文主要介绍java中的反射机制和自定义注解的原理和实例编写。2...

2017-03-02 22:36:15 1322 0

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