自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Simple Way

精益精神

  • 博客(28)
  • 收藏
  • 关注

原创 博客转移

本博客不再更新,将转移到:http://blog.csdn.net/cnweike

2011-09-15 23:47:55 435

原创 C语言常见排序算法

#include void swap (int *x, int *y){    int temp;    temp = *x; *x = *y; *y = temp;}// 插入排序 升序void insertsort(int arr[], i

2011-09-15 17:39:49 682

翻译 Lisp.定义函数

多数人通过defun来学习怎样定义函数。下面的表达式定义了一个叫做double的函数,这个函数返回它参数的两倍。[1]> (defun double (x) (* x 2))DOUBLE将这些传递给Lisp之后,我们可以在其它函数中调用double,或者直接在最高

2011-09-13 23:10:46 5502

翻译 Lisp.函数作为数据

两样东西使得Lisp函数不同。第一,上面提到的,Lisp自身就是一个函数的集合。这意味着我们可以向Lisp中加入我们自己的操作符。另外一个我们需要知道的关于函数的东西是它们是Lisp对象。Lisp提供了其它语言中能找到的多数的数据类型。我们知道整形和浮点型数字,字符串

2011-09-12 13:47:51 885

翻译 Lisp.函数

函数是Lisp程序的构建块。它们也是Lisp的构建块。在多数的语言中+操作符和用户自定义函数是非常不同的。但是在Lisp中有一个单一模型,函数应用,来描述一个程序所要做的全部计算。Lisp的+操作符是一个函数,和你自己定义的函数一样。事实上,除了一小部分叫做特殊形式的

2011-09-12 12:51:28 592

翻译 Lisp.为什么使用Lisp

这些新的可能性并不是来自于一个新的神奇元素。在这个方面,Lisp就像是一个架构。到底是哪块楔形的石头(拱石)来管控这个架构呢?这个问题本身就是错误的;它们都在做。像一个架构,Lisp是一个连锁特征的集合。我们可以列出其中的一些特征——动态存储分配和垃圾回收,运行时类型,作为对象的

2011-09-12 00:19:03 962

翻译 Lisp.扩展Lisp

有两种方式来给Lisp添加新的操作符:函数和宏。在Lisp中,你定义的函数和内置的那些有一样的状态。如果你想要一个mapcar的变体,你可以自己定义一个,并像使用mapcar一样使用它。比如,如果你想要一个函数应用于1到10的变量后返回的一列值,你可以创建一个新的列表并将它传递给

2011-09-11 13:03:40 920

翻译 Lisp.可扩展的软件

Lisp风格的编程是随着软件复杂度的增长而增长的。高端用户现在要求程序做那么多的事情,以至于我们不能满足他们所有的需求。他们自己也不能完全满足他们自己的需求。但是如果我们不能给他们满足他们完全需求的软件,我们可以给他们可扩展的软件。我们将我们的软件从一个单一的程序编程一个编程语言

2011-09-10 15:46:51 674

翻译 Lisp.自下而上的编程

一个程序的函数元素不能太大是一个长期存在的编程风格原则。如果程序的某些组件增长到读难以理解的成都,它就变成一大堆的复杂东西,它们隐藏错误就像一个大城市隐藏逃亡者一样简单。这样的软件将很难读、很难测试、很难杀臭虫。遵循这个原则,一个大的程序必须被分成很多片,一个程序越大

2011-09-10 15:06:00 834

翻译 Lisp.演进设计

因为Lisp给你自己定义你自己操作符的自由,你可以把它铸造成适合你需求的语言。如果你正在写一个文本编辑器,你可以将Lisp转化成一个写编辑器的语言。如果你正在写一个CAD程序,你可以将Lisp转化成写CAD程序的语言。如果你不知道你在写什么类型的程序,使用Lisp也是安全的尝试。

2011-09-09 19:11:10 593

翻译 Lisp.可扩展的语言

不久前,如果你问LISP是用来做什么的,许多人将回答:“做人工智能的”。事实上,Lisp和AI的关系仅仅是一个历史的巧合。John Mcarthy发明了LISP,他也提出了了“人工智能”的概念。他的学生和同事都用LISP来写程序,然后LISP就被称为一门AI语言。这条线在20世纪

2011-09-09 17:42:10 723

原创 R语言,一些数据操作

我们首先创建一些向量> manager > date > contry > gender > age > q1 > q2 > q3 > q4 > q5 然后我们把这些向量组成一个数据帧> leadership > leade

2011-08-31 15:46:50 917

翻译 R语言,图形

本章包含:创建和保存图个性化符号、线、颜色和坐标轴用文本和标题注释控制一个图的维度合并多个图到一个很多时候,我想客户通过数字和文字展示精心准备好的统计结果,得到的只是他们发呆的样子。同样的客户,当我以图形的形式展示给他们同样的信息的时候,通常得到的

2011-08-29 22:53:25 4876

原创 Canopy聚类算法说明

Canopy聚类算法是一个将对象分组到类的简单、快速、精确地方法。每个对象用多维特征空间里的一个点来表示。这个算法使用一个快速近似距离度量和两个距离阈值 T1>T2来处理。基本的算法是,从一个点集合开始并且随机删除一个,创建一个包含这个店的Canopy,并在剩余的点集合上迭代。对

2011-08-04 14:11:36 5085

原创 C语言实现二分查找算法

#include int binsearch(int x, int v[], int n){  int low, high, mid;  low = 0;  high = n - 1;  while (low     mid = (low + high) / 2;    if (

2011-07-10 16:22:31 954

翻译 Hadoop 任务分解

<br />从高层看,有四个独立的实体:<br /> <br />- 客户端,提交MapReduce任务<br />- jobtracker,协调任务的运行。jobtracker是一个Java应用,它的主类是JobTracker<br />- tasktrackers,运行被分割的任务。tasktrackers是一个Java应用,它的主类是TaskTracker<br />- 分布式文件系统(通常是HDFS),用来在其它实体之间共享文件<br /> <br />Job提交<br /> <br />JobCl

2011-04-22 10:38:00 2479

翻译 MapReduce工作流

当处理变得非常复杂的时候,复杂性通过更多MapReduce任务,而不是更多的map和reduce函数来适应。换句话说,作为一个经验规则,考虑添加更多的jobs,而不是添加更多的复杂性给jobs。对于更复杂的问题,值得考虑高层语言来代替MapReduce,像是Pig,Hive或者是Cascading。一个显而易见的好处是,这把你从把问题翻译成MR任务的过程中解放出来,允许你精力放在本身算法上。将问题分解为MapReduce任务让我们看一个更加复杂的问题,我们将它转换为一个MapReduce工作流。假如我们想要

2011-04-19 15:14:00 1060

翻译 Node.js——梗概

一个用Node写成的web服务器,返回“Hello World”:var http = require('http');http.createServer(function(request, response){response.writeHead(200, {'Content-Type':'text/plain'});response.end('Hello World/n');}).listen(8124)console.log('Server running at http://127.0.0.1:81

2011-04-18 14:51:00 516

翻译 关于Node.js

<br />Node的目标是为构建可扩展的网络程序提供一种简单的方式。在上面的 “hello world”web服务器示例中,很多客户端连接可以被并行处理。Node告诉操作系(通过epoll,kqueue,/dev/pool,或者是select),当一个新的连接创建时它应该被通知,然后就sleep。如果一些新人的来连接,然后它就执行回调。每个连接仅仅是一个小的堆分配。<br /> <br />这和当今常用的并发模型相反,现在的并发模型是使用操作系统线程。基于线程的网络是低效的并且很难使用。Node将在高负载

2011-04-15 13:34:00 706

原创 JavaScript计算日期的函数

<br />注意:Date对象获得的月份是从0开始记的,这个让我耽误了不少时间:<br /> function addDays(nd){    var day = new Date();    var newtimems = day.getTime() + (nd * 24 * 60 * 60 * 1000);    day.setTime(newtimems);    var xyear = day.getFullYear();    var xmonth = day.getMonth

2011-04-04 21:17:00 500

原创 C语言统计每行的字符数

<br />#include<limits.h><br />#include<stdio.h><br /><br />#define MAXLINE 1000<br /><br />int getxline(char s[], int lim)<br />{<br />    int c, i;<br />    for(i = 0; i < lim-1 &&(c = getchar()) != EOF && c != '/n'; ++i)<br />        s[i] =

2011-04-04 21:14:00 847

原创 C语言外度变量

<br />下面的例子将两个通用的函数给特化了,这种情况下不应该使用外部变量,仅仅作为说明:<br /> <br />#include<stdio.h><br /><br />#define MAXLINE 1000<br /><br />int max;<br />char line[MAXLINE];<br />char longest[MAXLINE];<br /><br />int getxline();<br />void copy();<br /><br />int

2011-04-04 18:32:00 610

原创 C语言实现指数计算

这个问题的关键点在确定初始值#includeint power(int m, int n);int main(){    int i;    for(i = 0; i         printf("%d %d %d/n", i, power(2, i), power(-3, i));    return 0;}int power(int base, int n){    int i, p;    p = 1;    for(i = 1; i     

2011-04-03 20:39:00 10772

原创 C语言统计输入行数、单词数、字符数

这个问题的关键在于统计单词的个数:状态的转变定义了一个单词#include#define IN 1#define OUT 0main(){    int c, nl, nw, nc, state;    state = OUT;    nl = nw = nc = 0;    while((c = getchar()) != '0')    {        ++nc;        if(c == '/n')            ++nl;      

2011-04-03 11:30:00 1885 1

原创 C语言替换特定字符

<br />这个问题的思路应该从字符从字符的角度展开,不能一蹴而就。<br /> <br />int execise3()<br />{<br />    int c; // the character currently input<br />    while((c = getchar()) != '0')<br />    {<br />        if(c == '/t')<br />        {<br />            putchar('//');<

2011-04-03 11:20:00 807

原创 C语言去除特定字符

这个是C编程语言中的一个题目,一开始看上去这个很无从下手,其实最重要的是把握问题的本质:状态。根据不同的状态做出不同的操作。以下是第一遍思路实现的结果,显然有很多应该去掉的代码。int execise2(){    int c;    int b = 1; // 0 for blank and 1 for non-blank    while((c = getchar()) != '0')    {        if(c == ' ' && b == 1)        {

2011-04-03 11:00:00 1273

原创 C语言计算字符个数

#includeint main(){    long nc;    nc = 0;    while(getchar() != '0')        {            ++nc;        }    printf("%ld/n", nc);}gcc char_counting.c -o char_counting.o一种通常的调用方式:[root@myhost c]# ./char_counting.o 123450[回车]6通过linux

2011-04-02 00:10:00 1561

原创 jquery.cookie.js的使用

$.cookie(‘the_cookie’); // 读取 cookie$.cookie(‘the_cookie’, 'the_value’); // 存储 cookie$.cookie(‘the_cookie’, 'the_value’, { expires: 7 }); // 存储一个带7天期限的 cookie$.cookie(‘the_cookie’, '', { expires: -1 }); // 删除 cookie

2011-02-26 15:08:00 499

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除