算法
lee3258
记录下时光和容颜。
展开
-
Dynamic Set kNN Self-Join概述
一.问题源于生活的问题许多应用程序中, 数据对象可以表示为集(set)。例如, 在视频点播和社交网络服务中,用户数据由一组分别已观看的电影和一组用户 (朋友) 组成, 它们可用于推荐和信息提取。因此, 集相似自联接问题得到了广泛的研究。现有的研究假定集是静态的,但在上述应用程序中, 集是动态更新的, 这需要不断更新联接结果。如果采用原始的静态集合更新方法去更新动态集合,代价无疑是巨大的,因此我...原创 2019-06-29 10:29:05 · 305 阅读 · 0 评论 -
算法绪论
一.解决一个计算问题的过程二.计算,算法,问题定义1(计算): 可由一个给定计算模型机械地执行的规则或计算步骤序列称为该计算模型的一个计算定义2**(算法)**: 算法是一个满足下列条件的计算 :终止性:有限步内必须停止(有穷性)确定性:每步都是严格定义和确定的动作能行性:每个动作都能被精确地机械执行输 入:具有满足给定约束条件的输入输 出:产生满足给定约束条件的结果.定义...原创 2019-06-29 10:33:06 · 284 阅读 · 0 评论 -
算法分析的数学基础
第2章 算法分析的数学基础《Introduction to Algorithms》 第三章 第四章 附 录一. 计算复杂性函数的阶计算函数的阶:算法执行时间随问题规模增长而增长的阶(增长率).执行时间函数的主导项如: T(n)=an2+bn+cT(n)=an^2 +bn+cT(n)=an2+bn+c主导项: an2an^2an2,当输入大小n较大时,其它低阶项相对来说意...原创 2019-06-29 10:41:27 · 1512 阅读 · 0 评论 -
分治算法
一. Divide-and-Conquer原理简而言之, 分治算法就是一个问题的规模较大时不好解决, 但规模较小时又很好解, 那么我们就将大问题化成小问题, 依次求解小问题再合并成大问题的解, 当然, 不是所有问题都可以这么做.设计过程分为三个阶段1.Divide: 整个问题划分为多个子问题注意:分解的这组子问题p1,p2,…pmp_1 ,p_2 ,…p_mp1,p2,…pm...原创 2019-06-29 10:51:43 · 313 阅读 · 1 评论