现在位置: 首页 > quid发表的所有文章
  • 06月
  • 04日
综合 ⁄ 共 6037字 评论关闭
  CRF简介 Conditional Random Field:条件随机场,一种机器学习技术(模型) CRF由John Lafferty最早用于NLP技术领域,其在NLP技术领域中主要用于文本标注,并有多种应用场景,例如: 分词(标注字的词位信息,由字构词) 词性标注(标注分词的词性,例如:名词,动词,助词) 命名实体识别(识别人名,地名,机构名,商品名等具有一定内在规律的实体名词) 本文主要描述如何使用CRF技术来进行中文分词。 CRF VS 词典统计分词 基于词典的分词过度依赖词典和规则库,因此对于歧义词和未登录词的识别能力较低;其优点是速度快,......
阅读全文
  • 05月
  • 31日
操作系统 ⁄ 共 1150字 评论关闭
文章目录 打包文件夹 设置权限 设置用户,组 查看和修改时间 查看目录使用空间 tar打包 目录搜索字符串: 查看centos版本 查看php版本 查看apache版本 查看mysql版本 常用操作 打包文件夹 tar -zcvf /home/xahot.tar.gz /xahot tar -zcvf 打包后生成的文件名全路径 要打包的目录 设置权限 chmod  777  /root   #设置权限为777 设置用户,组 Su  root  #切换用户组 添加用户  useradd  open     #设置用户open 设置密码  passwd  open     #设置open密码 ,为空则是当前用户......
阅读全文
  • 12月
  • 17日
综合 ⁄ 共 2363字 评论关闭
世界十大经典算法之一,由Blum 、 Floyd 、 Pratt 、 Rivest 、 Tarjan提出,这个算法也解了我之前的对某问题的疑惑。 说个题外话,曾经面试的时候被问到的是如何在n个数中找出第二大的数,抽象下就是求n个数中第k大(小)的数。当时想到的算法是取前k个排序,保存在数组中,然后遍历后n-k,并将每次遍历的数与数组中的k个值比较并重新排序。时间复杂度o(kn),如果k小还好说,但是k大了就不好办了。而BFPRT则在线性时间解决了这个问题。 算法思想类似与快排,找出pivot,如果pivot == k,说明找到了; 如果pivot < k,就在[pivot......
阅读全文
  • 10月
  • 04日
综合 ⁄ 共 1554字 评论关闭
    #include <windows.h> #include <iostream> #include <vector> #include <algorithm> using namespace std; #define VEC_COUNT 3 void main(int argc,TCHAR*argv[]) { //1.构造函数 vector<int>vec1,vec2; //vector<int> vec(VEC_COUNT); //有VEC_COUNT个元素,值都为0 //vector<int> vec(VEC_COUNT,2); //有VEC_COUNT个元素,值都为2 //2.添加元素 vec1.push_back(0); vec1.push_back(4); vec2.push_back(0); vec2.push_back(3); vec2.push......
阅读全文
  • 06月
  • 10日
综合 ⁄ 共 3088字 评论关闭
android有两种search模式search dialog和search widget。下面就这两种模式和这两种模式的自定义的样式讲解。   1.Search Dialog Dialog就是对话框的意思。这种模型呈现的方式就是在屏幕顶端弹出一个输入框,他和dialog一样,点击屏幕以及按返回键这个search控件会消失,新版微信主界面的搜索功能就是一个search dialog。实现一个search dialog需要以下几个步骤: A.在res/xml下创建一个searchable文件 <?xml version="1.0" encoding="utf-8"?> <searchable xmlns:android="http://schemas.android.com/apk/res/android" ......
阅读全文
  • 05月
  • 10日
综合 ⁄ 共 4585字 评论关闭
var tbl; var status = 0; var timer; var score = 0; var board = new Array(18); for(var i=0;i<18;i++){ board[i] = new Array(10); } for(var i=0;i<18;i++){ for(var j=0; j<10; j++){ board[i][j] = 0; } } var activeBlock; function generateBlock(){ activeBlock = null; activeBlock = new Array(4); var t = (Math.floor(Math.random()*20)+1)%7; switch(t){ case 0:{ activeBlock[0] = {x:0, y:4}; activeBlock[1] = {x:1, y......
阅读全文
  • 04月
  • 23日
综合 ⁄ 共 2012字 评论关闭
无论是用链表实现还是用数组实现都有一个共同点:要模拟整个游戏过程,不仅程序写起来比较烦,而且时间复杂度高达O(nm),当n,m非常大(例如上百万,上千万)的时候,几乎是没有办法在短时间内出结果的。我们注意到原问题仅仅是要求出最后的胜利者的序号,而不是要读者模拟整个过程。因此如果要追求效率,就要打破常规,实施一点数学策略。   为了讨论方便,先把问题稍微改变一下,并不影响原意:   问题描述:n个人(编号0~(n-1)),从0开始报数,报到m-1的退出   ,剩下的人继续从0开始报数。求胜利者的编号。   我......
阅读全文
  • 04月
  • 16日
综合 ⁄ 共 3116字 评论关闭
一.线程/进程 进程:资源管理的最小单位 线程:执行任务的最小单位 内核线程:内核空间创建,类似用户进程,但运行期间不能被抢断 用户线程:用户空间创建,拥有进程上下文,可调度可睡眠   二.内核线程的同步原因 @中断:几乎可以在任何时刻发生,随时打断当前执行的代码; @睡眠和与用户空间的同步:内核线程的睡眠,会唤醒调度程序,从而导致新用户进程执行; @对称对处理:多个cpu可以同时执行代码; @内核抢断:2.6以后,内核具有抢占性,内核中的任务可以被另一任务抢占;   三.工作队列和tasklet的选择 需要睡眠的任务—wq......
阅读全文
  • 04月
  • 08日
综合 ⁄ 共 11434字 评论关闭
如果能时光倒流,回到过去,作为一个开发人员,你可以告诉自己在职业生涯初期应该读一本,你会选择哪本书呢?我希望这个书单列表内容丰富,可以涵盖很多东西。” 很多程序员响应,他们在推荐时也写下自己的评语。以前就有国内网友介绍这个程序员书单,不过都是推荐数 Top 10的书。其实除了前10本之外,推荐数前30左右的书籍都算经典,伯乐在线整理编译这个问答贴,同时摘译部分推荐人的评语。下面就按照各本书的推荐数排列。   1. 《代码大全》 史蒂夫·迈克康奈尔 推荐数:1684 “优秀的编程实践的百科全书,《代码大全》注......
阅读全文
  • 04月
  • 07日
综合 ⁄ 共 1885字 评论关闭
复制文件FileStreamDemo.java的内容至文件file.txt文件,并显示输出 file.txt文件内容   package sky;import java.io.*;public class FileStreamDemo...{    public static void main(String[] args)...{        try...{            byte[] buffer=new byte[1024];            //源文件            FileInputStream fis=new FileInputStream(new File("FileStreamDemo.java"));            //目的文件            FileOutputStream fos=new FileOutputStream(new File("file.txt"));            System.out.println("复制文件: "+f......
阅读全文
  • 04月
  • 04日
综合 ⁄ 共 6828字 评论关闭
    在Android中,提供了一个ActivityGroup类,该类是Activity的容器,可以包含多个嵌套进来的Activity,我们接下来将采用源码分析的方式来了解该类的内部实现。     首先,从SDK中和源码中都可以获知,ActivityGroup类的父类是Activity,也就是说二者具有相同的接口和生命周期,同Activity一样,也有onCreate()、onPause()等函数可供我们重载。          在ActivityGroup的源代码中有成员变量 protected LocalActivityManager mLocalActivityManager;     该成员变量在ActivityGroup的构造函数中创建并初始化,可见,Activi......
阅读全文
  • 02月
  • 15日
综合 ⁄ 共 2896字 评论关闭
c++提供了异常处理机制。 它的优点: (1)正常流程与异常流程分开处理。逻辑上更清晰。 (2)不使用异常机制,就要在调用函数堆栈中一系列函数中编写大量判断语言,干扰正常流程逻辑。 实际测试代码  见 http://blog.csdn.net/zjplus/article/details/2541143 //normal.cpp #include <iostream> #include <ctime> using namespace std; void normal(const int count) { long k = 0; clock_t start = clock(); for (int j=0; j<count; j++) { k++; k = k % count; } clock_t end = clock(); double la......
阅读全文