`
chroya
  • 浏览: 661514 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论
文章列表
本文转载自 http://www.kuqin.com/algorithm/20080615/9581.html 摘要   排序的本质可以这样来表述:一组未排序的N个数字,它们一共有N!种重排,其中只有一种排列是满足题意的 (譬如从大到小排列)。换句话说,排序问题的可能性一共有N!种。任何基于比较的排序的基本操作单元都是“比较a和b”,这就相当于猜数字游戏里面的一个问句。 目录 0. 前言 1. 猜数字 2. 称球 3. 排序     3.1 为什么堆排序比快速排序慢     3.2 为什么快速排序其实也不是那么快 ...
    在画图的时候,图片如果旋转或缩放之后,总是会出现那些华丽的锯齿。其实Android自带了解决方式。     方法一:给Paint加上抗锯齿标志。然后将Paint对象作为参数传给canvas的绘制方法。 paint.setAntiAlias(true);       方法二:给Canvas加上抗锯齿标志。 有些地方不能用paint的,就直接给canvas加抗锯齿,更方便。 canvas.setDrawFilter(new PaintFlagsDrawFilter(0, Paint.ANTI_ALIAS_FLAG|Paint.FILTER_BITMAP_FLAG)); ...
       今天碰到个问题,想获取某个已安装的包的大小,没找到合适的方法。搜索了一下,发现PackageManager里面有个getPackageSizeInfo方法,可惜是hide的,而且它执行之后,会将结果回调给IPackageStatsObserver的onGetStatsCompleted方法。 ...
    位图算法,使用bit存储数据并排序,优点是快速、占用资源少,缺点是只能对整数使用。     Java和C++中都有已经实现的的BitSet类,可以直接使用。     举个例子,0到10000中随机出1000个数,然后用位图算法排序:     import java.util.BitSet; public class BitSetDemo { public static void main(String[] args) { int count = 10000; BitSet bit = new BitSet(count); int i = 10 ...
      本文转载自http://sd.csdn.net/a/20100921/279732.html   Dr. Dobb’s Blogger 的Walter Bright曾写了一篇博文《 Overlooked Essentials For Optimizing Code 》,为我们总结了两个最容易被人忽略的基本代码优化技术。酷壳 个人网站版主陈皓 ...
      Android中有Context的概念,想必大家都知道。Context可以做很多事情,打开activity、发送广播、打开本包下文件夹和数据库、获取classLoader、获取资源等等。如果我们得到了一个包的Context对象,那我们基本上可以做这个包自己 ...
      对于EditText控件来说可能需要用户输入提示,比如这个文本库是需要输入姓名的,可能 输入提示的内容为 “单击输入姓名”,使用Java代码,直接调用setHint(CharSequence hint) 即可,而对于layout xml布局文件而言,可以加入android:hint="单击输入姓名"   这行在你的 EditText 中即可。       输入提示颜色为灰色的,用户单击后自动清除,一般作用是告诉用户这个文本框需要输入的内容是什么。
      如果大家在非黑色背景下使用ListView控件时,Android默认可能在滚动ListView时这个列表控件的背景突然变成黑色。这样可能导致程序的黑色的背景和主程序的主题既不协调。解决的方法Google在设计Android时也考虑了,在Layout的ListView中加入 android:cacheColorHint="#00000000" 的属性即可。
      android.os下的FileObserver类是一个用于监听文件访问、创建、修改、删除、移动等操作的监听器,基于linux的inotify。 FileObserver 是个抽象类,必须继承它才能使用。每个FileObserver对象监听一个单独的文件或者文件夹,如果监视的是一个文件夹,那么文件夹下所有的文件和级联子目录的改变都会触发监听的事件。     所能监听的事件类型如下:     ACCESS,即文件被访问     MODIFY,文件被 修改     ATTRIB,文件属性被修改,如 chmod、chown、touch 等     CLOSE_WRITE,可写 ...
      android.os下的StatFs类主要用来获取文件系统的状态,能够获取sd卡的大小和剩余空间,获取系统内部空间也就是/system的大小和剩余空间等等。       看下读取sd卡的: void readSDCard() { String state = Environment.getExternalSto ...
        一个接着一个的activity,写啊写,调啊调,后来,终于发觉,activity的标题栏好难看,好单调啊。咱们为了吸引用户的眼球,得搞点个性化的东西。         自定义标题栏的方法,网上一搜一大堆,我也稍微提一下,oncreate中加上如下代码就行: requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); setContentView(view); getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title);          这个名 ...
如果你有一台计算机,你装了一个系统之后就整天把它搁置在那里,你觉得这台计算机被实际使用了吗?没有。因为CPU整天运行的就是空闲进程。运行空闲进程也是一天,运行大数据量计算的程序也是一天,对于CPU来说同样的一 ...
      一般情况下在android中使用多线程的时候,我们都是在线程运行的时候使用Handler来给主线程传递消息,这样用起来虽然没什么不好,但是总感觉有点乱。其实Android已经提供了一个标准的实现多线程的模型,那就是AsyncTask ...
    已知包名和类名,如何判断这个activity是否在系统中存在呢?很简单,通过intent就行。 Intent intent = new Intent(); intent.setClassName("包名", "类名"); if(getPackageManager().resolveActivity(intent, 0) == null) { //说明系统中不存在这个activity }
        用过ActivityManager的童鞋估计都知道,可以从ActivityManager里面可以获取到当前运行的所有任务,所有进程和所有服务,这是任务管理器的核心。          那么,从里面我们可以发掘点什么出来吗?          仔细看getRunningTasks的文档,里面说获取的是系统中"running"的所有task,"running"状态包括已经被系统冻结的task。而且返回的这个列表是按照顺序排列的,也就是说第一个肯定比第二个后运行。           get ...
Global site tag (gtag.js) - Google Analytics