算法研究
文章平均质量分 90
阿波321
本博客贴出的文章均为作者精心设计、实践、写作而成。转载请注明出处。
作者关注领域:C/C , algorithm, network, linux Kernel; 大型分布式文件系统;
natural language processing, machine learing;
展开
-
topcoder题目及我的程序(3)——league picks
一道topcoder题目,比较简单==============================================================You and your friends are setting up a fantasy TopCoder league, where you choose coders to be on your team and score p原创 2008-02-16 14:43:00 · 1855 阅读 · 0 评论 -
百度之星程序设计大赛(1)——连续正整数
题目描述:一个正整数有可能可以被表示为n(n>=2)个连续正整数之和,如:15=1+2+3+4+515=4+5+615=7+8请编写程序,根据输入的任何一个正整数,找出符合这种要求的所有连续正整数序列。 输入数据:一个正整数,以命令行参数的形式提供给程序。输出数据:在标准输出上打印出符合题目描述的全部正整数序列,每行一个序列,每个序列都从该序列的最小正整数开始、以从小到大的顺序打印。如原创 2008-02-25 22:09:00 · 2410 阅读 · 0 评论 -
google面试题及我的算法(2)——0~n之间1的个数
problemConsider a function which, for a given whole number n, returns the number of ones required when writing out all numbers between 0 and n. For example, f(13)=6. Notice that f(1)=1. What is th原创 2008-02-25 23:42:00 · 2921 阅读 · 5 评论 -
google面试题及我的算法(3)——递归序列
题目内容 1 1 1 2 1 1 2 1 1 1 1 1 2 2 1 下一行是什么? 解答观察序列: 第4行是第3行数据从中间位置前后交换再加上第2行的数据 第5行是第4行数据从中间位置前后交换再加上第3行的数据原创 2008-02-26 11:51:00 · 3183 阅读 · 4 评论 -
一个数的三次方尾数是888,有什么规律吗?
一个数的三次方尾数是888,有什么规律吗?来源:http://tieba.baidu.com/f?kz=304791945题目分析:首先应该想到一个数x的三次方其尾数为8的,则x的尾数有什么规律?x=0,1,2,3,...,9,这10个数中,只有x=2时,其三次方尾数为8,所以x的个位数一定是2,至于到底是多少,还是通过程序计算较好。所以在程序中我们从x=12开始。有程原创 2008-03-01 22:54:00 · 6118 阅读 · 1 评论 -
面试题目(2)——转换字符串-插入字符个数
题目要求:转换字符串——插入字符的个数,如字符串aaab,插入字符个数后变为aaa3b1。代码如下:/**//************************************************************************ * 转换字符串——插入字符的个数 * 如,aaab,变为aaa3b1 **********************原创 2008-02-29 14:28:00 · 2337 阅读 · 1 评论 -
经典算法(1)——8皇后问题求解(回溯法)
本博客(http://blog.csdn.net/livelylittlefish)贴出作者(三二一、小鱼)相关研究、学习内容所做的笔记,欢迎广大朋友指正! 问题描述:原创 2008-03-03 00:05:00 · 13657 阅读 · 1 评论 -
一个数的三次方尾数是888,有什么规律吗? (续)
1。发现问题 在“一个数的三次方尾数是888,有什么规律吗?”一文中,笔者贴出了程序及结果,找到的规律如下:规律:等差数列,首项为192,公差为250。 该方法的数学证明(归纳法):x的个位是2,且x3的尾数为888,故可写为x=10*a+2,a>1,y=x3=1000*b+888,b>1, 因此x2=(10*a+2)2=100*a2+40*原创 2008-03-05 12:38:00 · 4469 阅读 · 0 评论 -
经典算法(2)——0/1背包问题(动态规划法)
本博客(http://blog.csdn.net/livelylittlefish)贴出作者(三二一、小鱼)相关研究、学习内容所做的笔记,欢迎广大朋友指正! 0/1背包问题 1. 问题描原创 2008-03-16 00:07:00 · 83839 阅读 · 24 评论 -
百度之星程序设计大赛(1)——连续正整数(算法2)
本博客(http://blog.csdn.net/livelylittlefish)贴出作者(三二一、小鱼)相关研究、学习内容所做的笔记,欢迎广大朋友指正! 自然数写为连续正整数之和原创 2008-03-24 21:42:00 · 4139 阅读 · 3 评论 -
经典算法(3)——最大间隙问题(线性时间算法)
本博客(http://blog.csdn.net/livelylittlefish)贴出作者(三二一、小鱼)相关研究、学习内容所做的笔记,欢迎广大朋友指正! 最大间隙问题原创 2008-03-23 13:24:00 · 18435 阅读 · 17 评论 -
acm题目及我的程序(4)——正整数n的加法组合的最大乘积(修改)
本博客(http://blog.csdn.net/livelylittlefish)贴出作者(三二一、小鱼)相关研究、学习内容所做的笔记,欢迎广大朋友指正! 题目:原创 2008-04-29 21:28:00 · 3708 阅读 · 4 评论 -
算法的力量(转李开复)
算法的力量 2006年5月转载 2008-05-04 22:22:00 · 2964 阅读 · 0 评论 -
google面试题及我的算法(2)——0~n之间1的个数(完美版)
本博客(http://blog.csdn.net/livelylittlefish)贴出作者(三二一、小鱼)相关研究、学习内容所做的笔记,欢迎广大朋友指正!Problem Consider a function which, for a given whole number n, returns the number of ones required when writing out原创 2008-08-05 01:05:00 · 6617 阅读 · 9 评论 -
IE编程2(.net)——通过应用程序打开google并进行搜索
本博客(http://blog.csdn.net/livelylittlefish)贴出作者(三二一、小鱼)相关研究、学习内容所做的笔记,欢迎广大朋友指正! IE编程——通过应用程序打开google并进行搜索 通过应用程序操作google搜索,用户输入要搜索的内容,然后在google中搜索;若开始时并没有IE实例运行,则打开一个默认的IE。 1. 加入原创 2008-08-25 22:35:00 · 7253 阅读 · 7 评论 -
砝码称重问题
本博客(http://blog.csdn.net/livelylittlefish)贴出作者(三二一、小鱼)相关研究、学习内容所做的笔记,欢迎广大朋友指正! 砝码称重问题 问题:4个砝码,每个重量都是整数克,总重量为40克,放在天平上可以称出1~40克的物体。求这4个砝码各多少克。 1. 问题分析设4个砝码的重量分别为w1、w2、w3、w4,则w1+w2+w3+w4=4原创 2009-01-29 22:34:00 · 10810 阅读 · 5 评论 -
trie树简介
本博客(http://blog.csdn.net/livelylittlefish)贴出作者(阿波)相关研究、学习内容所做的笔记,欢迎广大朋友指正!Content1. trie基础(1) 是什么?(2) 性质(3) 应用(4) 优点2. 一原创 2011-05-10 23:31:00 · 5670 阅读 · 1 评论 -
acm题目及我的程序(3)——正整数n的加法组合 (改进2)
要求:一个正整数n可以写为几个正整数的和,如:4=44=3+14=2+24=2+1+14=1+1+1+1输入一个正整数,找出符合这种要求的所有正整数序列(序列不重复)算法思想:在“acm题目及我的程序(3)——正整数n的加法组合”中,我们使用二维数组存放加法序列,实现规定MAXROW和MAXCOL,这样的数组在程序运行时分配的内存在栈区,其大小受限制,程序定义的MAXROW和MAXCO原创 2008-02-25 17:07:00 · 2233 阅读 · 0 评论 -
acm题目及我的程序(3)——正整数n的加法组合
在网上看到的acm题目,来源忘记了,现在贴出自己的算法。 要求:一个正整数n可以写为几个正整数的和,如:4=44=3+14=2+24=2+1+14=1+1+1+1输入一个正整数,找出符合这种要求的所有正整数序列(序列不重复)算法思想:以n=6为例,将数继序列存于a[MAXROW][6]中,且将数组a的所有值初始化为1对数组中从irow行,jcol列开始的n阶子矩阵进行操作f(6原创 2008-02-25 16:22:00 · 2468 阅读 · 0 评论 -
acm题目及我的程序(4)——正整数n的加法组合的最大乘积
题目: 给定一个正整数n,则在n所有的分解式中,求因子乘积最大的一个分解及此乘积。 n=5时,有如下分解式: 5=5 5=4+1 5=3+2 5=3+1+1 5=2+2+1 5=2+1+1+1 5=1+1+1+1+1 在这些分解式中,3*2=6最大,这就是所要求的结果。 若n = 12,最大为3*3*3*3 = 81。 算法思想: 可以参考“acm题目原创 2008-02-26 21:42:00 · 4126 阅读 · 6 评论 -
google面试题及我的算法(1)——交叉换位
来源:http://topic.csdn.net/u/20071228/16/cbc82a28-7288-411e-bf0f-caeec50756bf.html输入a_1, a_2, ..., a_n, b_1, b_2, ..., b_n,如何在O(n)的时间,用O(1)的空间,将这个序列顺序改为a_1, b_1, ..., a_n, b_n。 =原创 2008-02-18 11:23:00 · 3092 阅读 · 1 评论 -
google面试题及我的算法(1)——交叉换位(几种算法比较)
几个算法的比较:对以上三篇文章中给出的算法进行比较“google面试题及我的算法(1)——交叉换位”“google面试题及我的算法(1)——交叉换位(改进)”“google面试题及我的算法(1)——交叉换位(完美版)”google面试题及我的算法(1)——交叉换位 google面试题及我的算法(1)——交叉换位(改进)goo原创 2008-02-18 18:49:00 · 3228 阅读 · 0 评论 -
topcoder题目及我的程序(1)——language frequency
今天参加某公司的面试,给了一道TopCoder题目,还算顺利。 现贴出来供朋友们讨论学习。以后会陆续贴出以前写过的一些经典算法的程序。请指正。=================================================================================Problem StatementIn written languages, s原创 2008-02-16 00:42:00 · 4147 阅读 · 0 评论 -
acm题目及我的程序(1)——ten drops(十滴水游戏)
前一阵子研究算法时,在网上看到一道acm的题目,觉得挺有意思,贴出来请朋友们指正。题目可以参看:http://acm.zju.edu.cn/show_problem.php?pid=2902=========================================================================Have you ever played the fla原创 2008-02-16 01:03:00 · 4945 阅读 · 2 评论 -
google面试题及我的算法(1)——交叉换位(改进)
对“一道google面试题及我的算法(1) ”(简称算法1)的改进交换次数变化对算法1还可以再改进。例如,N=9时,第2步执行后,实际上中间位置的两边对称的4个元素基本配对,只需交换中间的两个元素即可,如下表所示。颜色表示每次要交换的元素左边向右交换,右边向左交换 算法思想:以N=9为例(中间的竖表示中间位置): a1 a2 a3 a4 a5 a6 a7 a8原创 2008-02-18 12:12:00 · 2211 阅读 · 0 评论 -
google面试题及我的算法(1)——交叉换位(完美版)
对“google面试题及我的算法(1)——改进”的再改进不需要移动,通过交换完成,只需一个交换空间例如,N=9时,第2步执行后,实际上中间位置的两边对称的4个元素基本配对,只需交换中间的两个元素即可,如下表所示。颜色表示每次要交换的元素,左边向右交换,右边向左交换。交换过程如下表所示。交换x1,x3;交换x2,x4;再交换中间的x1,x4;交换y1,y2;算法思想:以N=9原创 2008-02-18 18:21:00 · 4268 阅读 · 3 评论 -
topcoder题目及我的程序(2)——language recognition (语言识别)
这是以前做过的topcoder题目,继续贴上来,请朋友们指正。============================================================================Problem Statement For computers it can be hard to determine in which language a given原创 2008-02-16 12:45:00 · 2285 阅读 · 0 评论 -
topcoder题目及我的程序(4)——find reversed string (算法1)
Problem Statement????You are given a String input. You are to find the longest substring of input such that the reversal of the substring is also a substring of input. In case of a tie, return the str原创 2008-02-21 17:05:00 · 2338 阅读 · 0 评论 -
acm题目及我的程序(2)——Knight Moves (骑士跳跃)
acm题目,来源 http://acm.zju.edu.cn/show_problem.php?pid=1091 problem statementA friend of you is doing research on the Traveling Knight Problem (TKP) where you are to find the shortest closed tour of原创 2008-02-20 00:35:00 · 10241 阅读 · 14 评论 -
acm题目及我的程序(2)——Knight Moves (骑士跳跃) ——任意两点最少跳跃步数(算法2)
要求:只求出任意两点最少跳跃步数。解决方法:在搜索的过程中就开始求最短路径的长度,用变量代替回溯的值,若当前搜索的点已经超过当前最短路径长度,则从这个点回溯,从点出发的8个方向均不需要搜索,即在搜索树中,该点的儿子节点直接跳过;该算法效率较高。源程序如下(程序提供两种输入方式:输入文件名,输入两个点的坐标),朋友们可以拷贝源代码自行测试:/**//*******************原创 2008-02-20 01:13:00 · 2859 阅读 · 2 评论 -
acm题目及我的程序(2)——Knight Moves (骑士跳跃) ——任意两点间的最短路径所有信息(算法1)
要求:求出任意两点间的最短路径、最短路径个数及所有最短路径上的点解决方法:找出从源点S出发到达目的点D的所有路径长度小于6的路径,然后再从这些路径中寻找最短路径。该算法效率稍低。源程序如下(程序提供三种输入方法:求所有任意两点间的最短路径、个数及其点;求出这些数据并写入文件,输入两点坐标): /**//****************************************原创 2008-02-20 23:13:00 · 3873 阅读 · 0 评论 -
acm题目及我的程序(2)——Knight Moves (骑士跳跃) ——任意两点最少跳跃步数(算法1)
要求:只求出任意两点最少跳跃步数。解决方法:找出从源点S出发到达目的点D的所有路径长度小于6的路径,然后再从这些路径中寻找最短路径。该算法效率稍低。源程序如下(程序提供两种输入方法:输入文件名,输入两个点的坐标):/**//************************************************************************ * 骑士遍历任意原创 2008-02-20 01:12:00 · 3730 阅读 · 5 评论 -
acm题目及我的程序(2)——Knight Moves (骑士跳跃) ——任意两点间的最短路径所有信息(算法2)
要求:求出任意两点间的最短路径、最短路径个数及所有最短路径上的点解决方法:在搜索的过程中就开始求最短路径的长度,用变量代替回溯的值,若当前搜索的点已经超过当前最短路径长度,则从这个点回溯,从点出发的8个方向均不需要搜索,即在搜索树中,该点的儿子节点直接跳过; 该算法效率较高。程序提供三种输入方法:求所有任意两点间的最短路径、个数及其点;求出这些数据并写入文件,输入两点坐标原创 2008-02-20 23:13:00 · 3660 阅读 · 0 评论 -
topcoder题目及我的程序(4)——find reversed string (算法2)
题解在一个字符串s中找到最长的第一次出现的子串s1,s1满足:s1的反串s2也是s的子串。算法2:从两头开始循环,找到满足条件的子串便记录其长度和起始位置,且找出当前最长串,循环结束后便找到全局最长子串。源程序如下: /**//************************************************************************ *原创 2008-02-21 17:15:00 · 1822 阅读 · 0 评论 -
acm题目及我的程序(3)——正整数n的加法组合 (改进)
对“acm题目及我的程序(3)——正整数n的加法组合”的改进要求:一个正整数n可以写为几个正整数的和,如:4=44=3+14=2+24=2+1+14=1+1+1+1输入一个正整数,找出符合这种要求的所有正整数序列(序列不重复)算法思想:在求解的过程中,直接判断,如果序列中的某个数据大于前面的数据,则直接进行下一次计算,以提高效率。以n=6为例,将数继序列存于a[MAXROW原创 2008-02-25 16:37:00 · 1658 阅读 · 0 评论 -
acm题目及我的程序(3)——正整数n的加法组合 (完美版)
要求:一个正整数n可以写为几个正整数的和,如:4=44=3+14=2+24=2+1+14=1+1+1+1输入一个正整数,找出符合这种要求的所有正整数序列(序列不重复)算法思想: 以n=6为例,将数继序列暂时存于a[MAXCOL]中,且初始时值全为1。对数组中从jcol列开始的newn个元素进行操作f(6,0,0) ——函数GetCombinations(newn,newj原创 2008-02-25 19:18:00 · 4752 阅读 · 0 评论 -
面试题目(1)——删除与某个字符相邻且相同的字符
题目要求:删除与某个字符相邻且相同的字符,如,abcddef,删除相邻的相同字符d后变为: abcdef。要求:输入字符串,输出删除后的结果。咋一看,这个题目很简单,是历年全国计算机等级考试必考的题目之一,每年两次监考的时候就能看到这个题目。有些同学很快就做完,但有些不得要领不懂题意的同学也会抓耳挠腮。然而,今天面试,却让我丢大了人,没想到我也会卡壳,真是郁闷,这在平时可是在三原创 2008-02-29 12:02:00 · 3521 阅读 · 5 评论