很多时候算法没有搞明白其实是一堆符号没有明白是神马意思...所以本文,着重告诉大家,这堆符号,到底都,代表神马!
我就奇怪了,谁发明了这么多符号(——多么希望是我-.-
以下使用到的图片来自上海交大杨旸老师的课件,网址如下:http://bcmi.sjtu.edu.cn/~yangyang/ml/
我们首先来宏观认识一下EM算法。其实EMs就是K-means的升级版,也是...
分类:
编程语言 时间:
2016-05-07 11:17:09
阅读次数:
470
我们都知道在主线程(即UI线程)要发送消息的话,只需要创建一个Handler即可,但你试下在子线程里面创建一个Handler,然后发送消息,你会发现程序报如下异常了,“can't create handler inside thread that has not called Looper.prepare();”
new Thread(new Runnable() {
@Overr...
分类:
移动开发 时间:
2016-05-07 11:16:59
阅读次数:
204
一.概述从今天开始,我们介绍一下线程中的一些知识点,我会通过具体的一些案例来告诉大家如何在实际开发中使用多线程。先看一张效果图
二.实现我们先看看布局文件,这里只讲一下进度条以及两个控制按钮的样式是如何实现的 <ProgressBar
android:id="@+id/progressBar"
style="?android:attr/progressBarSty...
分类:
编程语言 时间:
2016-05-07 11:17:48
阅读次数:
216
??
Adjacent Bit Counts
时间限制:1000 ms | 内存限制:65535 KB
难度:4
描述
For a string of n bits x1, x2, x3, …, xn, the adjacent bit count of the string is given by fun(x) = x1*x2 + x2*x3 +...
分类:
其他好文 时间:
2016-05-07 11:16:48
阅读次数:
237
参考阮一峰的书籍ECMAScript 6 入门,感谢阮大神!
let和const命令let命令
ES6新增了let命令,用来声明变量。它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。基本用法
var a = [];
for (var i = 0; i < 10; i++) {
a[i] = function () {
console.log(i);
};...
分类:
其他好文 时间:
2016-05-07 11:17:44
阅读次数:
195
搞ACM大多数是使用C++,用java开发后总感觉对数据处理及输入输出控制不适应,仔细一想,其实是java没有指针的锅。在C++中,如果要实现结构体的自定义排序是非常简单的。#include
#include
#include
#include
#include
#include ...
分类:
编程语言 时间:
2016-05-07 11:16:33
阅读次数:
146
Python函数
(1)isinstance,来判断一个对象是否是一个已知的类型。
isinstance说明如下:
isinstance(object, class-or-type-or-tuple)-> bool
isinstance(x, (A, B, ...))
其第一个参数为对象,第二个为类型名或类型名的一个列表。其返回值为布尔型。
若对象的类型与参数二的类型相同则返...
分类:
编程语言 时间:
2016-05-07 11:16:55
阅读次数:
154
1. 概述
后缀数组是一种解决字符串问题的有力工具。相比于后缀树,它更易于实现且占用内存更少。在实际应用中,后缀数组经常用于解决字符串有关的复杂问题。
本文大部分内容摘自参考资料[1][2]。
2. 后缀数组
2.1 几个概念
(1)后缀数组SA 是一个一维数组,它保存1..n 的某个排列SA[1],SA[2],……,SA[n],并且保证Suffix(SA...
分类:
编程语言 时间:
2016-05-07 11:15:05
阅读次数:
224
当队列中某个对象优先级比其他对象更高时候,需要比其他对象先出队列而不管所在的位置时候,需要使用优先队列。
有如下的实现方法
- 插入在对尾,出队时候遍历整个队列
- 插入时即进行排序,出队时候固定在队首或者对尾
- 使用二叉查找树
- 使用二叉堆
往往在最后的最重要
堆是完全二叉树,使用数组就可以很好的实现。(vector更好,不需要再扩容)template ...
分类:
编程语言 时间:
2016-05-07 11:17:51
阅读次数:
156
(一)
直接插入排序(Straight Insertion Sorting)的基本思想:在要排序的一组数中,假设前面(n-1) [n>=2] 个数已经是排好顺序的,现在要把第n个数插到前面的有序数中,使得这n个数也是排好顺序的。如此反复循环,直到全部排好顺序。
复杂度:时间复杂度 O(n2)
,空间复杂度O(1)
稳定性: 插入排序是稳定的,排序前后两个相等元素相对次序不变(能...
分类:
编程语言 时间:
2016-05-07 11:15:51
阅读次数:
268
安装依赖的库sudo apt-get install build-essential
// 必须的,gcc编译环境
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
// 必须的,包括cmake等工具sudo apt-get ins...
分类:
系统相关 时间:
2016-05-07 11:16:12
阅读次数:
430
STL实践与分析
--再谈迭代器【下】
三、反向迭代器【续:习题】
//P355 习题11.19
int main()
{
vector iVec;
for (vector::size_type index = 0; index != 10; ++index)
{
iVec.push_back(index);
}...
分类:
编程语言 时间:
2016-05-07 11:15:51
阅读次数:
269
如果我们已经训练好了一个CNN模型,怎么去利用这个模型去测试呢?以及怎么去看每一层的输出结构呢?基于python可视化可以实现,这些都集成在了caffe-master/python中...
分类:
其他好文 时间:
2016-05-07 11:16:57
阅读次数:
423
Dubbo采用微内核+插件体系,使得设计优雅,扩展性强。那所谓的微内核+插件体系是如何实现的呢!大家是否熟悉spi(service provider interface)机制,即我们定义了服务接口标准,让厂商去实现(如果不了解spi的请谷歌百度下), jdk通过ServiceLoader类实现spi机制的服务查找功能。
JDK实现spi服务查找: ServiceLoader
首先...
分类:
其他好文 时间:
2016-05-07 11:15:01
阅读次数:
150
需求:
服务器传回来XML数据,需要对XML数据进行解析,生成
建立自己的资源库...
分类:
编程语言 时间:
2016-05-07 11:14:08
阅读次数:
109
在机房收费系统中自我感觉上机是需要条件判断最多的一个功能,要判断:1、卡号是否存在;2、密码是否正确;3、该卡是否能用;4、该卡是否已经上机;5、卡里面是不是有钱。暂时仅我自己就能想到了这么多判断,如果还是按照以前的写法的话,要写多少的if...else...呢,全都罗列在一起也不符合面向对象的思想,所以,就可以用到状态模式来解决这个问题。
状态模式
当一个对象的内在状态改...
分类:
其他好文 时间:
2016-05-07 11:14:40
阅读次数:
147
摘要:
Robot Framework是一款python编写的功能自动化测试框架。具备良好的可扩展性,支持关键字驱动,可以同时测试多种类型的客户端或者接口,可以进行分布式测试执行。主要用于轮次很多的验收测试和验收测试驱动开发(ATDD)。正文:
1.环境搭建
1.1 robotframework安装:pip install robotframework
1.2 RIDE就是一个图形界面的用于...
分类:
其他好文 时间:
2016-05-07 11:14:30
阅读次数:
1293