
Algorithm
文章平均质量分 53
dijk
这个作者很懒,什么都没留下…
展开
-
Multiple Threads: Word Frequency
Directory and File:data3(dir) file1.txt(file) file2.txt(file) file3.txt(file)filter(dir) filter.txt(file)File contents:file1.txtFree Shipping Mini Car Auto12v Fresh Air Purifier Oxy原创 2015-05-18 07:49:49 · 649 阅读 · 0 评论 -
Multiple Files: Word Frequency
Directory and File:data2(dir) 111(dir) file1.txt(file) file2.txt(file) 222(dir) file3.txt(file)filter(dir) filter.txt(file)result(dir) result.txt(file)File conten原创 2015-05-18 08:19:08 · 518 阅读 · 0 评论 -
Algorithm: Extended Euclid's Algorithm
Algorithm EAlgorithm E (Extended Euclid’s algorithm). Given two positive integers m and n, we compute their greatest common divisor d and two integers a and b, such that am + bn = d. E1. [Initial原创 2015-05-31 10:58:10 · 752 阅读 · 0 评论 -
KMP Matching: String Matching
KMP matching:Pseudo code:Java code:/** * Created with IntelliJ IDEA. * User: 1O1O * Date: 2015-03-31 * Time: 12:01 PM * :)~ * KMP-MATCH:STRING-MATCH */public class Main { public static int[原创 2015-05-19 07:39:20 · 1087 阅读 · 0 评论 -
Algorithm: Multiply permutations in cycle form
Algorithm AAlgorithm A (Multiply permutations in cycle form). This algorithm takes a product of cycles, such as (6), and computes the resulting permutation in the form of a product of disjoint cycl原创 2015-05-29 08:33:26 · 582 阅读 · 0 评论 -
Algorithm: Inverse in place
Algorithm IAlgorithm I (Inverse in place). Replace X[1]X[2]… X[n], a permutation of {1,2,…,n}, by its inverse. This algorithm is due to Bing-Chao Huang [Inf. Proc. Letters 12 (1981), 237-238]. I1原创 2015-05-29 08:17:00 · 584 阅读 · 0 评论 -
Algorithm: Inverse in place-2
Algorithm JAlgorithm J (Inverse in place). This algorithm has the same effect as Algo- rithm I but uses a different method. J1. [Negate all] Set X[k] <– -X[k], for 1 <= k <= n. Also set m <– n. J原创 2015-05-29 08:09:52 · 535 阅读 · 0 评论 -
Rabin Karp Matching: String Matching
Rabin Karp matching: Pseudo code:Java code:/** * Created with IntelliJ IDEA. * User: 1O1O * Date: 2015-03-31 * Time: 17:58 PM * :)~ * RABIN-KARP-MATCH:STRING-MATCH */public class Main { pu原创 2015-05-19 07:24:20 · 673 阅读 · 0 评论 -
Algorithm: Find the maximum
Algorithm MAlgorithm M (Find the maximum). Given n elements X[1], X[2],…, X[n], we will find m and j such that m = X[j] = max1<=i<=nX[i], where j is the largest index that satisfies this relation.原创 2015-05-29 08:47:41 · 414 阅读 · 0 评论 -
Algorithm: Print table of 500 primes
Algorithm PAlgorithm P (Print table of 500 primes). This algorithm has two distinct parts: Steps P1-P8 prepare an internal table of 500 primes, and steps P9-P11 print the answer in the form shown a原创 2015-05-29 08:38:08 · 472 阅读 · 0 评论 -
Naive String Matching: String Matching
Naive string matching:Pseudo code:Java code:/** * Created with IntelliJ IDEA. * User: 1O1O * Date: 2015-03-31 * Time: 15:40 PM * :)~ * NAIVE-STRING-MATCH:STRING-MATCH */public class Main {原创 2015-05-19 07:31:23 · 859 阅读 · 0 评论 -
Algorithm: Euclid's Algorithm
Algorithm EAlgorithm E (Euclid’s algorithm). Given two positive integers m and n, find their greatest common divisor, that is, the largest positive integer that evenly divides both m and n. E1. [原创 2015-05-31 11:32:34 · 650 阅读 · 0 评论 -
Algorithm: Multiply permutations in cycle form-2
Algorithm BAlgorithm B (Multiply permutations in cycle form). This algorithm accom- plishes essentially the same result as Algorithm A. Assume that the elements per- muted are named X1,X2, … ,Xn. W原创 2015-05-29 08:27:01 · 371 阅读 · 0 评论 -
Finite Automaton Matching: String Matching
Finite automation machine: Pseudo code:Java code:/** * Created with IntelliJ IDEA. * User: 1O1O * Date: 2015-03-31 * Time: 21:29 PM * :)~ * FINITE-AUTOMATON-MATCH:STRING-MATCH */public class M原创 2015-05-18 08:27:01 · 761 阅读 · 0 评论 -
算法设计与分析: 2-4 马的Hamilton周游路线问题
2-4 马的Hamilton周游路线问题问题描述8*8的国际象棋棋盘上的一只马,恰好走过除起点外的其他63个位置各一次,最后回到起点,这条路线称为马的一条Hamilton周游路线。对于给定的m*n的国际象棋棋盘,m和n均为大于5的偶数,且|m-n|≤2,试设计一个分治算法找出马的一条Hamilton周游路线。回溯法Javapublic class Main { ...原创 2018-07-08 15:13:52 · 3817 阅读 · 0 评论 -
算法设计与分析: 2-5 半数集问题
2-5 半数集问题问题描述给定一个自然数n,由n开始可以依次产生半数集set(n)中的数如下: (1)set(n)中包含n; (2)在n的左边加上一个自然数,但该自然数不能超过最近添加的数的一半; (3)按此规则进行处理,直至不能添加自然数为止。 例如,set(6)={6,16,26,126,36,136}。 注意:该半数集是多重集。...原创 2018-07-08 18:16:14 · 1356 阅读 · 0 评论 -
算法设计与分析: 2-6 半数单集问题
2-6 半数单集问题问题描述给定一个自然数n,由n开始可以依次产生半数集set(n)中的数如下: (1)set(n)中包含n; (2)在n的左边加上一个自然数,但该自然数不能超过最近添加的数的一半; (3)按此规则进行处理,直至不能添加自然数为止。 例如,set(6)={6,16,26,126,36,136}。 注意:该半数集不是多重集。集合中已经有的元素不再添加到...原创 2018-07-08 19:53:27 · 1013 阅读 · 2 评论 -
算法设计与分析: 2-7 士兵站队问题
2-7 士兵站队问题问题描述在一个划分成网格的操场上,n个士兵散乱地站在网格点上。网格点由整数坐标(x,y)表示。士兵们可以沿网格边上、下、左、右移动一步,但在同一时刻任一网格点上只能有一名士兵。按照军官的命令,士兵们要整齐地列成一个水平队列,即排列(x,y),(x+1,y),…,(x+n-1,y)。如何选择x 和y的值才能使士兵们以最少的总移动步数排成一列。 编程计算使所有士兵排成一...原创 2018-07-08 21:14:29 · 2579 阅读 · 0 评论 -
算法设计与分析: 2-8 有重复元素的排列问题
2-8 有重复元素的排列问题问题描述设R=r1,r2,…,rnR=r1,r2,…,rnR={ r_1, r_2 , …, r_n}是要进行排列的n个元素。其中元素r1,r2,…,rnr1,r2,…,rnr_1, r_2 , …, r_n可能相同。试设计一个算法,列出R的所有不同排列。编程任务 给定n 以及待排列的n 个元素。计算出这n 个元素的所有不同排列。分治法Ja...原创 2018-07-09 13:11:42 · 3074 阅读 · 0 评论 -
算法设计与分析: 2-9 排列的字典序问题
2-9 排列的字典序问题问题描述n个元素{1,2,…,n}有n!个不同的排列。将这n!个排列按字典序排列并编号为0,1,…,n!-1。每个排列的编号为其字典序值。例如,当n=3时,6个不同排列的字典序值如下: 字典序值 0 1 2 3 4 5 排列 123 132 213 ...原创 2018-07-09 19:35:31 · 2043 阅读 · 1 评论 -
算法设计与分析: 2-10 集合划分问题(Bell数)
2-10 集合划分问题(Bell数)问题描述n个元素的集合{1,2,…,n}可以划分若干个非空子集。例如,当n=4时,集合{1,2,3,4}可以划分为15个不同的非空子集如下: {{1},{2},{3},{4}}, {{1,2},{3},{4}}, {{1,3},{2},{4}}, {{1,4},{2},{3}}, {{2,3},{1},{4}}, {{2,4},{1},{...原创 2018-07-09 22:41:15 · 2656 阅读 · 2 评论 -
算法设计与分析: 2-11 集合划分问题(第2类Stirling数)
2-11 集合划分问题(第2类Stirling数)问题描述n个元素的集合{1,2,.,n }可以划分为若干个非空子集。例如,当n=4 时,集合{1,2,3,4}可以划分为15个不同的非空子集如下: {1},{2},{3},{4}}, {{1,2},{3},{4}}, {{1,3},{2},{4}}, {{1,4},{2},{3}}, {{2,3},{1},{4}}, {{2...原创 2018-07-09 23:39:48 · 1266 阅读 · 0 评论 -
算法设计与分析: 2-12 双色Hanoi塔问题
2-12 双色Hanoi塔问题问题描述设A、B、C是3 个塔座。开始时,在塔座A 上有一叠共n 个圆盘,这些圆盘自下而上,由大到小地叠在一起。各圆盘从小到大编号为1,2,……,n,奇数号圆盘着蓝色,偶数号圆盘着红色,如图所示。现要求将塔座A 上的这一叠圆盘移到塔座B 上,并仍按同样顺序叠置。在移动圆盘时应遵守以下移动规则: 规则(1):每次只能移动1 个圆盘; 规则(2):任何时刻...原创 2018-07-10 01:16:37 · 1682 阅读 · 0 评论 -
算法设计与分析: 4-8 d森林问题
d森林问题问题描述设 T 是一棵带权树,树的每一条边带一个正权。又设 S 是 T 的顶点集,T/S 是从树 T 中 将 S 中顶点删去后得到的森林。如果 T/S 中所有树的从根到叶的路长都不超过 d ,则称 T/S 是一个 d 森林。 (1)设计一个算法求 T 的最小顶点集 S,使 T/S 是 d 森林。(提示:从叶向根移动) (2)分析算法的正确性和计算复杂性。 (3)设...原创 2018-07-16 10:38:22 · 6389 阅读 · 1 评论 -
算法设计与分析: 4-9 汽车加油问题
4-9 汽车加油问题问题描述一辆汽车加满油后可行驶 n 公里。旅途中有若干个加油站。设计一个有效算法,指出应 在哪些加油站停靠加油,使沿途加油次数最少。并证明算法能产生一个最优解。对于给定的 n 和 k 个加油站位置,编程计算最少加油次数。第一行有 2 个正整数 n 和 k,表示汽车加满油后可行驶n 公里,且旅途中有 k 个加油站。接下来的 1 行中,有 k+1 个整数,表示第...原创 2018-07-16 11:46:55 · 1778 阅读 · 1 评论 -
算法设计与分析: 4-10 区间覆盖问题
4-10 区间覆盖问题问题描述设 x1,x2,...,xnx1,x2,...,xnx_1 , x_2 ,..., x_n 是实直线上的 n 个点。用固定长度的闭区间覆盖这 n 个点,至少需要多少个这样的固定长度闭区间?设计解此问题的有效算法,并证明算法的正确性。对于给定的实直线上的 n 个点和闭区间的长度 k,编程计算覆盖点集的最少区间数。数据输入: 第一行有 2 个正整数 ...原创 2018-07-16 12:17:26 · 1134 阅读 · 1 评论 -
算法设计与分析: 4-11 硬币找钱问题
4-11 硬币找钱问题问题描述设有 6 种不同面值的硬币,各硬币的面值分别为 5 分,1 角,2 角,5 角,1 元,2 元。 现要用这些面值的硬币来购物和找钱。购物时可以使用的各种面值的硬币个数存于数组 Coins[1:6]中,商店里各面值的硬币有足够多。在 1 次购物中希望使用最少硬币个数。 例如,1 次购物需要付款 0.55 元,没有 5 角的硬币,只好用 2*20+10+5 ...原创 2018-07-16 15:59:20 · 5607 阅读 · 0 评论 -
算法设计与分析: 4-12 删数问题
4-12 删数问题问题描述给定 n 位正整数 a,去掉其中任意 k≤n 个数字后,剩下的数字按原次序排列组成一个 新的正整数。对于给定的 n 位正整数 a 和正整数 k,设计一个算法找出剩下数字组成的新数 最小的删数方案。对于给定的正整数 a,编程计算删去 k 个数字后得到的最小数。数据输入: 第 1 行是 1 个正整数 a。第 2 行是正整数 k。Javai...原创 2018-07-16 16:31:20 · 1073 阅读 · 0 评论 -
算法设计与分析: 4-13 数列极差问题
4-13 数列极差问题问题描述在黑板上写了 N 个正数组成的一个数列,进行如下操作:每一次擦去其中 2 个数设为 a 和 b,然后在数列中加入一个数 a*b+1,如此下去直至黑板上只剩下一个数。在所有按这种 操作方式最后得到的数中,最大的数记为 max,最小的数记为 min,则该数列的极差 M 定义 为 M = max - min。对于给定的数列,编程计算出其极差 M。数据输入...原创 2018-07-16 17:00:37 · 1286 阅读 · 0 评论 -
算法设计与分析: 2-13 标准二维表问题
2-13 标准二维表问题问题描述设n是一个正整数。2*n的标准二维表是由正整数1,2,…,2n组成的2*n数组,该数组的每行从左到右递增,每列从上到下递增。2*n的标准二维表全体记为Tab(n)。例如,当n=3时,tab(3)二维表如下图所示。 1 2 3 4 5 ...原创 2018-07-10 15:03:09 · 3012 阅读 · 0 评论 -
算法设计与分析: 4-14 嵌套箱问题
4-14 嵌套箱问题问题描述一个d维箱(x1,x2,...,xd)(x1,x2,...,xd)(x_1,x_2,...,x_d )嵌入另一个d维箱(y1,y2,...,yd)(y1,y2,...,yd)(y1,y2,...,yd )是指存在1,2,...,d1,2,...,d1,2,...,d的一个 排列πππ,使得xπ(1)<y1,xπ(2)<y2,...,xπ(d)&l...原创 2018-07-16 19:06:35 · 949 阅读 · 0 评论 -
算法设计与分析: 4-15 套汇问题
4-15 套汇问题问题描述套汇是指利用货币汇兑率的差异将一个单位的某种货币转换为大于一个单位的同种货 币。例如,假定 1 美元可以买 0.7 英镑,1 英镑可以买 9.5 法郎,且 1 法郎可以买到 0.16 美元。通过货币兑换,一个商人可以从 1 美元开始买入,得到 0.7×9.5×0.16=1.064 美元, 从而获得 6.4%的利润。给定 n 种货币c1,c2,...,cnc...原创 2018-07-16 19:52:18 · 2676 阅读 · 0 评论 -
算法设计与分析: 4-16 信号增强装置问题
4-16 信号增强装置问题问题描述各种资源传输网络的功能是将始发地的资源通过网络传输到一个或多个目的地。例如, 通过石油或者天然气输送管网可以将从油田开采的石油和天然气传送给消费者。 同样,通 过高压传输网络可以将发电厂生产的电力传送给用电消费者。为了使问题更具一般性,用术 语信号统称网络中传输的资源 (石油,天然气,电力等等)。各种资源传输网络统称为信号 传输网络。信号经信号传输网络...原创 2018-07-16 21:32:03 · 829 阅读 · 0 评论 -
算法设计与分析: 2-14 整数因子分解问题
2-14 整数因子分解问题问题描述大于1的正整数n可以分解为:n=x1∗x2∗…∗xmn=x1∗x2∗…∗xmn = x_1*x_2*…*x_m。例如,当n=12 时,共有8 种不同的分解式: 12=12; 12=6*2; 12=4*3; 12=3*4; 12=3*2*2; 12=2*6; 12=2*3*2; 12=2*2*3。 对于给定的正整数n...原创 2018-07-10 19:12:02 · 1839 阅读 · 0 评论 -
算法设计与分析: 4-17 磁带最大利用率问题
4-17 磁带最大利用率问题问题描述设有 n 个程序1,2,...,n1,2,...,n{1,2,..., n }要存放在长度为 L 的磁带上。程序 i 存放在磁带上的长度是lili l_i ,1≤i≤n1≤i≤n1\leq i\leq n。 程序存储问题要求确定这 n 个程序在磁带上的一个存储方案,使得能够在磁带上存储尽可能多的程序。在保证存储最多程序的前提下还要求磁带的利用率达到...原创 2018-07-17 00:00:01 · 1644 阅读 · 1 评论 -
算法设计与分析: 4-18 非单位时间任务安排问题
4-18 非单位时间任务安排问题问题描述具有截止时间和误时惩罚的任务安排问题可描述如下。 (1) 给定 n 个任务的集合 S={1,2,...,n}S={1,2,...,n}S=\{1,2,...,n\}; (2) 完成任务i需要titit_i 时间,1≤i≤n1≤i≤n1\leq i\leq n; (3) 任务 i 的截止时间 didid_i ,1≤i≤n1≤i≤n1≤i≤n...原创 2018-07-17 09:19:14 · 3413 阅读 · 0 评论 -
算法设计与分析: 4-19 多元Huffman编码问题
4-19 多元Huffman编码问题问题描述在一个操场的四周摆放着 n 堆石子。现要将石子有次序地合并成一堆。规定每次至少选2 堆最多选 k 堆石子合并成新的一堆,合并的费用为新的一堆的石子数。试设计一个算法, 计算出将 n 堆石子合并成一堆的最大总费用和最小总费用。对于给定 n 堆石子,编程计算合并成一堆的最大总费用和最小总费用。数据输入: 第 1 行有 2 个正整数 n ...原创 2018-07-17 10:21:49 · 2027 阅读 · 0 评论 -
算法设计与分析: 4-20 多元Huffman编码变形
4-20 多元Huffman编码变形问题描述在一个操场的四周摆放着 n 堆石子。现要将石子有次序地合并成一堆。规定在合并过程中最多可以有 m(k)次选 k 堆石子合并成新的一堆,2≤k≤n,合并的费用为新的一堆的石子数。试设计一个算法,计算出将 n 堆石子合并成一堆的最小总费用。对于给定 n 堆石子,编程计算合并成一堆的最小总费用。数据输入: 第 1 行有 1 个正整数 n,...原创 2018-07-17 11:02:26 · 815 阅读 · 0 评论 -
算法设计与分析: 4-21 区间相交问题
4-21 区间相交问题问题描述给定 x 轴上 n 个闭区间。去掉尽可能少的闭区间,使剩下的闭区间都不相交。给定 n 个闭区间,编程计算去掉的最少闭区间数。数据输入: 第一行是正整数 n,表示闭区间数。接下来的 n 行中,每行有 2 个整数,分别表示闭区间的 2 个端点。Javaimport java.util.*;public class QuJian...原创 2018-07-17 12:28:09 · 551 阅读 · 0 评论 -
算法设计与分析: 4-22 任务时间表问题
4-22 任务时间表问题问题描述一个单位时间任务是恰好需要一个单位时间完成的任务。给定一个单位时间任务的有限 集 S。关于 S 的一个时间表用于描述 S 中单位时间任务的执行次序。时间表中第 1 个任务从 时间 0 开始执行直至时间 1 结束,第 2 个任务从时间 1 开始执行至时间 2 结束,…,第 n 个任务从时间 n-1 开始执行直至时间 n 结束。 具有截止时间和误时惩罚的单...原创 2018-07-17 13:53:44 · 2126 阅读 · 1 评论