基础算法
文章平均质量分 65
kingzone_2008
对于机器学习数据挖掘相关技术有浓厚兴趣
展开
-
wikioi 1010 过河卒 (2002年NOIP全国联赛普及组)
题目描述 Description 如图,A 点有一个过河卒,需要走到目标 B 点。卒行走规则:可以向下、或者向右。同时在棋盘上的任一点有一个对方的马(如上图的C点),该马所在的点和所有跳跃一步可达的点称为对方马的控制点。例如上图 C 点上的马可以控制 9 个点(图中的P1,P2 … P8 和 C)。卒不能通过对方马的控制点。 棋盘用坐标表示,A 点(0,0)、B 点(原创 2013-10-11 21:29:06 · 6999 阅读 · 2 评论 -
wikioi 1214 线段覆盖
题目描述 Description 给定x轴上的N(0输入描述 Input Description 输入第一行是一个整数N。接下来有N行,每行有二个空格隔开的整数,表示一条线段的二个端点的坐标。输出描述 Output Description 输出第一行是一个整数表示最多剩下的线段数。样例原创 2013-09-26 14:50:56 · 9337 阅读 · 0 评论 -
wikioi 1014 装箱问题 (2001年NOIP全国联赛普及组)
题目描述 Description有一个箱子容量为V(正整数,0<=V<=20000),同时有n个物品(0<n<=30),每个物品有一个体积(正整数)。要求n个物品中,任取若干个装入箱内,使箱子的剩余空间为最小。输入描述 Input Description一个整数v,表示箱子容量一个整数n,表示有n个物品接下来n个整数,分别表示原创 2013-09-27 23:12:14 · 7965 阅读 · 2 评论 -
wikioi1011 数的计算 (2001年NOIP全国联赛普及组)
题目描述 Description我们要求找出具有下列性质数的个数(包含输入的自然数n):先输入一个自然数n(n1. 不作任何处理;2. 在它的左边加上一个自然数,但该自然数不能超过原数的一半;3. 加上数后,继续按此规则进行处理,直到不能再加自然数为止.输入描述 Input Des原创 2013-10-14 17:17:15 · 3393 阅读 · 0 评论 -
wikioi 1169 传纸条 (2008年NOIP全国联赛提高组)
题目:http://wikioi.com/problem/1169/分析:DP[i1][j1][i2][j2]中相当于保存了DP[i1][j1]和DP[i2][j2]之和,即第一条路线走到(i1,j1)处,第二条路线走到(i2,j2)处时,所经过地点的数值之和的最大值。代码:#include #include #include using namespace st原创 2013-10-14 18:13:56 · 3384 阅读 · 0 评论 -
wikioi 1219 骑士游历
题目描述 Description设有一个n*m的棋盘(2≤n≤50,2≤m≤50),如下图,在棋盘上有一个中国象棋马。规定:1)马只能走日字2)马只能向右跳问给定起点x1,y1和终点x2,y2,求出马从x1,y1出发到x2,y2的合法路径条数。输入描述 Input Description第一行2个整数n和m第二原创 2013-10-16 23:50:20 · 4882 阅读 · 0 评论 -
wikioi 1220 数字三角形
题目描述 Description如图所示的数字三角形,从顶部出发,在每一结点可以选择向左走或得向右走,一直走到底层,要求找出一条路径,使路径上的值最大。输入描述 Input Description第一行是数塔层数N(1第二行起,按数塔图形,有一个或多个的整数,表示该层节点的值,共有N行。输出描述 Output Descript原创 2013-10-17 00:11:08 · 8431 阅读 · 2 评论 -
wikioi 1017 乘积最大 (2000年NOIP全国联赛普及组NOIP全国联赛提高组)
题目描述 Description今年是国际数学联盟确定的“2000——世界数学年”,又恰逢我国著名数学家华罗庚先生诞辰90周年。在华罗庚先生的家乡江苏金坛,组织了一场别开生面的数学智力竞赛的活动,你的一个好朋友XZ也有幸得以参加。活动中,主持人给所有参加活动的选手出了这样一道题目: 设有一个长度为N的数字串,要求选手使用K个乘号将它分成K+1个部分,找出一种分法,使原创 2013-10-17 13:59:33 · 5584 阅读 · 0 评论 -
wikioi 1039 数的划分 (2001年NOIP全国联赛提高组)
题目描述 Description将整数n分成k份,且每份不能为空,任意两种划分方案不能相同(不考虑顺序)。例如:n=7,k=3,下面三种划分方案被认为是相同的。1 1 51 5 15 1 1问有多少种不同的分法。输入描述 Input Description输入:n,k (6输出描述 Output Descr原创 2013-10-17 15:00:51 · 4346 阅读 · 0 评论 -
wikioi 2849 素数判定 3 (筛法求质)
题目描述 Description输入一个正整数x(3输入描述 Input Description一行一个正整数输出描述 Output Description输出prime或者composite样例输入 Sample Input13样例输出 Sample Output原创 2013-10-29 22:30:00 · 1295 阅读 · 0 评论 -
关联规则挖掘:FP-Growth算法
FP-Growth算法不同于Apriori算法的“产生-测试”模型,而是使用一种称作FP树的紧凑数据结构组织数据,并直接从该结构中提取频繁项集。FP-Growth算法步骤:1)导出频繁一项集。数据库的第一次扫描与Apriori相同,它导出频繁1项集的集合和支持度计数。频繁项的集合按支持度计数的递减序排列。结果列表记作L。2)构造FP树然后,FP树的构造如下。首先,创建树的根节点原创 2013-11-28 19:04:11 · 7280 阅读 · 0 评论 -
数据挖掘(七):关联规则挖掘:Apriori算法、频繁模式挖掘
1 算法思想算法使用频繁项集性质的先验知识。Apriori使用一种称作逐层搜索的迭代方法,k项集用于探索(k+1)项集。首先,通过扫描数据库,累积每个项的计数,并收集满足最小支持度的项,找出频繁1项集的集合。该集合记作L1.然后,L1用于找频繁2项集的集合L2,L2用于找L3,如此迭代,直到不能再找到频繁k项集。找每个Lk需要一次数据库全扫描。Apriori性质可用于压缩搜索空间,提高频繁原创 2013-07-24 13:37:44 · 9594 阅读 · 0 评论 -
Apriori算法实现
Apriori算法原理:http://blog.csdn.net/kingzone_2008/article/details/8183768import java.util.HashMap;import java.util.HashSet;import java.util.Iterator;import java.util.Map;import java.util.Set;i原创 2013-12-04 22:25:44 · 9376 阅读 · 14 评论 -
[Kaggle] 数据建模分析与竞赛平台介绍
IntroductionKaggle是一个数据建模和数据分析竞赛的平台。企业和研究者可在其上发布数据,统计学者和数据挖掘专家可在其上进行竞赛,通过“众包”的形式以产生最好的模型。Kaggle可以分为Competitions竞赛、Datasets数据集以及Kernel内核三个子平台、配套的Forum论坛模块以及供各类公司或组织招聘人才的Jobs模块。Kaggle首页 Your H转载 2016-11-20 17:30:57 · 4663 阅读 · 1 评论 -
wikioi 1098 均分纸牌 (2002年NOIP全国联赛提高组)
题目描述 Description有 N 堆纸牌,编号分别为 1,2,…, N。每堆上有若干张,但纸牌总数必为 N 的倍数。可以在任一堆上取若于张纸牌,然后移动。 移牌规则为:在编号为 1 堆上取的纸牌,只能移到编号为 2 的堆上;在编号为 N 的堆上取的纸牌,只能移到编号为 N-1 的堆上;其他堆上取的纸牌,可以移到相邻左边或右边的堆上。 现在要求找出一种移动方法,用最原创 2013-09-25 21:34:14 · 3144 阅读 · 0 评论 -
wikioi1501 二叉树最大宽度和高度
题目描述 Description 给出一个二叉树,输出它的最大宽度和高度。输入描述 Input Description第一行一个整数n。下面n行每行有两个数,对于第i行的两个数,代表编号为i的节点所连接的两个左右儿子的编号。如果没有某个儿子为空,则为0。输出描述 Output Description输出共转载 2013-09-25 17:05:31 · 4061 阅读 · 0 评论 -
wikioi 1166 矩阵取数游戏(2007年NOIP全国联赛提高组)
题目描述 Description【问题描述】帅帅经常跟同学玩一个矩阵取数游戏:对于一个给定的n*m 的矩阵,矩阵中的每个元素aij均为非负整数。游戏规则如下:1. 每次取数时须从每行各取走一个元素,共n个。m次后取完矩阵所有元素;2. 每次取走的各个元素只能是该元素所在行的行首或行尾;3. 每次取数都有一个得分值,为每行取数的得分之和,每行取数的得分= 被取走的原创 2013-10-11 01:07:43 · 8497 阅读 · 0 评论 -
KMP字符串模式匹配详解
KMP字符串模式匹配通俗点说就是一种在一个字符串中定位另一个串的高效算法。简单匹配算法的时间复杂度为O(m*n);KMP匹配算法。可以证明它的时间复杂度为O(m+n).。一. 简单匹配算法先来看一个简单匹配算法的函数:int Index_BF ( char S [ ], char T [ ], int pos ){/* 若串 S 中从第pos(S 的下标0≤pos个字符起转载 2013-03-24 16:25:12 · 1230 阅读 · 0 评论 -
动态规划与线性规划
1.快速区分动态规划是一种解决问题的策略。线性规划是一类问题。目标函数为特定变量的线性函数,约束是这些变量的线性不等式(standard form)或等式(slack form),目的是求目标函数的最大值或最小值。线性规划和非线性规划在某些地方被称作静态规划,但未找到权威的参考文献。2.动态规划(DP)DP的两个重要性质:最优子结构(问题的最优解包含了其子问题的最优解)、重叠子问题原创 2012-11-04 23:08:19 · 14038 阅读 · 1 评论 -
Java:Map与HashMap,Hashtable,HashSet比较
HashMap和Hashtable两个类都实现了Map接口,二者保存K-V对(key-value对);HashSet则实现了Set接口,性质类似于集合。HashTable和HashMap区别第一,继承的父类不同。Hashtable继承自Dictionary类,而HashMap继承自AbstractMap类。但二者都实现了Map接口。public class Hashtable原创 2013-06-25 16:43:36 · 21469 阅读 · 2 评论 -
大数加法 减法 乘法 除法 高精度四则运算
1. 加法输入采用字符数组保存,然后将输入存在整形数组里,然后逐位相加即可,同时注意进位处理。[cpp] view plaincopy#include #include int main() { char m[555],n[555]; int i,len_m,len_n,l转载 2013-09-30 14:54:51 · 1889 阅读 · 0 评论 -
wikioi 3116 高精度练习之加法
题目描述 Description给出两个正整数A和B,计算A+B的值。保证A和B的位数不超过500位。输入描述 Input Description读入两个用空格隔开的正整数输出描述 Output Description输出A+B的值样例输入 Sample Input3 12原创 2013-09-30 11:44:04 · 2091 阅读 · 0 评论 -
wikioi 3027 线段覆盖 2
题目描述 Description数轴上有n条线段,线段的两端都是整数坐标,坐标范围在0~1000000,每条线段有一个价值,请从n条线段中挑出若干条线段,使得这些线段两两不覆盖(端点可以重合)且线段价值之和最大。n输入描述 Input Description第一行一个整数n,表示有多少条线段。接下来n行每行三个整数, ai bi原创 2013-09-29 22:51:13 · 4943 阅读 · 0 评论 -
wikioi 1068 乌龟棋 (2010年NOIP全国联赛提高组)
题目描述 Description小明过生日的时候,爸爸送给他一副乌龟棋当作礼物。 乌龟棋的棋盘是一行N个格子,每个格子上一个分数(非负整数)。棋盘第1格是唯一 的起点,第N格是终点,游戏要求玩家控制一个乌龟棋子从起点出发走到终点。…… 1 2 3 4 5 ……N 乌龟棋中M张爬行卡片,分成4种不同的类型(M张卡片中不一定包含所有4种类型 的卡片,见样例),每种类型的卡片上分原创 2013-10-04 20:23:11 · 4367 阅读 · 0 评论 -
wikioi 1044 拦截导弹 (1999年NOIP全国联赛提高组)
题目描述 Description 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭。由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。 输入描述 Input Description原创 2013-10-05 23:03:40 · 8478 阅读 · 4 评论 -
wikioi 1576 最长严格上升子序列
题目描述 Description非常经典的问题,拿来给大家练手了。 序列 { 1,2,...,n } 的一个子序列是指序列 { i1, i2, ……, ik },其中 1如果 { ai1, ai2, ……, aik } 满足 ai1 ≤ ai2 ≤ …… ≤ aik,则称之为上升子序列.如果不等号都是严格成立的,则称之为严格上升子序列.同理,如果前面不等关系全部取相原创 2013-10-05 23:45:08 · 3839 阅读 · 0 评论 -
wikioi 1048 石子归并
题目描述 Description有n堆石子排成一列,每堆石子有一个重量w[i], 每次合并可以合并相邻的两堆石子,一次合并的代价为两堆石子的重量和w[i]+w[i+1]。问安排怎样的合并顺序,能够使得总合并代价达到最小。输入描述 Input Description第一行一个整数n(n第二行n个整数w1,w2...wn (wi原创 2013-10-06 23:40:04 · 6277 阅读 · 2 评论 -
wikioi 1154 能量项链 (2006年NOIP全国联赛提高组)
题目描述 Description在Mars星球上,每个Mars人都随身佩带着一串能量项链。在项链上有N颗能量珠。能量珠是一颗有头标记与尾标记的珠子,这些标记对应着某个正整数。并且,对于相邻的两颗珠子,前一颗珠子的尾标记一定等于后一颗珠子的头标记。因为只有这样,通过吸盘(吸盘是Mars人吸收能量的一种器官)的作用,这两颗珠子才能聚合成一颗珠子,同时释放出可以被吸盘吸收的能量。如果前一原创 2013-10-07 18:32:50 · 5550 阅读 · 0 评论 -
wikioi1076 排序(快速排序)
快速排序C++实现如下:#include using namespace std;int partition(int *a, int i, int j){ int pivot = a[i]; while(i<j) { while(i=pivot) j--; if(i<j) a[i++] = a[j]; while(i<j&&a[i]<=pivot)原创 2013-09-23 21:30:05 · 1539 阅读 · 0 评论 -
Amazon Campus(2013-Sep-24)Question 1 / 2 (Amazon Campus(15): Clock wise walk)
Question 1 / 2 (Amazon Campus(15): Clock wise walk)Suppose we got a integer named size from input. size meet the rule:size%2 ==1.We use this size to build a square blocks, and we start from th原创 2013-09-24 13:48:45 · 1543 阅读 · 0 评论 -
wikioi1012 最大公约数和最小公倍数问题(2001年NOIP全国联赛普及组)
题目描述 Description输入二个正整数x0,y0(2条件: 1.P,Q是正整数2.要求P,Q以x0为最大公约数,以y0为最小公倍数.试求:满足条件的所有可能的两个正整数的个数.输入描述 Input Description二个正整数x0,y0输出描述 Output Description原创 2013-09-24 15:56:52 · 5607 阅读 · 0 评论 -
KNN(三)--KD树详解及KD树最近邻算法
之前blog内曾经介绍过SIFT特征匹配算法,特征点匹配和数据库查、图像检索本质上是同一个问题,都可以归结为一个通过距离函数在高维矢量之间进行相似性检索的问题,如何快速而准确地找到查询点的近邻,不少人提出了很多高维空间索引结构和近似查询的算法。 一般说来,索引结构中相似性查询有两种基本的方式:一种是范围查询,范围查询时给定查询点和查询距离阈值,从数据集中查找所有与查询点距离小于阈值的数据另一...转载 2018-05-22 11:32:13 · 5297 阅读 · 0 评论