戴璞微的学习之路

简单点!做事的动机简单点

快速排序

概述快速排序和归并排序一样也是分而治之策略的应用,基本思路是在数组中选取一个主元,以它为标准,遍历数组把小于它的数放在右边,大于它的数放在左边。递归上述过程直至有序。选主元选主元与划分子集这两个问题关乎快速排序的效率问题。选主元有很多方式,比如直接那第一个数作主元,那么当数组基本有序时那么时间复杂...

2017-09-24 21:28:59

阅读数:1418

评论数:0

归并排序

概述归并排序是典型的分而治之策略的应用。主要是把一个数组分成若干个子数组进行从小到大的归并直至有序。下面所说的归并排序默认为2路归并排序。递归算法思想1)将数组平分为2等份,对这两个子数组进行从小大到有序归并。 2)递归对左半部分进行2路归并 3)递归对右半部分进行2路归并//一趟归并 vo...

2017-09-24 20:10:51

阅读数:361

评论数:0

递归求序列最大最小值

这学期总算开了算法课了,不得不吐槽,大四上学期开这课,时间很尴尬。不多说了,第一节课老师留了道题,要求在一个递归函数里求序列的最大最小值。算法思路: 1)如果数组长度为1,则最大值与最小值相等 2)如果数组长度为2,则最大值与最小值各位其中一个。 3)如果数组长度大于2,那么采用二分策略,递...

2017-08-24 16:45:20

阅读数:1492

评论数:0

算法训练 未名湖边的烦恼

问题描述   每年冬天,北大未名湖上都是滑冰的好地方。北大体育组准备了许多冰鞋,可是人太多了,每天下午收工后,常常一双冰鞋都不剩。   每天早上,租鞋窗口都会排起长龙,假设有还鞋的m个,有需要租鞋的n个。现在的问题是,这些人有多少种排法,可以避免出现体育组没有冰鞋可租的尴尬场面。(两个同样需求...

2017-03-01 19:59:24

阅读数:395

评论数:0

快速排序

解题思路: 1)设k=a[0], 将k挪到适当位置,使得比k小的元素都在k左边,比k大的元素都在k右边,和k相等的,不关心在k左右出现均可 (O(n)时间完成) 2) 把k左边的部分快速排序 3) 把k右边的部分快速排序Java代码如下:import java.util.Random; im...

2017-02-27 18:22:54

阅读数:536

评论数:0

归并排序

归并排序的基本思路: 1) 把前一半排序 2) 把后一半排序 3) 把两半归并到一个新的有序数组,然后再拷贝回原数组,排序完成。 Java代码如下:import java.util.Scanner;public class Main { public static v...

2017-02-26 20:07:22

阅读数:310

评论数:0

算24

给出4个小于10个正整数,你可以使用加减乘除4种运算以及括 号把这4个数连接起来得到一个表达式。现在的问题是,是否存在一种方式使得得到的表达式的结果等于24。 这里加减乘除以及括号的运算结果和运算的优先级跟我们平常 的定义一致(这里的除法定义是实数除法)。 比如,对于5,5,5,1...

2017-02-19 16:05:21

阅读数:391

评论数:0

简单的整数划分问题

总时间限制: 100ms 内存限制: 65536kB 描述 将正整数n 表示成一系列正整数之和,n=n1+n2+…+nk, 其中n1>=n2>=…>=nk>=1 ,k>=1 。 正整数n 的这种表示称为正整数n 的划分。正整数n 的不同的划分个数称为正整数n 的...

2017-02-19 14:06:29

阅读数:802

评论数:0

放苹果

把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问 共有多少种不同的分法?5,1,1和1,5,1 是同一种分法。 输入 第一行是测试数据的数目t(0 <= t <= 20)。以下每行均包含二个整 数M和N,以空格分开。1<=M,N<=10。 输出 对...

2017-02-19 12:38:35

阅读数:370

评论数:0

爬楼梯

树老师爬楼梯,他可以每次走1级或者2级,输入楼梯的级数, 求不同的走法数 例如:楼梯一共有3级,他可以每次都走一级,或者第一次走一 级,第二次走两级,也可以第一次走两级,第二次走一级,一 共3种方法。 输入 输入包含若干行,每行包含一个正整数N,代表楼梯级数,1 <= N &l...

2017-02-19 12:12:42

阅读数:870

评论数:0

N皇后问题

n皇后问题:输入整数n, 要求n个国际象棋的皇后,摆在 n*n的棋盘上,互相不能攻击,输出全部方案。 输入一个正整数N,则程序输出N皇后问题的全部摆法。 输出结果里的每一行都代表一种摆法。行里的第i个数字 如果是n,就代表第i行的皇后应该放在第n列。 皇后的行、列编号都是从1开始...

2017-02-16 17:53:48

阅读数:297

评论数:0

汉诺塔问题(递归实现)

古代有一个梵塔,塔内有三个座A、B、C,A座上有64个盘子,盘子大小 不等,大的在下,小的在上(如图)。有一个和尚想把这64个盘子从A座移 到C座,但每次只能允许移动一个盘子,并且在移动过程中,3个座上的盘子 始终保持大盘在下,小盘在上。在移动过程中可以利用B座,要求输出移动 的步骤。 impor...

2017-02-16 16:06:31

阅读数:286

评论数:0

算法训练 2的次幂表示

问题描述   任何一个正整数都可以用2进制表示,例如:137的2进制表示为10001001。   将这种2进制表示写成2的次幂的和的形式,令次幂高的排在前面,可得到如下表达式:137=2^7+2^3+2^0   现在约定幂次用括号来表示,即a^b表示为a(b)   此时,137可表示为:2...

2017-02-01 13:08:55

阅读数:276

评论数:0

算法训练 6-1 递归求二项式系数值

问题描述 样例输入 一个满足题目要求的输入范例。 3 10 样例输出 与上面的样例输入对应的输出。 120 数据规模和约定   输入数据中每一个数的范围。   例:结果在int表示时不会溢出。package 递归求二项式系数值;import java.util.Scanner...

2017-01-30 22:40:25

阅读数:1153

评论数:1

提示
确定要删除当前文章?
取消 删除
关闭
关闭