算法
880露露088
IDEA sde,Microsoft China, SDE, Cloud Computing.
展开
-
Algorithm - Union Find
public class UnionFind { static class QuickFindUF { // id[i] is int[] id; /** * Initialize data structure */ QuickFindUF(int N) { id = new int[N]; for (int i = 0; i < N; i++) { id[i] = i; } } /** * p and q are co...原创 2021-12-20 01:41:33 · 183 阅读 · 0 评论 -
推荐系统
推荐系统使用了一系列不同的技术,主要可以分为以下两类:基于内容(content-based)的推荐。主要依据的是推荐项的性质。基于协同过滤(collaborative filtering)的推荐。主要依据的是用户或者项之间的相似性。基于协同过滤的推荐系统用可以分为两类:基于项(item-based)的推荐系统。主要依据的是项与项之间的相似性。基于用户(user-based)的推荐系统。主要依据的是...原创 2018-05-06 23:20:40 · 565 阅读 · 0 评论 -
算法
1.k-近邻算法(kNN):选择k(k优点:精度高、对异常值不敏感、无数据输入假定。缺点:计算复杂度高、空间复杂度高。适用数据范围:数值型和标称型。2.逻辑回归3.决策树 :重点在于选择哪一个属性作为分裂属性。优点:计算复杂度不高,输出结果易于理解,对中间值的缺失不敏感,可以处理不相关特征数据。缺点:可能会产生过度匹配问题。适用数据类型:数值型和标称型。分裂原创 2017-12-11 22:19:48 · 214 阅读 · 0 评论 -
决策树理论
决策树(理论篇) 定义 由一个决策图和可能的结果(包括资源成本和风险组成),用来创建到达目的的规划。——维基百科通俗理解 给定一个输入值,从树节点不断往下走,直至走到叶节点,这个叶节点就是对输入值的一个预测或者分类。算法分类ID3(Iterative Dichotomiser 3,迭代二叉树3代)历史转载 2017-12-12 18:14:52 · 1247 阅读 · 0 评论 -
求无序数组中的三个数的最大乘积
import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int n = in.nextInt(); int[] arr=new int[n];原创 2017-08-01 22:49:09 · 2303 阅读 · 1 评论 -
用杯子量水问题通用解法
用杯子量水问题通用解法 园子里有朋友提到这个问题,相信各位都见过这种题,有时面试也会碰到。 解题方法有很多,有人靠猜、穷举、倒推,在倒水次数很多的情况下,就会比较麻烦了。 早些年的时候我得出了一种通用而简单的解此类题目的方法。 以一个5升一个6升杯子倒3升水为例,这两个杯子根据装的水量不同,共有22种状态,而加水倒水的过程就是在这些状态之间切换的过程转载 2017-07-17 22:03:09 · 6754 阅读 · 0 评论 -
01背包问题-动态规划
nameweightvalue12345678910a26066991212151515b23033669991011c65000666661011d5转载 2017-06-04 22:28:53 · 372 阅读 · 0 评论 -
关于链表的算法
检查图是否有环:深度优先遍历检查链表是否有环:两个指针,一个跑的快一个跑的慢,有环就会在一圈内相遇。原创 2016-10-01 19:56:44 · 264 阅读 · 0 评论 -
01背包之贪心选择
#include #include #define random(x) (rand()%x)+1 //产生随机数 (0,100]#define N 5 //物品规模#define C 60 //背包容量int x[N]; //解向量//背包节点struct Node{ float wv; //单位重量的价值 int weight; //重量 in原创 2017-01-03 22:27:04 · 377 阅读 · 0 评论 -
PageRank算法
PageRank是一个函数用于计算Web网页重要性,PageRank值越高,代表网页越重要。公式1: v’=Mv公式2: v’=βMv+(1- β) e/n当v’和v差异很小时,停止迭代。β是一个常数,通常取值在0.8到0.9之间。M是一个矩阵。表示万维网的网页构成的图。节点A、B、C、D代表网页,有向边代表起点页面包含终点页面的链接。ν是一个n维向量,每个原创 2017-02-24 01:21:17 · 1185 阅读 · 0 评论 -
2017阿里巴巴实习在线编程测验Java
题目:判断某个数组是否可以四等分,其中分割数组的某个元素不算在内。比如:{2,5,1,1,1,1,4,7,5,2,1,7}可以四等分成{2,5}{1,1,1,4}{5,2}{7}算法思想:用i遍历数组,以i为第一个划分点,该元素前面算一个划分(count=1),可得到一个划分和sum,向后计算等于sum的划分:如果存在一个,则count++;并且跳过一个元素,继续计算下一个划分的和;如果不存在原创 2017-03-05 21:19:32 · 6331 阅读 · 8 评论 -
01背包问题之动态规划
#include #include #define random(x) (rand()%x)+1 //产生随机数 (0,100]#define N 5 //物品规模#define C 6 //背包容量int x[N]; //解向量int max(int a,int b){ return a>b?a:b;}int min(int a,int b){ ret原创 2017-01-03 22:06:46 · 295 阅读 · 0 评论