摘要: 上一次汇编写到,只是个位数的简单相加,只需要判断两者相加有无进位,进位即进一,在输出窗口输出一先。遇到多位数后,会变复杂很多,事实上汇编里面可以实现相加,难题在于需要把和转成ASCII码显示在dos窗口。所以需要把和一个一个数提取,转成ASCII。程序如下:DATAS SEGMENT OP1 DW 255 OP2 DW 366 RESULT DW 10 DUP(?) 定义一个RESULT数组,长度为10个字节DATAS ENDSSTACKS SEGMENT STACKS ENDSCODES SEGMENT ASSUME CS:CODES,DS:DAT... 阅读全文
posted @ 2013-07-22 20:26 爱生活,爱编程 阅读(1087) 评论(0) 推荐(0)
摘要: 最近在做验证用户姓名的功能时发现这样一个现象。>>len(u'打怪者') #unicode3>>len(u'打怪者'.encode('gbk')) #gbk6>>len('打怪者') #utf-89一般都知道,gbk编码每个汉字占用2个字节,utf8编码的每个汉字占用3个字节,这就是很多网站不用统一标准utf8的原因,就是gbk占用字节少。既然len(u'打怪者')等于3,长度比gbk和utf8编码的都小,直接用unicode的不是更节省吗?其实len出来的长度小不代表占用空间小 阅读全文
posted @ 2013-07-22 20:22 爱生活,爱编程 阅读(306) 评论(0) 推荐(0)
摘要: wc统计文件里面有多少单词,多少行,多少字符。wc语法[root@www ~]# wc [-lwm]选项与参数:-l :仅列出行;-w :仅列出多少字(英文单字);-m :多少字符;默认使用wc统计/etc/passwd#wc /etc/passwd40 45 1719 /etc/passwd40是行数,45是单词数,1719是字节数wc的命令比较简单使用,每个参数使用如下:#wc -l /etc/passwd #统计行数,在对记录数时,很常用40 /etc/passwd #表示系统有40个账户#wc -w /etc/passwd #统计单词出现次数45 /etc/... 阅读全文
posted @ 2013-07-22 20:19 爱生活,爱编程 阅读(669) 评论(0) 推荐(0)
摘要: 昨天用Gallery做了一个图片浏览选择开机画面的功能,当我加载的图片多了就出现OOM问题。以前也出现过这个问题,那时候并没有深究。这次打算好好分析一下Android的内存机制。 因为我以前是做VC++开发,因此对C++在Window下的内存机制还是比较了解。不过转到Android后,一直都没有刻意去处理内存问题,因为脑子里一直想着Java的GC机制。不过现在想想,自己对Android的GC和内存管理并不了解,自己写的代码在内存哪里运行都不清楚,心里不淡定啊。。。。 毕竟我以前写C++的时候,什么时候在哪里申请内存,什么时候释放内存,会不会栈溢出或者堆内存泄露都了如指掌。言归正传,今天打算先了 阅读全文
posted @ 2013-07-22 20:17 爱生活,爱编程 阅读(1102) 评论(0) 推荐(0)
摘要: 在做安卓应用开发的时候很经常会用到ListView,并且每一个Item里面都会有按钮之类的需要进行事件监听的控件。在给按钮添加OnClickListener的时候,一开始很下意识的会想在ListView的adapter的getView方法中找到每个Button并new一个OnClickListener分配给这个button。但是当数据量很大的时候,new出来这么多个监听器势必会对内存造成一定的压力,而且每个Listener的功能完全一样,Listener里面所需知道的,不过是调用者所在的Item的index而已。怎么样才能更好地利用内存呢?既然每个Listener的功能一样,那么完全可以用单例 阅读全文
posted @ 2013-07-22 20:15 爱生活,爱编程 阅读(4692) 评论(0) 推荐(1)
摘要: 前言 之前讲过EditText,有兴趣的朋友可以看一下。这篇博客主要说明的是自动完成文本框,它实际上也是一个文本编辑框,可以理解为对EditText功能的扩展,它对输入的内容可以进行提示并且自动完成。本文会讲解常用属性设置,以及如何向AutoCompleteTextView增加提示数据,最后将使用一个demo演示一下。 说明 自动完成文本框(AutoCompleteTextView),可以从官方文档上看出,是从EditText继承而来,所以它实际上也是一个文本编辑框,只是多了一个自动提示输入补全的功能。功能类似于:当用户输入一定字符之后,自动完成文本框会显示一个下拉列表,供用户从中选择,当用户 阅读全文
posted @ 2013-07-22 20:13 爱生活,爱编程 阅读(370) 评论(0) 推荐(0)
摘要: 过了n多天后,当再次使用原先博客上写的那篇:Android 压缩解压zip文件去做zip包的解压的时候,出现了原来没有发现的很多问题。首先是中文汉字问题,使用java的zip包不能很好的解决解压问题;其次还有getRealFileName()内的那个判断:由之前的"if(dirs.length >1)" 如果是 >1 的话,对于一些文件不能够解压,修改为:if(dirs.length>0)对于zip压缩包内包含中文目录或者中文文件的话,参考网上的资源:“使用apache的zip工具包(所在包为ant.jar )代替JDK的zip工具包,因为java类型自带 阅读全文
posted @ 2013-07-22 20:11 爱生活,爱编程 阅读(359) 评论(0) 推荐(0)
摘要: Redis String类型数据常用的16条命令总结 描述:String 类型是最简单的类型,一个Key对应一个Value,String类型是二进制安全的。Redis的String可以包含任何数据,比如jpg图片或序列化对象。 常用方法: 1, set方法: set 设置key的值为value (1)对不存在的key使用set:redis 127.0.0.1:6379> set name 'zhangsan'OKredis 127.0.0.1:6379> get name"zhangsan" (2)对已存在的key使用set,更换key的值:re 阅读全文
posted @ 2013-07-22 20:10 爱生活,爱编程 阅读(506) 评论(0) 推荐(0)
摘要: 1.主Activity 1 public class MainActivity extends Activity { 2 3 private ListView listView; 4 private ArrayList persons; 5 private ListAdapter adapter; 6 private Handler handler=null; 7 //xml文件的网络地址 8 final String path="http://192.168.5.10:8080/FileServer/person.xml"; 9 @S... 阅读全文
posted @ 2013-07-22 20:08 爱生活,爱编程 阅读(36492) 评论(8) 推荐(1)
摘要: 刚刚在百度希捷贴吧发了此贴, 马上被删除, 无奈只能发于个人博客, 望看到的朋友能转载到"合适"位置,让更多的朋友看到. 避免上当. 最近准备买个移动硬盘备份电脑资料,看上了睿品系列, 主要是在Mac上可以不直接读取硬盘上的内容,不需要直接转硬盘的格式, 在淘宝上逛了很久, 发现有些不法奸商打些睿品的口号卖着假货, 货能用,但是保证不是希捷官方正品货. 在2013年7月21号,此时有些商铺打着425元的价格, 我在是这家店买的,当时拿到手不太确定是不是正品, 翻阅了大量的资料,下了不少工具. 疑点一: 包装和硬盘的pn/sn都一样, 在官方旗舰店和京东,都说pn不一样,sn 阅读全文
posted @ 2013-07-22 20:07 爱生活,爱编程 阅读(790) 评论(0) 推荐(0)
摘要: //BiTree.h#ifndef BITREE_H#define BITREE_H#include #include #define ERROR -1 #define OVERFLOW -2 #define SUCCESS 0#pragma pack(push)#pragma pack(4)struct _Node{ int iValue; struct _Node* pParent; struct _Node* pLChild; struct _Node* pRChild;};typedef struct _Node Node;typedef struct{ Node* pRoot;//R 阅读全文
posted @ 2013-07-22 20:03 爱生活,爱编程 阅读(241) 评论(0) 推荐(0)
摘要: (一)网银 网上银行又称 网络银行、在线 银行,是指 银行利用 Internet技术,通过Internet向 客户提供 开户、查询、 对帐、行内转帐、跨行转账、 信贷、网上证劵、 投资理财等传统服务项目,使客户可以足不出户就能够安全便捷地管理活期和定期 存款、 支票、 信用卡及个人投资等。可以说,网上银行是在Internet上的 虚拟银行柜台。 网上银行又被称为“3A银行”,因为它不受时间、空间限制,能够在任何时间(Anytime)、任何地点(Anywhere)、以任何 方式(Anyway)为客户提供 金融服务。 (二)第三方支付 所谓第三方支付,就是一... 阅读全文
posted @ 2013-07-22 20:01 爱生活,爱编程 阅读(1133) 评论(0) 推荐(0)
摘要: 使用X-UA-Compatible来设置IE8兼容模式英文原文:http://msdn.microsoft.com/en-us/library/cc288325(VS.85).aspx文件兼容性用于定义让IE如何编译你的网页。此文件解释文件兼容性,如何指定你网站的文件兼容性模式以及如何判断一个网页该使用的文件模式。 前言 为了帮助确保你的网页在所有未来的IE版本都有一致的外观,IE8引入了文件兼容性。在IE6中引入一个增设的兼容性模式,文件兼容性使你能够在IE呈现你的网页时选择特定编译模式。 新的IE为了确保网页在未来的版本中都有一支的外观,IE8引入了文件兼容性。当你引入一个增设的兼容性模. 阅读全文
posted @ 2013-07-22 19:59 爱生活,爱编程 阅读(264) 评论(0) 推荐(0)
摘要: Problem Description 大家常常感慨,要做好一件事情真的不容易,确实,失败比成功容易多了! 做好“一件”事情尚且不易,若想永远成功而总从不失败,那更是难上加难了,就像花钱总是比挣钱容易的道理一样。 话虽这样说,我还是要告诉大家,要想失败到一定程度也是不容易的。比如,我高中的时候,就有一个神奇的女生,在英语考试的时候,竟然把40个单项选择题全部做错了!大家都学过概率论,应该知道出现这种情况的概率,所以至今我都觉得这是一件神奇的事情。如果套用一句经典的评语,我们可以这样总结:一个人做错一道选择题并不难,难的是全部做错,一个不对。 不幸的是,这种小概率事件又发生了,而... 阅读全文
posted @ 2013-07-22 19:57 爱生活,爱编程 阅读(272) 评论(0) 推荐(0)
摘要: 【作者:张佩】【原文:http://www.yiiyee.cn/Blog/0x7f-1/】 内核之所以脆弱,是因为它没有办法很好地隔离自己。它是一个大整体,属于一荣俱荣、一损俱损的大整体。它需要一切都按部就班地执行有序。否则,一个角落里的蝴蝶扇动翅膀,就能招来太平洋上的绝大风暴。现在看到的是一个内核中的除0错误。用户程序中的除零导致进程崩溃,内核中则系统崩溃。 int AlwaysDivide (int par0){Return random (100)/par0;}上面这个无意义的函数代码,写得很不慎重。如果输入参数par0为0的话,程序就崩溃了。Windbg的自动分析命令能够很好地检测这个 阅读全文
posted @ 2013-07-22 19:56 爱生活,爱编程 阅读(450) 评论(0) 推荐(0)
摘要: 如题,例如:存在数组 1,-1,2,-3,4,-5,6,-7 ,则最长的递增子序列是:1,2,4,6.法一: 蛮力法 int Lis(int* arr,int n){ int iCount=0;//记录子序列的个数 int tmp_count=0; int tmp; for(int i=0;itmp) { iCount++; tmp=arr[j]; } } if(iCount>tmp_count) { tmp_count=iCount; } iCount=0; } return tmp_coun... 阅读全文
posted @ 2013-07-22 19:54 爱生活,爱编程 阅读(235) 评论(0) 推荐(0)
摘要: 【作者:张佩】【原文:http://www.yiiyee.cn/Blog/0x19-1/】内核在管理内存的时候,为了提高内存使用效率,对于小片内存的申请(小于一个PAGE大小),都是通过内存池来操作的。系统里面有两种不同的内存池:分页内存池和非分页内存池。这二者的区别是很明显的:分页内存池所使用的内存页面,随时有可能被分页出去;而非分页内存池所使用的虚拟页面,总是留驻在物理内存中。对于运行在高中断级别(>=DISPATCH_LEVEL 2)上的代码,它使用的内存只应该是从非分页内存池中申请的。因为系统无法在这些中断级上处理页错误。 除了上面的区别外,系统对两个内存池的管理是极类似的。那么 阅读全文
posted @ 2013-07-22 19:53 爱生活,爱编程 阅读(691) 评论(0) 推荐(0)
摘要: C. Purificationtime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputYou are an adventurer currently journeying inside an evil temple. After defeating a couple of weak zombies, you arrived at a square room consisting of tiles forming ann × ngrid. T 阅读全文
posted @ 2013-07-22 19:50 爱生活,爱编程 阅读(220) 评论(0) 推荐(0)
摘要: 一个Andoird应用程序的重要的地方是他们有相互沟通和整合的能力,一个应用程序可以和另一个应用程序交互,接下来我们来看看Android应用之间的内容分享当你构建Intent的时候,必须要指定Intent的Action触发,定义Intent的Action例如ACTION_SEND,你大概可以猜到指定Action为ACTION_SEND的Intent的作用是从一个Activity发送数据到另一个Activity,甚至跨越不同的进程,将数据发送给另一个Activity,你需要指定数据和他的类型,系统将识别接收的Activity,并显示他们给用户(假如有多个选择的时候)或者立即启动Activity( 阅读全文
posted @ 2013-07-22 19:48 爱生活,爱编程 阅读(896) 评论(0) 推荐(0)
摘要: 最近总感觉sql语句不对劲,所以就看了一些官方文档发现了一些以前没有注意的函数:感觉在查询的时候可以用得上,毕竟是内置函数,用起来效率应该会好一些的: FIND_IN_SET(str,strlist) mysql> SELECT FIND_IN_SET('b','a,b,c,d'); -> 2如:SELECT FIND_IN_SET(a.roleId,r.roleName), a.* from t_admin a ,t_role r where a.roleId = r.roleId AND FIND_IN_SET(a.roleId,r.roleId 阅读全文
posted @ 2013-07-22 19:46 爱生活,爱编程 阅读(271) 评论(0) 推荐(0)
摘要: 主要介绍如下5个容器类——Vector, Stack,Queue,Map和Set,各个都表示一重要的抽象数据类型。另外,各个类都是一些简单类型的值的集合,所以称它们为容器类。暂且我们先不需要知道它们是如何实现的,我们先来学习一下如何使用它们。为了能使用这些容器类,必须包含适合的接口,就像包含相应的库一样。如下:#include "vector.h"就是包含了Vector类的接口,包含该头文件后,就可以在程序中使用Vector类了。一、Vector类Vector类类似于C++中数组,然后,C++中数组有如下的缺点:数组在定义时指定其大小,后续不能改变。尽管数组有固定的大小,但 阅读全文
posted @ 2013-07-22 19:44 爱生活,爱编程 阅读(1169) 评论(0) 推荐(0)
摘要: TX2440A与TQ2440A开发板使用核心板完全相同有过51单片基础的同学应该都会看懂下图,先看下图,对实验板存储器分布有一个整体印象: s3c2440存储器概述:1、S3C2440A的存储器管理器提供访问外部存储器的所有控制信号2、27位地址信号、32位数据信号、8个片选信号、以及读/写控制信号等 3、总共有8个存储器bank(bank0—bank7) bank0---bank5为固定128MB bank6和bank7的容量可编程改变,可以是2、4、8、16、32、64、128MB 最大共1GB4、bank0可以作为引导ROM 其数据线宽只能是16位和32位,其它存储器的数据线宽... 阅读全文
posted @ 2013-07-22 19:40 爱生活,爱编程 阅读(312) 评论(0) 推荐(0)
摘要: 1. linux环境下build并启动crtmpserver 这部分可以参见我写的专项详解文章 《crtmpserver流媒体服务器的介绍与搭建》 和 《crtmpserver配置文件详解》 2. 修改配置文件 修改配置文件: crtmpserver.lua 配置文件的具体意义见文章《crtmpserver配置文件详解》 mediaFolder用来配置媒体文件的位置 media/readme可看到支持的格式以及命名的方式(注意:MP4有的编码不支持,放不了) +------+--------------------+----------------+ | type | naming ... 阅读全文
posted @ 2013-07-22 19:38 爱生活,爱编程 阅读(675) 评论(0) 推荐(0)
摘要: 1.标签的结构示例代码: 信息统计表 # 1 2 3 4 一个完整的例子: 信息统计表 # Firstname Lastname Phone QQ 1 qian shou 11111111111 111111111 2 ... 阅读全文
posted @ 2013-07-22 19:36 爱生活,爱编程 阅读(677) 评论(0) 推荐(0)
摘要: typedef enum{ UILineBreakModeWordWrap = 0, UILineBreakModeCharacterWrap, UILineBreakModeClip, UILineBreakModeHeadTruncation, UILineBreakModeTailTruncation, UILineBreakModeMiddleTruncation, } UILineBreakMode; UILineBreakModeWordWrap = 0, 以单词为单位换行,以单位为单位截断。 UILineBreakModeCharacterWrap, 以字符... 阅读全文
posted @ 2013-07-22 19:35 爱生活,爱编程 阅读(5782) 评论(0) 推荐(0)
摘要: 本博客所有内容是原创,未经书面许可,严禁任何形式的转载http://blog.csdn.net/u010255642根据SMO的算法描述,用python实现,部分代码如下,定义了一个svm_pmcp类,所有的运算在svm_pmcp完成,这样便于封装和实际应用#!/usr/bin/env python# -*- coding: utf-8 -*-#麦好:myhaspl@qq.com#http://blog.csdn.net/u010255642#svm算法import numpy as np import mathimport matplotlib.pyplot as plt#内积线性核函数de 阅读全文
posted @ 2013-07-22 19:34 爱生活,爱编程 阅读(245) 评论(0) 推荐(0)
摘要: 这是个简单的算法,是全局二值算法的一种,算法执行速度快。 算法过程简单描述如下: 对于每一个像素,做如下处理 1、计算当前像素水平和垂直方向的梯度。 (two gradients are calculated |I(x + 1, y) - I(x - 1, y)| and|I(x, y + 1) - I(x, y - 1)|); 2、取两个梯度的最大值作为权重。(weight is calculated as maximum of two gradients); 3、更新权重的和。(sum of weights is updated (weightTotal += weigh... 阅读全文
posted @ 2013-07-22 19:31 爱生活,爱编程 阅读(336) 评论(0) 推荐(0)
摘要: Oracle体系结构中经常看到LRU算法,Least Recently Used,也有叫“最近最少使用页面置换算法”,简单讲,Oracle会将内存中最近不用的数据库移出内存以腾出空间来加载另外的数据。算法的实现虽然无法获取,但对于我们很多人来说,也没有必要了解。更重要、更实际地是知道它的作用,以及基于此对一些问题的分析与判断。 关于这个算法,有一种最理想的计算,就是每次调换出的内存是所有内存中最迟将被使用的,可以最大限度地推迟内存调换,但这种算法是理想内存置换,无法实现。为了减少与理想算法的差距,又出现了各种精妙的算法,LRU就是其中一个。它是基于:前面内存中的数据很可能在后面频繁... 阅读全文
posted @ 2013-07-22 19:29 爱生活,爱编程 阅读(376) 评论(0) 推荐(0)
摘要: 在我看来,java里面里面除了原生类型不是对象,其他的都是对象。但java是面向对象的语言,很多地方还要要操作对象,所以java会自动把原生类型转为对应的包装类型。这个过程叫自动装箱。有装箱就有拆箱,就是包装的对象转换为原生类型。 java里面一共有8种原生数据类型。 类型占字节大小 boolean? byte8位有符号的二进制补码整数 char单个16 位Unicode 字符 short16位有符号的补码整数 int32位有符号的补码整数 float单精度 32 位 IEEE 754 浮点数 long64位有符号的补码整数 double单... 阅读全文
posted @ 2013-07-22 19:27 爱生活,爱编程 阅读(283) 评论(0) 推荐(0)
摘要: 通常情况通常程序的UI不太复杂,我们会直接加载这些UI信息复杂的UI加载的元素就相对多一些。加载的数据相对多。因为UI元素和数据元素都比较多,加载的时间相对多。可视者优先加载不是默认的加载顺序,而是有选择的加载一些首先用户看到的UI,再去加载暂时没有看到的。例如1:当Launcher启动的时候,在桌面上会有默认的5个屏幕的widget UI,通常的一般思考是从左到右,依次加载,但是,我们可以首先加载用户所看到的当前屏,也就是说首先加载当前页,然后加载第1,2,4,5页。一般的加载方式 Launcher实际的加载方式 加载相关的code处理// once for th... 阅读全文
posted @ 2013-07-22 19:26 爱生活,爱编程 阅读(337) 评论(0) 推荐(0)
摘要: 用WebView显示Html时,右边会出现一条空白区,如下图所示: 最开始的时候,认为是网页本身的空白. 后来发现网页本身无问题,且这个空白区是跟Scroll Bar 的位置和粗细比较相符,于是去控制scrollBar,具体的解决有两种方案 1.在layout的xml文件中,WebView组件的元素中添加:android:scrollbars="none"属性;如:2.在Activity类中,取到WebView对象,添加myWebView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY);如:WebViewmyWebView 阅读全文
posted @ 2013-07-22 19:25 爱生活,爱编程 阅读(4451) 评论(0) 推荐(0)
摘要: 网上很多基于Socket的聊天实现都是不完整的。。。结合自己的经验给大家分享一下,完整代码可以在GitHub里获取https://github.com/zz7zz7zz/android-socket-client 1.废话不多说,附主要的Client类package com.boyaa.push.lib.service;import java.io.IOException;import java.io.InputStream;import java.io.OutputStream;import java.net.InetSocketAddress;import java.net.Socket; 阅读全文
posted @ 2013-07-22 19:21 爱生活,爱编程 阅读(4568) 评论(0) 推荐(1)
摘要: 谨以此文献给那些常年在外打拼,无法常回家看看的IT人。2013年7月,请了一周的假,陪伴老妈,儿子以及我的小外甥一起回到了阔别两年的家乡。场景一:拿起铁锹和老爸一起除草,空气中弥漫着乡土的气息,至于身形,早已不是当年的“农家少年”。场景二:农家小院,不大的院子里要啥有啥,芸豆,黄瓜,茄子,韭菜,玉米,小葱等,绝对的绿色无农药残留。场景三:领着我的小外甥回到我的小学,狠狠地疯狂了一把。因为校舍是近年重建的所以特别的新,但是那蓝天,白云,大杨树和干净的土操场依旧是当年的感觉。场景四:大锅烧的香喷喷的土豆,城市里无法找到的味道。由衷的感谢辛劳的妈妈,儿时很多美好的记忆是无法和妈妈分开的。场景五:“勤 阅读全文
posted @ 2013-07-22 19:19 爱生活,爱编程 阅读(278) 评论(0) 推荐(1)
摘要: mina 服务器与 mina 客户端通讯的话,一、传递 String 时编解码工厂使用 mina 自带的 TextLineCodecFactory 即可;二、传递 java 对象或 byte[] 时编解码工厂使用 ObjectSerializationCodecFactory 即可。byte[] 实际上就相当于一个 java 对象,在 mina Object..CodecEncoder 的源码中可以清楚的看到,如果传递的不是一个实现了 Serializable接口的东西,在 encode 方法调用的时候是会抛出异常的。见如下代码:public void encode(IoSession ses 阅读全文
posted @ 2013-07-22 19:15 爱生活,爱编程 阅读(8891) 评论(1) 推荐(2)
摘要: 写给像我这样需要使用latex编写论文的小菜鸟,给出demo和注释,高级部分自己参透(默认你已经搭好环境)。1.搭论文架子demo1\documentclass[10pt,a4paper]{article}\usepackage[left=2cm,right=2cm,top=2cm,bottom=2cm]{geometry}\title{Count User Similarity on SMBP with LDA Model }\author{Hua Lu\thanks{Email:}\\Aalborg University\andYun Wang\thanks{Email:963807397 阅读全文
posted @ 2013-07-22 19:13 爱生活,爱编程 阅读(639) 评论(0) 推荐(0)
摘要: 始终为属性值加引号属性值应该始终被包括在引号内。双引号是最常用的,不过使用单引号也没有问题。在某些个别的情况下,比如属性值本身就含有双引号,那么您必须使用单引号,例如:name='Bill "HelloWorld" Gates'提示:使用空的段落标记 去插入一个空行是个坏习惯。用 标签代替它!(但是不要用 标签去创建列表。HTML 输出 - 有用的提示我们无法确定 HTML 被显示的确切效果。屏幕的大小,以及对窗口的调整都可能导致不同的结果。对于 HTML,您无法通过在 HTML 代码中添加额外的空格或换行来改变输出的效果。当显示页面时,浏览器会移除源代码中 阅读全文
posted @ 2013-07-22 19:11 爱生活,爱编程 阅读(191) 评论(0) 推荐(0)
摘要: Mina中的过滤器处于IoService与IoHandler之间,用于过滤每一个I/O事件。本文分析Mina中的过滤器是怎么串起来的?前面提到了IoFilter,FilterChain等接口和类,在分析过滤器链怎么串起来之前,有必要看一下这些接口和类之间的关系。 如上图所示: FilterChain是由一个个Entry串起来的,EntryImpl是Entry的实现;从EntryImpl中可以获取到Filter与NextFilter,NextFilter相当于那根线(指针);有两个特殊的Entry,里面的Filter分别是HeadFilter和TailFilter,我们添加的Filter都处于这 阅读全文
posted @ 2013-07-22 19:08 爱生活,爱编程 阅读(368) 评论(0) 推荐(0)
摘要: 循环队列 队列通常分为两类:一是动态链式队列(其核心思想为链表,只是少了链表的一些功能),二是静态(顺序)队列(其核心是用数组实现,准确一点讲是由向量空间来实现,向量空间好比是开辟的一块内存,由我们的指针来指向其地址)。顺序队列实际上是运算受限的顺序表,由于队列的队头和队尾的位置是变化的,通常设置两个指针front和rear分别指示队头元素和队尾元素在向量空间中的位置,它们的初值在队列初始化时均应置为0。由于入队和出队操作中,头尾指针只增加不减小,致使被删元素的空间永远无法重新利用。当队列中实际的元素个数远远小于向量空间的规模时,也可能由于尾指针已超越向量空间的上界而不能做入队操作。这种“假上 阅读全文
posted @ 2013-07-22 19:06 爱生活,爱编程 阅读(609) 评论(0) 推荐(0)
摘要: http://acm.hdu.edu.cn/showproblem.php?pid=1242 题意: Angel被传说中神秘的邪恶的Moligpy人抓住了!他被关在一个迷宫中。迷宫的长、宽不超过200。 迷宫中有不可以越过的墙以及监狱的看守。 Angel的朋友带了一些救援队来到了迷宫中。他们的任务是:接近Angel。我们假设接近Angel就是到达Angel所在的位置。 假设移动需要1单位时间,杀死一个看守也需要1单位时间。到达一个格子以后,如果该格子有看守,则一定要杀死。交给你的任务是,最少要多少单位时间,才能到达Angel所在的地方?(只能向上、下、左、右4个方向移动)Input ... 阅读全文
posted @ 2013-07-22 19:05 爱生活,爱编程 阅读(316) 评论(0) 推荐(0)
摘要: tyle="margin:20px 0px 0px; font-size:14px; line-height:26px; font-family:Arial; color:rgb(51,51,51)">数据段及所拥有的系统资源,如已打开的文件、I/O设备等。4) 系统开销创建和撤销时,进程开销比线程高。同步通信线程比进程容易。关于IPC(进程间通信)高级通信可归结为三类:共享存储器系统、消息传递系统、管道通信系统。管道(Pipe)及有名管道(named pipe):管道可用于具有亲缘关系进程间的通信,有名管道克服了管道没有名字的限制,因此,除具有管道所具有的功能外,它 阅读全文
posted @ 2013-07-22 19:03 爱生活,爱编程 阅读(260) 评论(0) 推荐(0)
摘要: 算法题排序算法选择排序 每一趟从待排序的数据元素中选出最小(或最大)的一个元素,顺序放在已排好序的数列的最后,直到全部待排序的数据元素排完。选择排序是不稳定的排序方法。插入排序 插入排序法,插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的有序数据,算法适用于少量数据的排序,时间复杂度为O(n^2)。希尔排序 希尔排序(Shell Sort)是插入排序的一种。是针对直接插入排序算法的改进。该方法又称缩小增量排序,因DL.Shell于1959年提出而得名。先取一个小于n的整数d1作为第一个增量,把文件的全部记录分成d1个组。所有距离为d1的倍数的记录放在同 阅读全文
posted @ 2013-07-22 19:01 爱生活,爱编程 阅读(623) 评论(0) 推荐(0)
摘要: http://acm.hdu.edu.cn/showproblem.php?pid=1015 Safecracker Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 6327Accepted Submission(s): 3160 Problem Description === Op tech briefing, 2002/11/02 06:42 CST === "The item is locked in a Kl... 阅读全文
posted @ 2013-07-22 18:59 爱生活,爱编程 阅读(223) 评论(0) 推荐(0)
摘要: 赤裸裸的现实数据表明哪怕项目的自动化系统做的再好,最终问题中的大多数还是得通过手工测试发现,对于更加敏捷的移动端测试,很有必要丰富测试方法与测试理论,而探索式测试就很适合敏捷式测试。1.缺陷预防和缺陷检测 测试人员更多的都是在关注缺陷检测上,主要任务也确实是缺陷检测上。读完此书的最大感想之一就是缺陷预防的重要性,尽管缺陷预防工作一般都是由开发人员完成。尽量减少错误并提高软件质量,主要有两大类技术:缺陷预防和缺陷检测缺陷预防工作的重要性: 一份预防往往等价于十份治疗! 软件和人的身体健康是一样的,当检测出有毛病了,就已经晚了,此时要付出的代价往往大的多,而若能好好地做好... 阅读全文
posted @ 2013-07-22 18:58 爱生活,爱编程 阅读(286) 评论(0) 推荐(0)
摘要: http://acm.hdu.edu.cn/showproblem.php?pid=1238 Substrings Time Limit : 2000/1000ms (Java/Other)Memory Limit : 65536/32768K (Java/Other) Total Submission(s) : 10Accepted Submission(s) : 6 Font:Times New Roman|Verdana|Georgia Font Size:←→ Problem Description You are given a number of case-sensitive... 阅读全文
posted @ 2013-07-22 18:54 爱生活,爱编程 阅读(229) 评论(0) 推荐(0)
摘要: Dijkstra算法是一种求单源最短路的算法,即从一个点开始到所有其他点的最短路。其步骤如下: c语言实现如下:(使用邻接矩阵存储) #include #include #define VERTEXNUM 6 //存放最短路径的边元素typedef struct edge{ int vertex; int value; struct edge* next;}st_edge;void createGraph(int (*edge)[VERTEXNUM], int start, int end, int value); void di... 阅读全文
posted @ 2013-07-22 18:52 爱生活,爱编程 阅读(337) 评论(0) 推荐(0)
摘要: http://acm.hdu.edu.cn/showproblem.php?pid=1072 Nightmare Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 5438Accepted Submission(s): 2700 Problem Description Ignatius had a nightmare last night. He found himself in a labyrinth with a ti... 阅读全文
posted @ 2013-07-22 18:50 爱生活,爱编程 阅读(164) 评论(0) 推荐(0)
摘要: 作为Android应用开发者,不得不面对一个尴尬的局面,就是自己辛辛苦苦开发的应用可以被别人很轻易的就反编译出来。Google似乎也发现了这个问题,从SDK2.3开始我们可以看到在android-sdk-windows\tools\下面多了一个proguard文件夹proguard是一个java代码混淆的工具,通过proguard,别人即使反编译你的apk包,也只会看到一些让人很难看懂的代码,从而达到保护代码的作用。下面具体说一说怎么样让SDK2.3下的proguard.cfg文件起作用,先来看看android-sdk-windows\tools\lib\proguard.cfg的内容:-op 阅读全文
posted @ 2013-07-22 18:47 爱生活,爱编程 阅读(213) 评论(0) 推荐(0)
摘要: 结束一周的紧张工作,难得的休息时光,坐在电脑前浏览博客、听听歌、看看大片,这也算是一种享受。 因为年度的开发任务已经开始了,所以最近会特别忙,新人的成长又没有想象中的好,经常在他们身上看到自己去年的影子,对什么都不了解,自己去学习这个框架又不知从何入手,问也不知怎么问。当时项目组也缺人,就这么加入项目,开始了不断地加班不断学习的过程。这种成长的经历记忆深刻。现在带新人,也会从去年自己的经历吸取教训,巴不得把自己了解的所有的东西都教给他们。 言归正传。上周一,一上班就接到任务,在这里暂且称其为A需求吧,是在原来的基础上根据用户要求变更的功能点,然后公司上下开了个小会讨论如何实现,最后决定让小杨. 阅读全文
posted @ 2013-07-22 18:46 爱生活,爱编程 阅读(313) 评论(0) 推荐(0)
摘要: 1.下载官方网站http://www.boa.org/我下载的是0.94.13版本2.解压tar -zxvf boa-0.94.13.tar.gz3.进入src目录./configure配置一下生成makefile文件4.修改makefileCC = gcc CPP = gcc -E改为CC = arm-none-linux-gnueabi-gcc CPP = arm-none-linux-gnueabi-gcc -E5.修改 src/compat.h #define TIMEZONE_OFFSET(foo) foo##->tm_gmtoff ->#define TIMEZONE_ 阅读全文
posted @ 2013-07-22 18:43 爱生活,爱编程 阅读(885) 评论(0) 推荐(0)
摘要: 1、先来看一下Xapian的介绍:Xapian的官方网站是http://www.xapian.org,这是一个非常优秀的开源搜索引擎项目,搜索引擎其实只是一个通俗的说法,正式的说法其实是IR(Information Retrieval)系统。Xapian的License是GPL,这意味着允许使用者自由地修改其源码并发布之。Xapian的中文资料非常少,可以说现在互联网上连一篇完整详细的Xapian中文介绍文档,更别说中文API文档了。 Xapian由C++编写,但可以绑定到Perl,Python,PHP,Java,Tcl,C#和Ruby甚至更多的语言,Xapian可以说是STL编程的典范,在这 阅读全文
posted @ 2013-07-22 18:42 爱生活,爱编程 阅读(1007) 评论(0) 推荐(0)
摘要: Android 入门学习心得-----------------环境配置以及一些文件的理解 Android 开发似乎早已经开始疯狂起来了,今天,也开始学习了Android的开发。首先,必须要面对的就是环境的配置和搭建。作为新手的话我建议去Google 的Android官网去直接下载ADT Bundle for Windows,其中已经集成了Eclipse+ADT Plugins+Android SDK Tools+Android PlatForm---Tools+The latest Android PlatForm+The latest Android Systems Image For E. 阅读全文
posted @ 2013-07-22 18:39 爱生活,爱编程 阅读(257) 评论(0) 推荐(0)