暂无个人介绍
JEB是一个功能强大的为安全专业人士设计的Android应用程序的反编译工具。用于逆向工程或审计APK文件,可以提高效率减少许多工程师的分析时间。 1.下载 csdn资源地址:http://download.csdn.net/detail/chuchus/9426005 2.使用 图2-1 用JEB打开apk,得到视图 图2-2 选择Decompiled Java标
不使用任何框架,最基础的UDP通信。 TCP不保证消息边界,但UDP保证消息边界。所以不用考虑拆包、黏包问题。 1.UDPServer java.net.DatagramSocket 代表UDP套接字。 java.net.DatagramSocket.DatagramSocket(int port) DatagramSocket的构造函数。 java.net.Datagra
WebSocket是HTML5规定的新协议。它允许服务端向客户端实时推送新消息;当然,客户端也可以通过websocket实时向server发消息。 应用场景:聊天。user1向user2发消息,用服务器中转,那么server就要向client实时推送。1.js部分 //建立连接 var url="ws://yichudu.com/yichuMessage/websocket/chat"
1.ExecutorService java.util.concurrent.ExecutorService 接口。用来设置线程池并执行多线程任务。它有以下几个方法。 Future<?> java.util.concurrent.ExecutorService.submit(Runnable task) 提交任务并执行,返回代表这个任务的future对象。在任务成功执行
1.配置参数 org.apache.http.impl.conn.PoolingHttpClientConnectionManager 类。用于管理httpClient连接池。调用默认构造函数即可得到。 org.apache.http.impl.conn.PoolingHttpClientConnectionManager.setMaxTotal(int max) 设置最大的连接数
1.Closeable与AutoCloseable接口 它们在JDK中的定义见下: public interface AutoCloseable {void close() throws Exception;/*since jdk1.7*/} public interface Closeable extends AutoCloseable {public void close() t
1.简介 hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能。 与传统关系数据库相比的优势是:能够处理海量数据。 劣势是:它只提供查询功能,不能增、删、改。涉及到分布式计算的任务分发,查询时间在分钟级,不能当实时工具用。 运行机理:将sql语句转换为MapReduce任务,让Hadoop处理。 2.查询语句 h
1.概念 k-折交叉检验,k-fold cross test. 一种检验机器学习效果的方法。k取值为10时就是10折交叉检验。将数据集均分成10份,做10次检验,取平均误差为最终误差。 第i次检验时将第i份数据作为测试集,其余(10-1=9)份数据作为训练集。 2.代码 顺着逻辑直接写出来的代码: 更优雅的代码如下:
1.jdk+IDE 推荐 jdk 1.8与eclipse。 2.IDE的groovy插件 按照以下菜单选择:help|install new software Groovy插件的地址:http://dist.springsource.org/release/GRECLIPSE/e4.4/ 注意4.4是eclipse的版本。 图2-1 eclipse中安装groovy插件
groovy ,[ˈgru:vi ] ,adj. 绝妙的 流行的; groovy是一个基于JVM的脚本语言,可以与java很好地结合、混用。 很好的介绍性文章:http://www.ibm.com/developerworks/cn/education/java/j-groovy/j-groovy.html 1.JVM脚本语言三巨头 可参照:http://www.ibm.com/
推荐系统的目标:根据用户的喜好,为不同的用户推荐不同的物品,促成更多的交易。 1.协同过滤 具有相似消费行为的人,可以相互推荐。比如用户a、b同时购买了手机,a又购买了手机壳,那么b也是手机壳的潜在买家。 往往需要一个物品评分矩阵R,元素ri,jr_{i,j}表示用户i对物品j的评分。一般采用5分制,从1(非常不喜欢)到5(非常喜欢)。形如: 表1.1 一个
tf*idf tf*idf,term frequency * inverse document frequency,词频 *逆向文档频率。 1.思想 TF-IDF是一种统计方法,用于评估某个词语在文档集合中的重要程度。 如果某个词语term在一篇文章中出现的频率TF高,并且在其他文章中很少出现,则认为这个词语具有很好的文档分类能力。 2.公式 tfij=t
1.工具 作业部落: www.zybuluo.com 非常给力,免费易用,还有客户端版本! 2.语法参考 2.1 数学公式 http://meta.math.stackexchange.com/questions/5020/mathjax-basic-tutorial-and-quick-reference
见表1. 来自互动百科 表1 希腊字母表
bootstrap是很好用的css框架,angularJS对其进行了集成。 项目主页:https://angular-ui.github.io/bootstrap/ 通常来讲,需要引入AngularJS,bootstrap.css。 1.tooltip angular已经封装好了tooltip这个指令。 <button tooltip='some words to s
1.简述 实现一个线程安全的集合并不难,难的是尽可能的消除并发带来的竞争瓶颈,提升效率。 所以JDK自带的并发类的意义与技术含量在于这里。 2.List 没有通用的实现类,只有一个使用场景受限的类:CopyOnWriteArrayList。 可移步:http://blog.csdn.net/chuchus/article/details/50250697。 3.Queue 可
1.定义 public class CopyOnWriteArrayList<E> implements List<E>, RandomAccess, Cloneable, java.io.Serializable{} CopyOnWriteArrayList是ArrayList 的一个线程安全的变体,其中所有修改操作(add、set等)都是通过对底层数组进行
1.定义 public class ConcurrentSkipListSet<E> extends AbstractSet<E> implements NavigableSet<E>, Cloneable, java.io.Serializable {} 明显地,我们的元素需要实现 comparable<E> 接口。
1.用户画像 用户画像其实就是用户的信息标签,把一个用户标签化。用户画像是产品分析受众核心的非常重要的部分。完成用户画像是需要考虑非常周全的一个体系,它包括获取用户的渠道,还有产品的使用场景,用户的数据维度,包括那些自然特征、情绪特征、社会特征还有消费特征等等,从这些可以基本的组合而成的标签。而自然特征延伸的一些其他属性,就需要根据产品的属性来判断。 自然特征:最基本的就是年龄、性别、
excel文件的后缀是.xls,它是二进制文件。 csv是文本文件,可用于excel打开,为人编写带来了方便。
1.netstat netstat -anop 查看ip:port的TCP/UDP类型、活动状态及所属进程。 1.1netstat命令的各种状态详解 3次握手过程状态: LISTEN: 这个也是非常容易理解的一个状态,表示服务器端的某个SOCKET处于监听状态,可以接受连接了。 SYN_SENT: 当客户端SOCKET执行CONNECT连接时,它首先发送SYN报文,因此也随
1. 去掉指定的行 1.使用正则表达式,将指定的行替换为空行。如指定的行的特征是以'false'字符串结尾,那么正则表达式就可以写为'^.*false$'。 2.将空行删掉。此时用的正则表达式为'^\s+',见图1-1. 图 1-1 删除空行 2. windows文件转linux 编辑|档案格式转换,选择相应项即可。 windows下的文本放到linux上后,有时会遇到
1.文件阅读命令 head:显示文件起始的若干行。 head -n x file tail:显示文件倒数的若干行。 tail -n x file 联合使用,查看第a行到第b行 head -n b file | tail b-a+1 tailf : 文本文件若有追加,实时显示。等价于 tail -f file,适用于查看日志文件。 cat:查看文件内容。
1. 需求 启动java程序要带很多参数,所以要脚本化。 停掉指定的程序,需要先用ps aux查出来pid,再对其进行kill。这两步操作期望用脚本完成。 重启该服务,即上面两个脚本的组合。 2. 启动例子 3.停止例子 4.重启例子
1.ip转char 下列程序有两个实用功能: 1.ip转32位char [] 2.给一个ip和一对<ip,掩码>,判断是否命中。 2.ip转long long ipv4ToLong(String ip) { String[] parts = ip.split("\\."); return (Long.parseLong(pa
非对称加密,即加密秘钥与解密秘钥不一样的加密算法。一般用公钥加密,私钥解密。基本思想 RSA是一种非对称加密算法,名字是三位发明人的名字首字母,没什么其他含义。 RSA的基本思想是大素数的乘积很难被因式分解,它涉及三个参数,n,e1,e2。 其中,n是两个大质数p、q的积,n的二进制表示的位数,就是密钥长度。 e1和e2是一对相关的值,e1可以任意取,但要求e1与(p-1)*(q-
代码 分析 它是 不稳定的 排序。 快速排序的时间主要耗费在划分(partition)上。 最坏情况也就是划分次数最多的情况,即每次划分基准元素都是当前无序区间中最大(或最小)的那个。此时退化为冒泡排序,复杂度为O(n^2) 最好情况下划分次数最少,每次划分后基准元素都在最中间。
使用场景:一个是公司的git服务器,一个是csdn的git服务器。什么是ssh? 这是一个应用层协议,同https类似都是为了保密。使用https或ssh方法都可以与git服务器通信,上传代码或下载代码。https需要每次输用户名密码(貌似这样),比较麻烦;ssh需要在客户端生成凭证(就是私钥与公钥),把公钥添加到服务器,就可以了。 1.生成多个ssh秘钥 ssh-keygen -t
一个tomcat可以部署多个域名,每个域名下又可以部署多个应用。 conf/server.xml 增加host节点即可。注意name属性不能乱填,要与浏览器地址栏的域名一致。a.b.com 与 b.com效果并不一样,二级域名也是域名的一部分。 一个例子: 图1 多个host节点示例 这样,tomcat就能根据地址栏的不同域名来定位到不同应用。 不重启tomcat情况下
1.简介 问:什么是代理? 答:有一个对象a,你想用另一个对象b来做他的代理,那么b叫做代理对象,a叫做被代理对象。 问:为什么要使用代理? 答:所以我们不再直接跟a打交道,只需跟代理对象打交道即可。代理对象可以为我们提供额外的或不同的操作。 按照代理对象的创建时期不同,可以分为两种。 静态代理,事先写好代理对象类,在程序发布前就已经存在了;动态代理,程序发布后,动态地创建代理
作业排期 某机器上需要处理n个作业,每个作业都有一个收益值p与完成期限d。每个作业均占时1个时间单位。 请你安排作业,得到最大收益。输入格式 n p0 p1 ... pn (收益值非递减排练) d0 d1 ... dn输出格式 总收益 作业序列(编号从0开始)输入样例 6 90 80 50 30 20 10 1 2 1 3 4 3输出样例 220[0, 1, 3, 4
hiho一下 HDOJ 要求类名为Main,不能含有package。
依赖 <dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version>1.4.1</version> </dependency> 代码
点亮原理 列选:高电平有效。 行选:低电平有效。 若一个点同时被行选与列选,则被点亮。8*8点阵 十进制x转换成二进制y,比如说5->00000101,那么这一行对应位置为‘1’的小灯被点亮。//每个元素代表8*8点阵的一行 short tab[8]={0x0f,0xe9,0xaf,0xe9,0xaf,0xa9,0xeb,0x11}; //"明" 字编码 16*16点阵
DP,Dynamic Programming. 背包问题是这样一类问题——背包有重量限制,要往背包里放物品。每样物品都有自己的价值v与重量w。问怎样放使得背包里物品的总价值最大。 参考文档:大牛之作-《背包问题九讲》 - 01背包:每样东西只有一个,要么放,要么不放,所以得名01背包 - 完全背包:每样物品都没有个数限制 - 不完全背包:不同物品的个数不尽相同
Bone Collector Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 40794 Accepted Submission(s): 16961 Problem Description Many year
《祝你生日快乐》
变量定义一定要全部放在开头。
时钟周期:最基本的时间单位。晶振频率:晶振用来决定时钟周期。51中的常见频率有11MHz等。兆赫兹,1兆=1百万。 机器周期:完成基础指令所需要的时间,51单片机通常为12个时钟周期。 定时器寄存器: 定时器一旦被启动,它就会在原来初值的基础之上自增,当计满时重新归0。51单片机的为16位,假设晶振频率为12MHZ,则计数器自增的时间t= 12*(1/12MHZ) = 1us。所以定
个税标准目前应该都用的是2011版。
uVision 百度即可下载。 界面见图1. 图1 uVision4 界面 注册 注册机下载地址: http://download.csdn.net/detail/decting/4720661 1.运行此注册机。 2.打开Keil uVision4软件。 3.File→License Management,复制 CID码。 4.将CID复制到CID格内。 5.点击
步进电机的输入是电脉冲信号,每当收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度。可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;还可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。 要想让步进电机持续转动,只能4拍或8拍驱动。 4拍: 正向:ab,a_b,a_b_,ab_; 反向:略。
1.变量监视 数据双向绑定是指模型与视图的绑定,在$scope.a依赖于$scope.b的情况下,当b变化时a是不会同步变化的。若想实现数据一致,需要使用$scope.$watch()函数。 比如下图所示应用,选择频道后,候选的计数器都是该频道下的计数器。 图1 计数器与频道是对应的 都是下拉列表 对应代码是: // watch $scope.$watch('co
题目见图1. 图1 题目要求 来源:同学给的某道在线笔试题。 分析:这么看不起java,不让用。 代码:
需要的文件 bootstrap.css ui-bootstrap-tpls.js 模态框 angular定制的bootstrap的模态框,可以方便地将视图与控制器绑定。 模块的定义与模块的控制器: //定义模块时引入依赖 angular .module('myApp', [ 'ui.bootstrap' ]); //定义控制器时传入依赖 angu
angular中的service叫做服务,用来封装常用的函数。就像java中的Util类一样。 定义 以PathUtil服务为例,定义见下: 'use strict'; /** * url的前缀固定,后缀会变,所以封装成服务,减少代码量 */ angular.module('myApp') .service('PathUtil', function PathUtil() {
AngularJS的内置指令总归是有限的,特别是我们需要操纵dom时,就需要自己编写directive。有这样一个场景,管理系统中切换状态,见图1. 图1 切换状态时的确认框效果 那么就可以定义指令“ng-confirm-click”,js: html: <td> <a ctrip-confirm-click ng-show="item.statu
toastr是一个消息提醒工具。 需要的文件 angular-toastr.js angular-toastr.css angular把toastr封装成一个module,使用更方便。 用法 //定义模块时引入依赖 angular .module('myApp', [ 'ui.bootstrap', 'toastr' ]); //定义控制器时传入
1.线程的状态 java的线程是通过java.lang.Thread类来实现的。 1.1创建 调用完构造函数后,线程就为创建状态。 1.2就绪 调用start()方法后,所处的状态。 1.3运行 正常的运行。 1.4阻塞 资源等待的状态。 1.5死亡 run()方法执行完毕后,该线程就死掉了。注意不能再次调用此线程的start()方法。 2.常用函数 jav
if 没什么好说的。 switch switch是可以用字符串进行匹配的。