自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(115)
  • 资源 (15)
  • 收藏
  • 关注

原创 [Android开发]你所忽略过的Fragment的坑

WiKi本文从几个实验开始,到无UI的Fragment,详解Fragment使用过程中可能忽略的相关用法和各种坑。参考Fragment全解析系列(一):那些年踩过的坑 Fragment全解析系列(二):正确的使用姿势 Android中保存和恢复Fragment状态的最好方法Replace、Add、Hide\Show的区别Hide\Show只影响可见性,并不会影响声明周期。** * Hides

2016-11-20 12:47:51 2892 1

原创 [Android开发]从Android官方Demo谈RecyclerView的用法

WiKiRecyclerView是Android5.0中出现的新控件,官方API解释就一句话: A flexible view for providing a limited window into a large data set整体架构如下图: RecyclerView的灵活性体现在6个方面:可以控制显示方式,包括三个内置的不觉管理器,也可以定制LinearLayoutManager

2016-11-06 16:40:04 3300

原创 【算法导论-37】Graph的Java实现

前言之前的博客“【算法导论-35】图算法JGraphT开源库介绍”中提到的开源版本的图算法。然而,继续《算法导论》的学习必须自己实现Graph。所以,放弃使用该库,实现自己的Graph类。 注意,本篇博客紧密结合《算法导论》第22章,深度优先、广度优先、拓扑排序算法都取自相关章节的伪代码,这里不再讲解相关原理。Graph的实现基础的Graph类的实现包括以下: ☆支持有向图和无向图两种类型;

2016-09-09 20:11:25 7014

原创 【算法导论-36】并查集(Disjoint Set)详解

WiKiDisjoint是“不相交”的意思。Disjoint Set高效地支持集合的合并(Union)和集合内元素的查找(Find)两种操作,所以Disjoint Set中文翻译为并查集。 就《算法导论》21章来讲,主要设计这几个知识点:  用并查集计算图的连通区域;  判断两个顶点是否属于同一个连通区域;  链表实现并查集;  Rooted tree实现并查集;

2016-09-03 11:33:03 8568

原创 【算法导论-35】图算法JGraphT开源库介绍

Wiki《算法导论》从22章开始图算法。但是Java JDK中没有Graph相关的库,自己实现的话可维护性较差。 JGraphT是一个开源的图理论数据结构和算法的开源库。可以在学习《算法导论》的同时学习该库,同时可以基于该库实现《算法导论》中相关图算法。相关资料JGraphT主页 JGraphT 源码GitHub主页 JGraphT jar包GitHub主页 JGraphT实现细节简单实例将

2016-08-23 17:44:02 6756

原创 【算法导论-34】红黑树、顺序统计树的Java实现

Wiki在《算法导论》网易公开课的“扩充的数据结构、动态有序统计和区间树”这节课中,作者提供了由两种新型数据结构,即动态有序统计树(Dynamic Order Static Tree,简写为OSTress)和线段树。这两种数据结构都是通过红黑树来扩展产生的。红黑树的java实现在我的博客“【算法导论学习-26】 二叉树专题4:红黑树、AVL树、B-Tree”中,描述了几种树型数据结构的应用场景。红黑

2016-08-18 17:05:16 1588 1

原创 【Android开发】Volley学习笔记

WiKiAndroid2.2之前,最佳实践是采用HttpClient;Android 2.2版本之后,HttpURLConnection则是最佳的选择。在Android 5.0则全面废弃了HttpClient。 Volley是Gooogle I/O 2013发布的一个处理和缓存网络请求的库, 总共有3层架构。 volley适合小而快的数据传输。Volley应该是简化了网络通信的一些开发,特别是针

2016-08-16 20:40:46 542

原创 【算法导论33】跳跃表(Skip list)原理与java实现

WiKiSkip list是一个用于有序元素序列快速搜索的数据结构,由美国计算机科学家William Pugh发明于1989年。它的效率和红黑树以及 AVL 树不相上下,但实现起来比较容易。作者William Pugh是这样介绍Skip list的: Skip lists are a probabilistic data structure that seem likely to supplant

2016-08-14 21:12:48 9387 5

原创 小米公司Android工程师社招面试(2016/08/03)

我在2016年8月3日下午3点半~6点半进行了三轮面试,除了自己做过的项目,也问了一些通用的问题。 当时本人能回答的包括:  AsyncTask和Handler+Thread机制的区别;  哈希表原理  红黑树(由Java 8中HashMap的新特性引申)  Int类型整数二进制1的个数(算法题,手写)  楼梯走法次数(算法题,手写)  …… 当时

2016-08-06 16:58:37 9609 3

原创 Java线程池原理与实例详解

Wiki采用new Thread的方式产生多线程,可能有以下一些问题:  线程的创建和销毁开销很大,尤其是有些线程的存在时间较短;  线程的创建和销毁过程中伴随着CPU在线程间的切换,开销很大; 线程池的优点有:  减少了创建和销毁线程的次数,工作线程可以一直重用。 在java中,每个线程都归属于某个ThreadGroup来管理。ThreadGroup源码分析首先看成员变

2016-08-06 15:38:06 2222

原创 【算法导论32-Java中如何覆写Hashcode()函数】

Hash函数今天看了网易公开课上《算法导论》关于Hash Tables的视频。 Hash函数最简单设计是通过对质数取余的方式进行,但是这涉及到取余运算,并不是一个高效算法。然后视频讲师又提供了另外一个hash函数(《算法导论》中并没有,这里就不给出了),采用乘法和位运算来提高效率。 在Java编程中,如果使用Java API下的Hash数据结构HashTable和HashMap来存储key-va

2016-07-24 21:17:52 1538

原创 【算法导论学习-31】分治法解决同一个数连乘问题

同一个数连乘问题今天再看网易公开课上的算法导论,其中提到了这个pow(double x,int n)可以采用分治法。这里实现一下: /** * 分治法求解pow(double x,int n) * 参考:*http://blog.csdn.net/u012162613/article/details/41361655 * * */ public

2016-07-10 21:12:46 1242

原创 树状数组Binary Indexed Trees详解与Java实现

WiKi树状数组是由Peter Fenwick在1994年提出的,所以又称为Fenwick Tree。数组的区间求和的复杂度是O(n),树状数组可以将数组区间求和的复杂度降低到O(lg n)。这对于长数组的高频率区间求和的应用场景来讲,可以提高效率。参考树状数组(Binary Indexed Trees) 搞懂树状数组详解这里从上面的参考中总结我的思路。 树状数组通过树形结构对原始数组进行预处理

2016-07-09 22:16:31 4240 1

原创 【超级宝典(第5版)】第二章:第一个三角形

1 知识点1.1 视口坐标:原点位于屏幕左下角 Opengl规范化坐标系x、y个方向为[-1,1],会映射到视口的宽和长。如果视口的长宽相等,能保证几何图形长宽比一致;否则,就会出现变形。例如下面几种情况://根据用户拉伸窗口的方式改变视口,图形也随之放大缩小以及变形void ChangeSize(int w, int h){ glViewport(0, 0, w, h);}//根据

2016-07-03 17:00:54 810

原创 【计算机图形学】OpenGL+VS2015相关类库配置

opengGL相关库的配置,包括glew、freeglut、GLTools、GLM

2016-06-09 23:40:10 14039 14

原创 【WPF开发】无人机HUD (Head Up Display)开源控件

WiKiHUD即Head Up Display,用于显示无人机的三个姿态角,即俯仰角(Pitch)、翻滚角(Roll)、偏航角(Yaw)。例如下面的视图。 相关资料gitHub主页:https://github.com/fengdingfeilong/HUD使用从GitHub上下载后,用VS2015打开,直接运行,即可直接运行出来里面的实例。可以点击解决方案中HUD工程,build出DLL文件。

2016-05-26 12:27:14 4355

原创 【WPF开发】WpfGauge:开源仪表盘(Gauge)的使用

WpfGauge:WPF版本开源仪表盘(Gauge)的使用wpfgauge是一款.net平台WPF版本的开源仪表盘,包括了源码和使用实例。官网地址是: https://wpfgauge.codeplex.com/ 官网效果图 分析运行Dmeo有两种方式可以使用它。首先,解压附件wpfgauge-33505.zip,通过VS2013或VS2015打开解决方案,目录是wpfgauge-33505\

2016-05-20 20:41:12 10066 3

原创 【Android开发】开源库AndroidSlidingUpPanel详解

1 WikiAndroidSlidingUpPanel提供了一种通过向上拖动添加额外面板(sliding panel)的开源库,由Umano公司开发提供。下图是Umano的客户端。 Umano公司是成立于2012年的创业公司,他们雇佣专业的声音演员,提供新闻的朗读服务,于2015年底被DropBox收购。2 相关资料Github主页:https://github.com/umano/Andro

2016-04-04 23:19:11 9333 3

原创 【Android开发】greenrobot三大开源利器详解(一)——EventBus

一、greenrobot介绍greenrobot相关信息较少,可以确信是一个开源组织。官网:http://greenrobot.org/。 greenrobot主要开发并维护了3个Android开源库,即greenDAO、EventBus、和Essentials。三个开源库都可以在GitHub上进行下载。本节讲解其中最著名的EventBus。二、EventBus概述EventBus的官方解释是:“

2016-03-15 23:16:29 16174

原创 【无人机开发】通讯协议MavLink详解

1. MAVLink简介MAVLink(Micro Air Vehicle Link,微型空中飞行器链路通讯协议)是无人飞行器与地面站(Ground Control Station ,GCS)之间通讯,以及无人飞行器之间通讯最常用的协议。它已经在PX4、APM、PIXHAWK和Parrot AR.Drone飞控平台上进行了大量测试。2.发明者Lorenz Meier简介MAVLink的最初开发于20

2016-03-08 00:00:00 26447 3

原创 计算机学习入门、进阶、Android开发及其它

计算机学习入门、进阶及其它

2016-02-25 23:00:26 961

原创 【Android开发】Android跨进程通讯(AIDL)官方文档及官方Demo讲解

第一章、 关于Android跨进程的思考先来回顾一下操作系统中的一些概念。  同一个进程中可以有多个线程,线程间通信可以直接取得地址。因为Java程序的内存分配在连续的地址空间。  默认一个Java程序会开启一个进程,运行在JVM中。但是一个JVM是可以开启多个进程的。  一个或多个操作系统可以开启多个JVM,多个JVM之间依赖TCP通讯的方法调用即Java的RMI(Remo

2016-02-25 22:42:10 2980

原创 【Android开发】BitMap优化最佳实践及官方Demo“图片墙”实例详解

本文以官方文档和Demo为核心,全面讲解了BitMap优化的最佳实践。

2016-01-27 23:45:08 1892

原创 【Android开发】深入理解硬盘缓存类DiskLruCache:源码分析

深入理解硬盘缓存类DiskLruCache,并进行了源码分析

2016-01-27 13:02:38 1652

原创 【Android 开发】深入理解内存缓存类LruCache:源码分析

ruCache是Android API实现的用于内存缓存的类,LRU即“Leatestrecent used”的缩写,典型应用是集中展示多个BitMap。这里讲解了其源码。

2016-01-27 12:40:41 1261

原创 ListView的单选、多选模式:以官方Demo为例

ListView的单选和多选模式使用频率比较高,这里介绍了官方Dmeo推荐的方式。

2016-01-21 00:20:16 3426

原创 生成指定个数的随机码,同时包含大小写字母和数字【H3C笔试题】

生成指定个数的随机码,同时包含大小写字母和数字

2016-01-13 22:35:23 3384

原创 7进制字符串转为10进制的int类型数字(H3C笔试题)

7进制字符串转为10进制的int类型数字

2016-01-13 22:26:47 3490

原创 圆形导航菜单radial-menu-widget详解

radial-menu-widget的详解

2015-12-27 14:11:07 4549

原创 深入理解BaseAdapter与ListView

深入理解BaseAdapter与ListView

2015-12-18 21:08:34 2190

原创 Android中Activity与Service的双向通讯

Android中Activity与本地Service的双向通讯

2015-11-11 23:48:41 2751

原创 根据itemView的大小计算ListView动态大小

1.问题产生  在PopupWindow中放置一个ListView,点击Button后希望让PopupWindow显示在Button正上方。实现ListPopWindow继承PopupWindow,位置显示要求在正上方。      public void showPopWindow(View parent) { if (!isShowing()) { i

2015-10-27 21:54:49 3296

原创 解释:ListView适配Button、CheckBox时OnItemClickListener无响应

解释:ListView适配Button、CheckBox时OnItemClickListener无响应

2015-10-25 14:46:10 1260

原创 【Android开发】UncaughtExceptionHandler接口详解

Android开发:UncaughtExceptionHandler接口详解

2015-09-14 20:49:08 2749 2

原创 PagerSlidingTabStrip的分析和使用

PagerSlidingTabStrip是GitHub上一个开源项目(地址:https://github.com/astuetz/PagerSlidingTabStrip)用于获得同样的Tab翻页效果。与官方ActionBar的Tab不同的是,Tab不属于ActionBar,而是通过TextView自定义了Tab,并通过与ViewPager联动,实现点击Tab和侧滑均能翻页的效果。

2015-08-23 10:56:40 2675

原创 【算法学习-01】 输入一个正数 n,输出所有和为 n 连续正数序列。

输入一个正数 n,输出所有和为 n 连续正数序列。

2014-11-17 22:19:46 1644

原创 Android获取三轴方向基础知识

两种方法获取Android设备的三轴方向

2014-11-14 11:06:52 2167

原创 【一道航天信息java笔试题】return语句和finally语句的执行顺序

10月29日,前往航天信息笔试了一份Android开发

2014-10-30 09:15:53 2443

原创 java1.7与Android中的文件I/O操作(草稿)

java1.7与Android中的文件I/O操作总结

2014-10-29 10:58:30 1731

转载 Autoboxing and Unboxing

转折地址:http://docs.oracle.com/javase/tutorial/java/data/autoboxing.html

2014-10-10 09:59:37 870

OpenGL超级宝典(第5版)源码part2

OpenGL超级宝典(第5版)源码part2

2016-06-09

《OpenGL超级宝典(第5版)》源码part1

OpenGL超级宝典(第5版)

2016-06-09

WpfGauge.dll

WpfGauge.dll

2016-05-20

C#入门经典 第6版源代码

C#入门经典 第6版源代码

2016-05-14

EventBusDemo

EventBusDemo.rar

2016-03-15

eventbus jar包、源码和API.rar

eventbus jar包、源码和API.rar

2016-03-15

Displaying Bitmaps Efficiently

Android 6.0的官方开发平台上,有4节是专门来讲BitMap优化的,这是其Word文档。

2016-01-23

Android开源控件:圆形菜单Radial-menu-widget

压缩包包含了demo,java和官方的readme

2015-12-27

Android6.0官方培训-蓝牙

Android官方培训部分,在官网上有,我将其扒成了PDF。

2015-12-27

组合数学完整版(原书第4版,作者Brualdi)

组合数学完整中文版原书第4版,作者为Brualdi

2014-10-30

《编程珠玑》第2版中文PDF+源代码

《编程珠玑》第2版中文PDF+源代码,仅仅用于个人学习,传播获利违法

2014-10-07

现代编译原理 Java语言描述

现代编译原理(Java语言描述)完整版本,中文书籍,内容详细。

2014-08-26

空空如也

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

TA关注的人

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