随笔分类 -  101-迭代与递归

2705:扩号匹配问题(递归与非递归)
摘要:非递归写法:(用栈模拟) 代码来源:http://blog.csdn.net/sjf0115/article/details/8675934 思路: 1 #include<stdio.h> 2 #include<iostream> 3 #include<stack> 4 #include<strin 阅读全文

posted @ 2017-03-14 08:34 华山青竹 阅读(1724) 评论(0) 推荐(0) 编辑

集合的划分(1)
摘要:【问题描述】设S是一个具有n个元素的集合,S={a1,a2,……,an},现将S划分成k个满足下列条件的子集合S1,S2,……,Sk ,且满足: 则称S1,S2,……,Sk是集合S的一个划分。它相当于把S集合中的n个元素a1 ,a2,……,an 放入k个(0<k≤n<30)无标号的盒子中,使得没有一 阅读全文

posted @ 2017-03-04 21:03 华山青竹 阅读(1108) 评论(0) 推荐(0) 编辑

集合的划分(2)
摘要:题目链接:http://bailian.openjudge.cn/practice/3253/ 阅读全文

posted @ 2017-03-04 20:55 华山青竹 阅读(665) 评论(0) 推荐(0) 编辑

汽车过沙漠问题【学习笔记】
摘要:1 #include 2 int main() 3 { 4 float k; 5 float dis,oil;//dis表示距离终点的距离,1000-dis表示距离起点的距离。k表示储油点从后到前的序号,oil表示储油点的储油量。 6 k=1; 7 dis=500; 8 oil=500; 9 do 10 { ... 阅读全文

posted @ 2016-02-17 17:37 华山青竹 阅读(542) 评论(0) 推荐(0) 编辑

极值问题
摘要:对上述方法的更为详细的描述: 解析: 由条件②得出: n^2-mn-m^2+1=0 n^2-mn-m^2-1=0 根据求根公式: n1,2=(m+Δ1,2)/2 n3,4=(m-Δ1,2)/2 其中: Δ1=sqrt(5*m^2+4) Δ2=sqrt(5*m^2-4) (sqrt即为求非负实数平方根 阅读全文

posted @ 2016-02-17 14:58 华山青竹 阅读(422) 评论(0) 推荐(0) 编辑

双色汉诺塔【分离型】
摘要:来源:http://blog.csdn.net/heaven13483/article/details/8330503 说明 双色河内塔是由之前所介绍过的河内塔规则衍生而来,双色河内塔的目的是将下图左上的圆环位置经移动成为右下的圆环位置: 解法 双色河内塔或是原始的河内塔,其解法观念与之前介绍过的河 阅读全文

posted @ 2016-02-16 11:37 华山青竹 阅读(1594) 评论(0) 推荐(0) 编辑

二分查找(递归与非递归)
摘要:来源:http://blog.csdn.net/q3498233/article/details/4419285 递归方法 1 int BinSearch(int Array[],int low,int high,int key/*???*/) 2 { 3 if (low<=high) 4 { 5 阅读全文

posted @ 2016-01-27 16:56 华山青竹 阅读(310) 评论(0) 推荐(0) 编辑

自然数的拆分
摘要:题目链接 洛谷2404 【问题描述】自然数的拆分:任何一个大于1的自然数N,总可以拆分成若干个自然数之和,并且有多种拆分方法。试求 n的所有拆分。例如自然数5,可以有如下一些拆分方法:5=1+1+1+1+15=1+1+1+25=1+2+25=1+45=2+3 注意,本题中N拆分出来的数x的范围是1< 阅读全文

posted @ 2015-08-21 18:09 华山青竹 阅读(2645) 评论(0) 推荐(0) 编辑

有重复元素的排列问题
摘要:参考:http://blog.sina.com.cn/s/blog_9b95c19e0101aqwn.htmlDescription设R={ r1, r2, ……, rn }是要进行排列的n个元素。其中元素r1 ,r2 ,……,rn可能相同。试设计一个算法,列出R的所有不同排列。给定n以及待排列的n... 阅读全文

posted @ 2015-08-21 16:04 华山青竹 阅读(3383) 评论(0) 推荐(0) 编辑

无重复元素的排列
摘要:利用C++算法库函数实现全排列 (下面的内容是原作者整理的。) 熟悉 C++ 的朋友肯定知道另一种更简单,更完美的全排列方法。 定义于文件 <algorithm> 内的两个算法函数: next_permutation,对于当前的排列,如果在字典序中还存在下一个排列,返回真,并且把当前排列调整为下一个 阅读全文

posted @ 2015-08-21 11:35 华山青竹 阅读(824) 评论(0) 推荐(0) 编辑

质数环
摘要:输入N,将1~N这N个整数摆成一个环,使得任意相邻两个数之和都是质数。分析:递归,回溯算法的流程:递归填数:判断第i个数填入是否合法。若是合法:填数,判断是否到达目标(填入20个数字),是则打印结果,否则递归进入下一层填写下一个数字。若是不合法:选择下一种可能进行尝试。代码如下:(不足之处在于:这里... 阅读全文

posted @ 2015-08-21 10:05 华山青竹 阅读(674) 评论(0) 推荐(0) 编辑

大整数阶乘的计算
摘要:1 #include 2 3 #define mo 10000 4 int ans[1000001]; 5 //这里高精度整数存储格式是:ans[0]存储位数,低位在前,高位在后,每一个ans[i]存储四位整数 6 7 void mul(int *,int); 8 void print_ar... 阅读全文

posted @ 2015-08-21 09:10 华山青竹 阅读(887) 评论(0) 推荐(0) 编辑

0-1背包问题
摘要:1 #include <stdio.h> 2 int w[1005]; 3 int c[1005]; 4 int maxN=1005; 5 //下面这个函数是只返回0和1表示是否有解 6 int f(int s,int n)//这里是要判断把n件物品放到容量s的背包是否有解。n同时是第n件物品的重量 阅读全文

posted @ 2015-08-20 16:21 华山青竹 阅读(673) 评论(0) 推荐(0) 编辑

极值问题(acms)
摘要:【问题描述】 已知m、n为整数,且满足下列两个条件: ① m、n∈{1,2,…,k},即1≤m,n≤k,(1≤k≤109)。 ②(n2-m*n-m2)2=1 你的任务是:编程输入正整数k,求一组满足上述两个条件的m、n,并且使m2+n2的值最大。例如,从键盘输入k=1995,则输出:m=987 n= 阅读全文

posted @ 2015-08-18 17:13 华山青竹 阅读(1666) 评论(0) 推荐(0) 编辑

含有重复元素的排列
摘要:Description设R={ r1, r2, ……, rn}是要进行排列的n个元素。其中元素r1,r2,……,rn可能相同。试设计一个算法,列出R的所有不同排列。给定n以及待排列的n个元素。计算出这n个元素的所有不同排列。Input输入数据的的第1行是元素个数n,1≤n≤500。接下来的1行是待排... 阅读全文

posted @ 2015-05-27 18:36 华山青竹 阅读(1203) 评论(0) 推荐(0) 编辑

【递归】斐波那契数列第n个数
摘要:递归、递推计算斐波那契数列第n项的值: 1 #include 2 long long fact(int n); //【递推】计算波那契数列第n个数 3 long long fact2(int n);//【递归】 4 int main(int argc, char *argv[]) 5 { 6 ... 阅读全文

posted @ 2015-05-04 18:28 华山青竹 阅读(787) 评论(0) 推荐(0) 编辑

二分查找【循环和递归】
摘要:对一个数组a,在区间下标[x,y]寻找p是否存在,存在则返回下标,否则返回-1。循环和递归实现:(练习用的程序) 1 #include 2 #include 3 #include 4 5 int binSerrch(int a[],int x,int y,int p);//在非递减数组a的x到y... 阅读全文

posted @ 2015-05-04 18:26 华山青竹 阅读(452) 评论(0) 推荐(0) 编辑

递归:正序、逆序输出一个正整数的各位数字
摘要:输入一个正整数,用递归的方式输出该数的各位数字,要求正序、逆序都要输出。嗯这个只是训练递归用的一个小程序。 1 #include 2 void fun(int n); 3 void fun2(int n); 4 int main(int argc, char *argv[]) 5 { 6 ... 阅读全文

posted @ 2015-05-04 18:24 华山青竹 阅读(5256) 评论(0) 推荐(0) 编辑

2的次幂表示【递归算法训练】
摘要:【一个比较经典的算法题目】 题目链接: http://lx.lanqiao.org/problem.page?gpid=T235 http://noi.openjudge.cn/ch0202/8758/ http://codevs.cn/problem/5165/ https://www.luogu 阅读全文

posted @ 2015-04-11 12:45 华山青竹 阅读(1742) 评论(0) 推荐(0) 编辑

数塔问题【递推算法】
摘要:关于输入:本题输入一个正整数n,然后输入n行数字,其中第i行有i个数字。例如: 5 73 88 1 02 7 4 44 5 2 6 5 本题输入的三角数组形状如下图1,在处理数据时按图2形状来处理。在上面的输入案例中,可以按图3所示数塔来处理。 图1 图2 图3 问题需求:从数塔顶层到底层的某处所经 阅读全文

posted @ 2015-04-09 18:07 华山青竹 阅读(1555) 评论(0) 推荐(0) 编辑

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示