- 博客(26)
- 资源 (10)
- 收藏
- 关注
原创 用O(1)时间,删除一个链表节点(3)
有这样一个问题,给定一个单向链表的头结点pHead和要删除的节点pDeleted,但是要求在O(1)时间完成。可能先想到的就是从头结点往前遍历,找到要删除的节点pDeleted,这样就知道了它的前后节点,但是这样的时间是O(n)。这里的思路是:把pDeleted的下一个节点pNode1的值赋给pDeleted,同时让pDeleted指向pNode2,然后把pNode1删掉,pDelet
2017-08-31 22:52:32 347
转载 callable,Executor,Future
转:http://blog.csdn.net/zhangzhaokun/article/details/6615454 在再度温习Java5的并发编程的知识点时发现,首要的就是把Runnable、Callable、Executor、Future等的关系搞明白,遂有了下述小测试程序,通过这个例子上述三者的关系就一目了然了。在java5以后,一个可以调度执行的线程单元可以有三种方式定义:
2017-08-31 19:41:05 268
转载 Android内存优化
转:http://www.cnblogs.com/ldq2016/p/6635774.html 智能手机发展到今天已经有十几个年头,手机的软硬件都已经发生了翻天覆地的变化,特别是Android阵营,从一开始的一两百M到今天动辄4G,6G内存。然而大部分的开发者观看下自己的异常上报系统,还是会发现各种内存问题仍然层出不穷,各种OOM为crash率贡献不少。Android开发发展到今天也是已经
2017-08-31 19:29:38 446
转载 Callable Feature
转:http://blog.csdn.net/ghsau/article/details/7451464 接着上一篇继续并发包的学习,本篇说明的是Callable和Future,它俩很有意思的,一个产生结果,一个拿到结果。 Callable接口类似于Runnable,从名字就可以看出来了,但是Runnable不会返回结果,并且无法抛出返回结果的异常,而Callable功
2017-08-31 19:19:25 758
转载 图片加载库-Glide
在泰国举行的谷歌开发者论坛上,谷歌为我们介绍了一个名叫 Glide 的图片加载库,作者是bumptech。这个库被广泛的运用在google的开源项目中,包括2014年google I/O大会上发布的官方app。毫无疑问,这个库引起了我的兴趣。于是我花了一个晚上研究和把玩它,将它的实现原理分析清楚以后,我决定写一篇博文分享一些自己的经验。在开始之前我想说,Glide和Picasso有90%的
2017-08-31 18:49:36 290
转载 图片加载库-Fresco
转载:http://blog.csdn.net/theone10211024/article/details/45646963 在Android设备上面,快速高效的显示图片是极为重要的。过去的几年里,我们在如何高效的存储图像这方面遇到了很多问题。图片太大,但是手机的内存却很小。每一个像素的R、G、B和alpha通道总共要占用4byte的空间。如果手机的屏幕是480*800,那么一张屏幕大小
2017-08-31 18:46:47 327
转载 Picasso 图片下载缓存库
转:http://blog.csdn.net/theone10211024/article/details/45604373对于Bitmap的对象池,重用对象,通常使用WeakReference来保存要引用的Bitmap对象,这里需要加一个引用队列,在发生GC时,可以对Bitmap做recycle处理。https://www.jianshu.com/p/f86d3a43eec5http...
2017-08-31 14:53:55 564
转载 EventBus的使用
相关文章:1、《EventBus使用详解(一)——初步使用EventBus》2、《EventBus使用详解(二)——EventBus使用进阶》一、概述EventBus是一款针对Android优化的发布/订阅事件总线。主要功能是替代Intent,Handler,BroadCast在Fragment,Activity,Service,线程之间传递消息.优点是开销小,代码更优雅。
2017-08-31 14:40:01 213
原创 反方向打印链表。(2)
给出一个链表的头节点,从尾部逆序打印链表。这里有2中实现思路,一种是用stack,先从头节点开始,依次把链表节点入栈,然后再依次弹出。第二种思路是递归,实际递归的本质也是用栈来实现的。#include #include #include "ListCommon.h"using namespace std;//用stack实现void printListR
2017-08-28 22:56:12 311
原创 链表基本操作的函数实现。(1)
如下是一个模拟的链表的基本操作,主要有创建链表,连接链表,打印链表,删除链表等,后面有关链表的算法都依赖这个文件中函数实现。ListCommon.h//链表的结构struct ListNode{ int m_nValue; ListNode* m_pNext;};//通用的操作函数ListNode* CreateListNode(int
2017-08-28 22:48:22 929 1
原创 用两个栈实现一个队列算法
栈:后进先出,队列:先进先出。用两个栈实现一个队列,主要实现队列中的两个函数,appendTail,尾部追加,deleteHead,在头部删除节点,用了一个模板类,队列的元素可以是任意类型,int,char都可以,其中类模板中构造函数,析构函数,appendTail,deleteHead的声明和实现都要写在.h中,把实现写在.cpp中,会提示这些方法没定义。模板定义挺特殊的。Analo
2017-08-27 12:20:16 381
原创 一个字符替换的算法
给定一个字符串把其中的空格替换成 (%) 这3个字符。#include using namespace std;void strRepace(char chArray[], int maxLen){ if(chArray == NULL) return ;//计算空格数 int numsOfSpace =0;
2017-08-26 22:05:52 469
原创 使用位运算 的2个算法
1,不用临时变量,交换两个值:#include using namespace std;void swapValue(int num1,int num2){//通过亦或运算符^,交换两个值,不适用临时变量,第一步:num1 = num1^num2,num2=num2^num1,相当于num2 =num2^num1^num2;也等于num1^num2^num2,因为num2^
2017-08-26 11:46:31 362
原创 哈希表,找出第一个出现一次的字符
在一个字符串中,找出第一个出现一次的字符,把每个字符做为hash表中的key,出现的次数做为对应的值。#include using namespace std;char getFirstNotRepeatChar(const char *pStr){ if(pStr == NULL) return '\0';//一个char字符占8个
2017-08-24 22:16:10 347
原创 二分法 -算法
二分法查找,这个算法要求数据要是有序的。比如有这样的问题:找出一个数组中,两个数的和小于等于15,然后输出他们,否则就单独输出较大的数。#include using namespace std;void binarySearch(int *array, int length){ if(array == NULL || length == 0) ret
2017-08-23 22:49:46 543
原创 字符转整数 算法
把一个字符串转成整数:#include using namespace std;long long strToInt(const char* str){ long long num = 0; bool minus = false; cout if(str != NULL && *str != '\0'){ if(*st
2017-08-22 23:00:45 328
原创 Gallery2 的数据加载及渲染
图库主要的显示界面图库主要的显示界面包括:相册集AlbumSetPage,相册AlbumPage,图片预览PhotoPage,这些界面都有一个父类:ActivityState;界面的管理由StateManager负责。public class AlbumSetPage extends ActivityState{}public class StateManager {//根据传入的界面的.cl...
2017-08-21 18:51:44 3844 1
原创 camera2 (api2)打开预览过程(二)
使用camera的流程: openCamera() -> applySettings() -> setPreviewTexture() -> startPreview() ->autoFocus() -> takePicture()。打开camera设备的大致过程:1, 实例化CameraModule对象,即mCurrentModule表示当前的module,默认是...
2017-08-21 09:03:29 5771
原创 压缩目录,排除多个子目录
想从公司copy一份Android 平台完整的代码,方便在家时也可以看代码,因为文件很大,要先压缩,在压缩时不需要.repo,.git这些版本库相关的文件,做法:如果压缩时用--exclude 逐个列出要排除的文件很麻烦,所以先把不要的文件、目录找出来输出到一个文件excludefile.xml,这样方便查看都排除了那些文件,比直接用通配符:--exclude "*.git" 更详细。
2017-08-18 11:19:32 2390
原创 多个基于AIDL的server,Binder驱动怎么区分它们
一个进程要想提供Binder服务,必须要调用ProcessState::self()->startThreadPool();IPCThreadState::self->joinThreadPool();这两个方法,然后整个进程就进入一个Binder loop循环了。ProcessState负责打开Binder设备节点,做mmap内存映射,,IPCThreadState是负责跟Binde...
2017-08-09 19:38:22 549 3
转载 Binder:为什么要通过onTransact()调用目标方法
转载自:http://www.jianshu.com/p/b260051237fe Binder:为什么要通过onTransact()调用目标方法 0x00 背景最近被提出一串问题:为什么android.os.Binder要提供onTransact()方法给子类重写。为什么要通过Client:invokeMethod -> onTransact() -> Service:targetM...
2017-08-08 18:19:37 1774
转载 LeakCanary 中文使用说明
转载自:https://www.liaohuqiu.net/cn/posts/leak-canary-read-me/LeakCanary 中文使用说明 10 May 2015 LeakCanaryAndroid 和 Java 内存泄露检测。“A small leak will sink a great ship.” - Benjamin Franklin千
2017-08-02 17:04:46 306
原创 Camera2(api2) 打开过程(一)
C++层log的输出,如果不全,可以调整log的级别:adb shell dumpsys media.camera -v 1 ,至少改成>=1。 Camera2 打开过程 public void onCreateTasks(Bundle state)@ CameraActivity.java{ mFirstRunDialog = new FirstRunDialog(this...
2017-08-02 17:00:54 7096 1
转载 代码中dumphprof数据
转载自:https://gist.github.com/pyricau/4726389fd64f3b7c6f32 Dump the heap on OutOfMemoryError crashes in your debug builds. Raw OomExcep
2017-08-02 16:48:48 916
原创 Android 调试工具介绍
Android调试工具介绍查看帧率:adb shellsetprop debug.sf.showfps 1logcat | grep fps输出log:01-10 11:24:15.554 399 582 D SDM : HWCDisplay::DebugShowFps: fps=4在帧率偏低情况下,查看cpu,gpu利用率:adb shellsu...
2017-08-02 16:46:25 5480
转载 bitmap的六种压缩方式,Android图片压缩
转载自:http://blog.csdn.net/harryweasley/article/details/51955467 转载请注明出处,谢谢:http://blog.csdn.net/harryweasley/article/details/51955467Android中图片是以bitmap形式存在的,那么bitmap所占内存,直接影响到了应用所占内存大小,首先要知道bitma
2017-08-02 16:37:01 7003 1
simple-ffmpeg-player.zip
2020-03-13
jetty-libs-9.4.zip
2019-11-26
android studio3.1匹配的gradle版本最新4.4
2017-12-25
release3.1
2017-11-21
android make 介绍
2017-11-16
如何分析JAVA crash
2017-11-16
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人