摘要: 子集的生成实例input4output 11 21 2 31 2 3 41 2 41 31 3 41 422 32 3 42 433 44请按任意键继续. . .(第一行是空行表示空集)第一种方法:增量构造法顾名思义,就是要用不断在已有子集的基础上不断增加新元素一直到无法继续增加时为止(这种方法的递... 阅读全文
posted @ 2014-08-29 22:26 雨尘之林 阅读(1124) 评论(0) 推荐(0) 编辑
摘要: 所谓暴力求解法,大意应该是根据提议分析出的所有可能的情况(优化过的研究域)来一一研究,得到最终结果。第一节呢就是枚举排列。这里的排列指的是一个集合的元素中根据字典序进行排列。用wikioi的一道题来进行解释吧样例输入 Sample Input3样例输出 Sample Output1 2 31 3 2... 阅读全文
posted @ 2014-08-26 22:26 雨尘之林 阅读(300) 评论(0) 推荐(0) 编辑
摘要: = ,= 妈蛋,拓扑排序和欧拉回路先放一放,实在有点力不从心。先继续学习暴力破解法。在那之前,把八连块和走迷宫先记录一下。八连块,此名字十分坑爹,其实只要是连着的黑色区域都叫做一个八连块。计算一个图中黑色八连快的个数,分析:利用DFS的思想来从0,0起点遍历整个图,遍历的过程中先是寻找到一个没有被访... 阅读全文
posted @ 2014-08-16 18:14 雨尘之林 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 记录二叉树的最大宽度W和深度D根据输入树的方式,考虑用循环更新的方法来记录,这就需要每一个节点都要有一个所在层的属性,每一层有一个所拥有的宽度的属性不要去考虑如何记录整个树,没必要int f[17]={0},w[17]={0};//f中存储着对应节点号的所在层数,方便记录和递增//w中存储着每层的节... 阅读全文
posted @ 2014-08-13 20:15 雨尘之林 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 首先先来复习一下递归法解决问题。引例就用十分经典的汉诺塔问题。先用数学归纳法,算出n个盘子所需要的最少步骤为2^n-1次。(动态规划的数学基础是数学归纳法,此处的递归也有某种通性)递归时要考虑最基础的步骤,那就是分三步。第一步,将上面的n-1个盘子从A移到B第二步,将第n个盘子从A移到C第三部,将那... 阅读全文
posted @ 2014-08-11 19:25 雨尘之林 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 此次重点在于 二叉树的结构体构造(指针的大量练习),数组方式构造(简易)建树的输入方式为,(11,LL) (7,LLL) (8,R) (5,) (4,L) (13,RL) (2,LLR) (1,RRR) (4,RR) ()()表示结束LL表示从根节点开始向右移两次,并且同时延伸 (5,)表示根节点首... 阅读全文
posted @ 2014-08-11 17:45 雨尘之林 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 此次重点在于一个二叉树的引例题,其实和二叉树没什么太大的关系,但是很经典。小球下落 刘汝佳白书P99比较傻瓜化的方式是,对每个小球进行路线分析,在路线分析的过程中不断动态的改变节点的状态从而实现累积效果使最后一个小球的路线得以确定。 int s[1n) break;//如果将要进入的节... 阅读全文
posted @ 2014-08-11 17:43 雨尘之林 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 写这篇文章时离学完列表已经很久了 最近真的是很懒。数据结构这部分在刘汝佳的白书上的部分太少了,我一点要找个时间好好的看一下程杰的大话。链表的优点是它强调的是相关元素之间的相对顺序,左和右。其实可以是个环状结构。用left 和 right两个数组分别记录某个元素相应左右的值,再用link函数进行元素之... 阅读全文
posted @ 2014-08-11 17:33 雨尘之林 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 队列是FIFO,因为先进先出,和排队一样。卡牌游戏扔出第一张并把新的第一张放入最后 //int q[100]={1,2,3,4,5,6,7};int q[100];void c(){ int front,rear; //front是第一个元素,rear是最后一个元素的后一个位置 front=0; r... 阅读全文
posted @ 2014-08-03 17:29 雨尘之林 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 第一个题比较小,wikioi的1076排序题,先说小题,展示一下qsort的基本用法。#include #include #include using namespace std;int a[100000];int cmp_int(const void* _a,const void* _b){ in... 阅读全文
posted @ 2014-07-29 19:28 雨尘之林 阅读(200) 评论(0) 推荐(0) 编辑
摘要: 练习基本上是照着源码打的,,主要是各种const想不清楚原因和来由。以下是自己的代码,已存为bign.h#include #include #include //此处不用.h using namespace std;//使用命名空间std struct bign//C++中取消了tpyedef {... 阅读全文
posted @ 2014-07-29 18:44 雨尘之林 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 原题:输入一些学生的分数,哪个分数出现的次数最多?如果有多个并列,从小到大输出。任务1,分数为不超过100的非负整数。(题眼。)任务2,分数为不超过100.00的非负实数。保留两位小数(两位的处理)依照惯例,先看看我的垃圾代码。#include #include #include int b[1... 阅读全文
posted @ 2014-07-19 19:48 雨尘之林 阅读(305) 评论(0) 推荐(0) 编辑
摘要: 题目链接:http://www.wikioi.com/problem/1205/1.先分析一下自己的垃圾代码(通不过3.in)#include #include char a[1000],b[1000]; //虽然b可以是int型的 但是无法判断长度int main(){ int i,j=0,al... 阅读全文
posted @ 2014-07-17 16:07 雨尘之林 阅读(251) 评论(0) 推荐(0) 编辑
摘要: 执行力太差,所以以写博客的形式督促自己。大概以后的博客会是解题报告或者领悟感想之类的风格吧。不想要再半途而废。(┯_┯) 阅读全文
posted @ 2014-07-16 20:23 雨尘之林 阅读(122) 评论(0) 推荐(0) 编辑