Fork me on GitHub
摘要: K近邻算法和其他机器学习模型比,有个特点:即非参数化的局部模型。 其他机器学习模型一般都是基于训练数据,得出一般性知识,这些知识的表现是一个全局性模型的结构和参数。模型你和好了后,不再依赖训练数据,直接用参数去预测新的未知数据。 K近邻算法并不是预先计算出参数,而且对于特定的预测实例,K近邻预测只是 阅读全文
posted @ 2018-08-18 16:30 浪飞-louffy 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 转载: 一、好首先看看sizeof和strlen在MSDN上的定义:首先看一MSDN上如何对sizeof进行定义的:sizeof Operatorsizeof expressionThe sizeof keyword gives the amount of storage, in bytes, associated with a variable or a type (including aggregate types). This keyword returns a value of type size_t.The expression is either an identifier or 阅读全文
posted @ 2012-05-25 22:00 浪飞-louffy 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 常见的不不能声明为虚函数的有:普通函数(非成员函数);静态成员函数;内联成员函数;构造函数;友元函数。1、为什么C++不支持普通函数为虚函数?普通函数(非成员函数)只能被overload,不能被override,声明为虚函数也没有什么意思,因此编译器会在编译时邦定函数。2、为什么C++不支持构造函数为虚函数?这个原因很简单,主要是从语义上考虑,所以不支持。因为构造函数本来就是为了明确初始化对象成员才产生的,然而virtual function主要是为了再不完全了解细节的情况下也能正确处理对象。另外,virtual函数是在不同类型的对象产生不同的动作,现在对象还没有产生,如何使用virtual函 阅读全文
posted @ 2012-05-24 17:56 浪飞-louffy 阅读(227) 评论(0) 推荐(0) 编辑
摘要: 题目:有25匹马,一个5道的赛马场,最少比赛几次,能把这25匹马中的1,2,3名找出来,并排出1,2,3名?如何组织每次比赛?马可以重复赛,不考虑疲倦影响速度等其他问题。思路:首先肯定,25匹要分组赛。最容易掉入,也最容易识别的陷阱就是:5匹一组,赛5次,然后每组第一名再赛一次,总共六次,就ok了。这样的问题就在于又可能某组的第二名比其他4组的第一名都快。进而想到最坏的 可能就是,分组的时候把真正的前三名分到同一组了。问题的关键变成了第6次以后应该怎么挑选再赛的马5分钟左右,应该就能想到下面的正确思路。前6次就按照刚才的赛法,5次小组赛,一次各小组第一名赛,然后按各小组第一名在第六次比赛中的名 阅读全文
posted @ 2012-04-09 15:24 浪飞-louffy 阅读(2079) 评论(0) 推荐(0) 编辑
摘要: 题目:已知一个数组a[N],构造一个数组b[N],构造规则:b[i]=a[0]*a[1]*a[2]...a[N]/a[i]; 要求: 1、不可以使用除法; 2、时间复杂度为O(n),空间复杂度为S(0); 3、除遍历使用的变量外,不可以使用其它变量;从前往后扫一遍,然后从后往前再扫一遍。也就是说,线性时间构造两个新数组,B[i]=A[1]*A[2]*...*A[i],A[i]=A[n]*A[n-1]*...*A[i]。于是,B[i]=B[i-1]*A[i+1]。i=N和0特殊处理#include<stdio.h> int main() { int i, a[5]={... 阅读全文
posted @ 2012-04-09 14:46 浪飞-louffy 阅读(332) 评论(0) 推荐(0) 编辑
摘要: 卡特兰数h(n)=C(2n,n)/(n+1) (n=1,2,3,...) 前几项为 (OEIS中的数列A000108): 1, 1, 2, 5, 14, 42, 132, 429, 1430, 4862, 16796, 58786, 208012, 742900, 2674440, 9694845, 35357670, 129644790, 477638700, 1767263190, 6564120420, 24466267020, 91482563640, 343059613650, 1289904147324, 4861946401452, ...1,括号化 矩阵链乘: P=a1 阅读全文
posted @ 2012-04-08 22:37 浪飞-louffy 阅读(373) 评论(0) 推荐(0) 编辑
摘要: 时间复杂度nlogn,空间复杂度nlmin[k]表示前i个元素中长度为k的所有递增子序列的最后一个元素的最小值。#include<stdio.h>#define N 10 int lmin[10]; //找到==或者大于e的第一个数的位置 int bsearch(int a[],int p,int r,int e) { int m; while(p<=r) { m=(p+r)>>1; if(a[m]>e)r=m-1; else if(a[m]<e)p=m+1; else return m; } return p;//返回大于的第一个数位置 //retu 阅读全文
posted @ 2012-04-08 22:01 浪飞-louffy 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 1,循环链表方法建立一个具有n个链结点,无头结点的循环链表;确定第1个报数人的位置;不断地从链表中删除链结点,直到链表为1结点。2,数组模拟,出去的置03,数学方法,只能输出最后的代码1/* 1,构建循环链表 l为为结点 p为头结点 p=l-》next; 2,循环删除,直到剩下最后一个结点 while(p-》next=p) 删除s,p-》next=s p-》next=s-》next; free(s); s=p-》next; */ #include<stdio.h> #define N 3 struct node{ int a; struct node *next; }; int m 阅读全文
posted @ 2012-04-03 15:52 浪飞-louffy 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 1,n[ ]for(j=1;j<strlen(p);j++){//abababc 0//不同时,k=4!=c//k=n[4]=3!=c//k=2!=c//k=1!=c//k=n[1]=0,<=0while(k>0&&p[k]!=p[j])k=n[k];//开始k=0,和p0比较,相同则有一个相同//a 0//ab 0//aba 1//abab 2 有2个相同//ababab 4//abababc 0if(p[k]==p[j])k++;n[j]=k;}2,kmpfor(i=0;i<strlen(t);i++){//不匹配时,指针回退,但是会跳过前缀后缀相同 阅读全文
posted @ 2012-03-28 21:54 浪飞-louffy 阅读(140) 评论(0) 推荐(0) 编辑
摘要: 1,在双括号结构中,所有表达式可以像c语言一样,如:a++,b--等,所有变量可以不加入:“$”符号前缀。双括号结构 扩展了for,while,if条件测试运算 例子#((RANDOM%num_s)) for((j=1;j<=6;j++)) do echo -n ${seqrand[j]} done 阅读全文
posted @ 2012-02-14 11:15 浪飞-louffy 阅读(171) 评论(0) 推荐(0) 编辑