Welcome 微信登录

首页 / 软件开发 / 数据结构与算法

HDU 2544最短路:各种最短路算法的实现

HDU 2544最短路:各种最短路算法的实现

HDU 2544最短路:各种最短路算法的实现2014-10-16 csdn博客 shuangde800链接:题目:Problem Description在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shirt。但是每当我们的工作人员把上百件的衣服从商店运回到赛场的时候,却是非常累的!所以现在他们想要寻找最短的从商店到赛场的路线,你可以帮助他们吗?Input输入包括多组数据。每组数据第一行是两个整数N、M(N<=100,M<=1000...
如何判断链表是否存在回环

如何判断链表是否存在回环

如何判断链表是否存在回环2014-10-16 小桂子的博客 1、判断链路是否存在回环?(1)回环定义:1-2-3-4-5-6-7| |----8如上事例,则表示存在回环。(2)求解思想:说明:使用快慢指针,慢指针每次只前进一步,快指针每次前进两步,直到慢指针遇上快指针。2、贴上代码(1)数据结构定义#ifndef LINKLIST_H#define LINKLIST_H #define NULL 0 typedef struct MyNode{int ...
字符串匹配的KMP算法

字符串匹配的KMP算法

字符串匹配的KMP算法2014-10-16 阮一峰 字符串匹配是计算机的基本任务之一。举例来说,有一个字符串"BBC ABCDAB ABCDABCDABDE",我想知道,里面是否包含另一个字符串"ABCDABD"?许多算法可以完成这个任务,Knuth-Morris-Pratt算法(简称KMP)是最常用的之一。它以三个发明者命名,起头的那个K就是著名科学家Donald Knuth。这种算法不太容易理解,网上有很多解释,...
字符串匹配的Boyer-Moore算法

字符串匹配的Boyer-Moore算法

字符串匹配的Boyer-Moore算法2014-10-16 阮一峰 上一篇文章,我介绍了KMP算法。但是,它并不是效率最高的算法,实际采用并不多。各种文本编辑器的"查找"功能(Ctrl+F),大多采用Boyer-Moore算法。Boyer-Moore算法不仅效率高,而且构思巧妙,容易理解。1977年,德克萨斯大学的Robert S. Boyer教授和J Strother Moore教授发明了这种算法。下面,我根据Moore教授自己的例子...
RSA算法原理(一)

RSA算法原理(一)

RSA算法原理(一)2014-10-16 阮一峰 如果你问我,哪一种算法最重要?我可能会回答"公钥加密算法"。因为它是计算机通信安全的基石,保证了加密数据不会被破解。你可以想象一下,信用卡交易被破解的后果。进入正题之前,我先简单介绍一下,什么是"公钥加密算法"。一、一点历史1976年以前,所有的加密方法都是同一种模式:(1)甲方选择某一种加密规则,对信息进行加密;(2)乙方使用同一种规则,对信息进行解密。由于加密和解...
RSA算法原理(二)

RSA算法原理(二)

RSA算法原理(二)2014-10-16 阮一峰 上一次,我介绍了一些数论知识。有了这些知识,我们就可以看懂RSA算法。这是目前地球上最重要的加密算法。六、密钥生成的步骤我们通过一个例子,来理解RSA算法。假设爱丽丝要与鲍勃进行加密通信,她该怎么生成公钥和私钥呢?第一步,随机选择两个不相等的质数p和q。爱丽丝选择了61和53。(实际应用中,这两个质数越大,就越难破解。)第二步,计算p和q的乘积n。爱丽丝就把61和53相乘。n = 61×53 =...
TF-IDF与余弦相似性的应用(一)自动提取关键词

TF-IDF与余弦相似性的应用(一)自动提取关键词

TF-IDF与余弦相似性的应用(一)自动提取关键词2014-10-19 阮一峰 这个标题看上去好像很复杂,其实我要谈的是一个很简单的问题。有一篇很长的文章,我要用计算机提取它的关键词(Automatic Keyphrase extraction),完全不加以人工干预,请问怎样才能正确做到?这个问题涉及到数据挖掘、文本处理、信息检索等很多计算机前沿领域,但是出乎意料的是,有一个非常简单的经典算法,可以给出令人相当满意的结果。它简单到都不需要高等数学,普通人只...
TF-IDF与余弦相似性的应用(二)找出相似文章

TF-IDF与余弦相似性的应用(二)找出相似文章

TF-IDF与余弦相似性的应用(二)找出相似文章2014-10-19 阮一峰 上一次,我用TF-IDF算法自动提取关键词。今天,我们再来研究另一个相关的问题。有些时候,除了找到关键词,我们还希望找到与原文章相似的其他文章。比如,"Google新闻"在主新闻下方,还提供多条相似的新闻。为了找出相似的文章,需要用到"余弦相似性"(cosine similiarity)。下面,我举一个例子来说明,什么是"余弦相似...
TF-IDF与余弦相似性的应用(三)自动摘要

TF-IDF与余弦相似性的应用(三)自动摘要

TF-IDF与余弦相似性的应用(三)自动摘要2014-10-19 阮一峰 有时候,很简单的数学方法,就可以完成很复杂的任务。这个系列的前两部分就是很好的例子。仅仅依靠统计词频,就能找出关键词和相似文章。虽然它们算不上效果最好的方法,但肯定是最简便易行的方法。今天,依然继续这个主题。讨论如何通过词频,对文章进行自动摘要(Automatic summarization)。如果能从3000字的文章,提炼出150字的摘要,就可以为读者节省大量阅读时间。由人完成的摘...
贝叶斯推断及其互联网应用(一)定理简介

贝叶斯推断及其互联网应用(一)定理简介

贝叶斯推断及其互联网应用(一)定理简介2014-10-19 阮一峰 一年前的这个时候,我正在翻译Paul Graham的《黑客与画家》。那本书的第八章,写了一个非常具体的技术问题----如何使用贝叶斯推断过滤垃圾邮件(英文版)。我没完全看懂那一章。当时是硬着头皮,按照字面意思把它译出来的。虽然译文质量还可以,但是心里很不舒服,下决心一定要搞懂它。一年过去了,我读了一些概率论文献,逐渐发现贝叶斯推断并不难。原理的部分相当容易理解,不需要用到高等数学。下面就是...
贝叶斯推断及其互联网应用(二)过滤垃圾邮件

贝叶斯推断及其互联网应用(二)过滤垃圾邮件

贝叶斯推断及其互联网应用(二)过滤垃圾邮件2014-10-20 阮一峰 上一次,我介绍了贝叶斯推断的原理,今天讲如何将它用于垃圾邮件过滤。========================================贝叶斯推断及其互联网应用作者:阮一峰(接上文)七、什么是贝叶斯过滤器?垃圾邮件是一种令人头痛的顽症,困扰着所有的互联网用户。正确识别垃圾邮件的技术难度非常大。传统的垃圾邮件过滤方法,主要有"关键词法"和"校验码法...
<< 231 232 233 234 235 236 237 238 239 240 >>