
数据结构
残云墨雪
谁也不能把我左右,我会努力变得更好。
展开
-
遗传算法-01背包
遗传算法算法思想遗传算法(Genetic Algorithm, GA)是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法。其主要特点是直接对结构对象进行操作,不存在求导和函数连续性的限定;具有内在的隐并行性和更好的全局寻优能力;采用概率化的寻优方法,不需要确定的规则就能自动获取和指导优化的搜索空间,自适应地调整搜索方向。遗传算法...原创 2019-12-23 00:18:07 · 1046 阅读 · 1 评论 -
模拟退火算法(TSP问题)
模拟退火算法解决TSP问题算法思想模拟退火算法(Simulate Anneal,SA)是一种通用概率演算法,用来在一个大的搜寻空间内找寻命题的最优解模拟退火算法来源于固体退火原理,将固体加温至充分高,再让其徐徐冷却,加温时,固体内部粒子随温升变为无序状,内能增大,而徐徐冷却时粒子渐趋有序,在每个温度都达到平衡态,最后在常温时达到基态,内能减为最小。根据Metropolis准则,粒子在温度T时...原创 2019-12-02 23:51:51 · 1343 阅读 · 0 评论 -
递归思想完成n皇后问题
已经很长时间不敲代码了,感觉自己越来与颓废,所以现在又想做回一名苦逼的程序员,开启自己的代码之路。我是根据视频敲的,没有题目,先看个四皇后问题吧。所谓4皇后问题就是求解如何在4×4的棋盘上无冲突的摆放4个皇后棋子。在国际象棋中,皇后的移动方式为横竖交叉的,因此在任意一个皇后所在位置的水平、竖直、以及45度斜线上都不能出现皇后的棋子,例子要求编程求出符合要求的情况的个数原创 2017-04-04 20:07:59 · 614 阅读 · 0 评论 -
动态规划进阶题目之滑雪
Problem F: 动态规划进阶题目之滑雪Time Limit: 1 Sec Memory Limit: 64 MBSubmit: 4 Solved: 3[Submit][Status][Web Board]DescriptionMichael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激。可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次原创 2017-04-13 15:26:40 · 519 阅读 · 0 评论 -
神奇的口袋
2755:神奇的口袋查看 提交 统计 提示 提问总时间限制: 10000ms 内存限制: 65536kB描述有一个神奇的口袋,总的容积是40,用这个口袋可以变出一些物品,这些物品的总体积必须是40。John现在有n个想要得到的物品,每个物品的体积分别是a1,a2……an。John可以从这些物品中选择一些,如果选出的物体的总体积是40,那么利用这个神奇的口袋,John就可以得到这些物原创 2017-04-15 21:41:20 · 399 阅读 · 0 评论 -
01背包问题
Charm BraceletTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 38542 Accepted: 16722DescriptionBessie has gone to the mall's jewelry store and spies a ch原创 2017-04-22 13:41:25 · 336 阅读 · 0 评论 -
2815:城堡问题
2815:城堡问题查看提交统计提示提问总时间限制: 1000ms 内存限制: 65536kB描述 1 2 3 4 5 6 7 ############################# 1 # | # | # | | # #####---#####---#---#####-原创 2017-04-27 13:49:31 · 937 阅读 · 0 评论 -
汉诺塔问题
采用递归的思想来做这个问题很是简单递归出口为:如果A上就有一个盘子,那么直接把A放到C上,然后退出。如果有多个盘子,先将A移动到B,再从B移动到C。#include using namespace std;void Hanoi(int n,char A,char B,char C){if(n<=1){cout”<<C<<endl;return;}Hanoi原创 2017-06-27 12:04:32 · 270 阅读 · 0 评论 -
百练4982 踩方格
总时间限制: 1000ms 内存限制: 65536kB描述有一个方格矩阵,矩阵边界在无穷远处。我们做如下假设:a. 每走一步时,只能从当前方格移动一格,走到某个相邻的方格上;b. 走过的格子立即塌陷无法再走第二次;c. 只能向北、东、西三个方向走;请问:如果允许在方格矩阵上走n步,共有多少种不同的方案。2种走法只要有一步不一样,即被认为是不同的方案。原创 2017-07-22 23:43:26 · 735 阅读 · 0 评论 -
POJ3984 迷宫问题【BFS】
好长时间没有敲过代码了,感觉之前学过的都忘了,趁着这个暑假,打算把之前学习的东西都复习一下,当然得慢慢来,毕竟好长时间不敲代码了,怎么着都有些生疏,再加上之前学的也不咋地,相当于回炉重造吧,见笑见笑。POJ 3984题目:Description定义一个二维数组: int maze[5][5] = {0, 1, 0, 0, 0,0, 1, 0, 1,原创 2017-07-23 21:20:12 · 335 阅读 · 0 评论 -
广度优先搜索练习之神奇的电梯
广度优先搜索练习之神奇的电梯 Time Limit: 1000ms Memory limit: 65536K 题目描述 有一座已知层数为n的高楼,这座高楼的特殊之处在于只能靠电梯去上下楼,所以要去到某一层要非常耽误时间,然而更悲哀的是,这座高楼的电梯是限号的,小鑫最开始的时候在1层,他想去第x层,问题是他最起码要经过多少层(包含第x层)才能到达第x层。 输入 多组输入。 第一行是三个原创 2017-07-24 11:41:50 · 307 阅读 · 0 评论 -
递归基础之N皇后问题
递归基础之N皇后问题Description在n×n 格的棋盘上放置彼此不受攻击的n 个皇后。按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。n后问题等价于在n×n格的棋盘上放置n个皇后,任何2 个皇后不放在同一行或同一列或同一斜线上。 设计一个解n 后问题的队列式分支限界法,计算在n× n个方格上放置彼此不受攻击的n个皇后的顺序(从小到大)放置方案。原创 2018-01-25 23:47:25 · 321 阅读 · 0 评论 -
最长公共子序列
Common SubsequenceTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 51421 Accepted: 21197DescriptionA subsequence of a given sequence is the given sequenc原创 2017-04-10 21:47:40 · 271 阅读 · 0 评论 -
最长上升子序列
总时间限制: 2000ms 内存限制: 65536kB描述一个数的序列bi,当b1 b2 bS的时候,我们称这个序列是上升的。对于给定的一个序列(a1, a2, ..., aN),我们可以得到一些上升的子序列(ai1, ai2, ..., aiK),这里1 i1 i2 iK 你的任务,就是对于给定的序列,求出最长上升子序列的长度。输入输入的第一行是序列的长度N (1原创 2017-04-09 21:05:11 · 296 阅读 · 0 评论 -
Problem A: 判断操作是否合法(栈和队列)
Problem A: 判断操作是否合法(栈和队列)Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 67 Solved: 22Description假设以I和O分别表示进栈和出栈操作,栈的初态和终态均为空,进栈和出栈的操作序列可表示为仅由I和O组成的序列。顺序栈的定义为typedef struct{原创 2016-04-04 23:30:52 · 460 阅读 · 0 评论 -
Problem A: 删除区间内的元素(线性表)
Problem A: 删除区间内的元素(线性表)Time Limit: 1 Sec Memory Limit: 2 MBSubmit: 75 Solved: 24[Submit][Status][Web Board]Description若一个线性表L采用顺序存储结构,其中元素都为整数。设计一个算法,删除元素值在[x,y]之间的所有元素,要求算法的时间复杂度为O(n原创 2016-03-23 22:13:51 · 690 阅读 · 0 评论 -
问题 B: 调整表中元素顺序(线性表)
问题 B: 调整表中元素顺序(线性表)时间限制: 1 Sec 内存限制: 2 MB提交: 28 解决: 11[提交][状态][讨论版]题目描述若一个线性表L采用顺序存储结构存储,其中所有元素都为整数。设计一个算法,将所有小于0的元素移到所有大于0的元素前面,要求算法的时间复杂度不超过O(nlog(n)),空间复杂度为O(1)。 顺序表的定义为:type原创 2016-03-23 22:48:33 · 489 阅读 · 0 评论 -
Problem C: 顺序表基本运算(线性表)
问题 C: 顺序表基本运算(线性表)时间限制: 1 Sec 内存限制: 128 MBDescription编写一个程序,实现顺序表的各种基本运算(假设顺序表的元素类型为char),主函数已给出,请补充每一种方法。 1、初始化顺序表L;2、采用尾插法依次插入元素a,b,c,d,e;3、输出顺序表L;4、输出顺序表L的长度;5、判断顺序表是否为空;原创 2016-03-24 20:39:43 · 750 阅读 · 0 评论 -
Problem D: 链表的基本运算(线性表)
Problem D: 链表的基本运算(线性表)Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 18 Solved: 10Description编写一个程序,实现链表的各种基本运算(假设顺序表的元素类型为char),主函数已给出,请补充每一种方法。 1、初始化单链表L;2、采用尾插法依次插入元素a,b,c,d,e原创 2016-03-26 23:18:48 · 607 阅读 · 0 评论 -
Problem D: 编程题B-向量的数量积
Problem D: 编程题B-向量的数量积Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 164 Solved: 148Description已知两个非零向量a=(x1,y1),b=(x2,y2),则有a·b=x1x2+y1y2,即两个向量的数量积等于它们对应坐标的乘积的和。Input输入x1,y1,x2原创 2016-03-28 23:16:34 · 436 阅读 · 0 评论 -
Problem E: 高于均分的学生
Problem E: 高于均分的学生Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 67 Solved: 45Description输入n(Input第一行为学生人数 n第二行到第n+1行,每行一个学生的姓名、学号和成绩。学号和成绩都是整数。Output高于平均成绩的姓名、学号和成绩原创 2016-03-28 23:20:07 · 446 阅读 · 0 评论 -
Problem C: 括号匹配(栈和队列)
Problem C: 括号匹配(栈和队列)Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 76 Solved: 18[Submit][Status][Web Board]Description假设一个表达式中只允许包含三种括号:圆括号“(”和“)”,方括号“[”和“]”和花括号“{”和“}”,且这三种括号可按任意的次序原创 2016-04-10 18:24:16 · 670 阅读 · 0 评论 -
Problem D: 栈的基本运算(栈和队列)
Problem D: 栈的基本运算(栈和队列)Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 43 Solved: 15[Submit][Status][Web Board]Description编写一个程序,实现顺序栈的各种基本运算,主函数已给出,请补充每一种方法。 1、初始化栈s;2、判断栈s是否非原创 2016-04-10 18:27:07 · 589 阅读 · 0 评论 -
Problem D: 顺序串的基本运算
Problem D: 顺序串的基本运算Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 73 Solved: 28[Submit][Status][Web Board]Description编写一个程序,实现顺序串的各种基本运算,主函数已给出,请补充每一种方法。 1、建立串s="abcdefghefghijklmn"原创 2016-05-19 13:24:16 · 727 阅读 · 0 评论 -
POJ1163 数字三角形
1.题目信息(http://poj.org/problem?id=1163)The TriangleTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 30397 Accepted: 17973Description73 88 1原创 2017-04-08 21:29:56 · 364 阅读 · 0 评论 -
Problem E: 建立链表(线性表)
Problem E: 建立链表(线性表)Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 323 Solved: 207Description(线性表)设键盘输入n个英语单词,输入格式为n, w1, w2, …,wn,其中n表示随后输入英语单词个数,试编一程序,建立一个单向链表,实现:如果单词重复出现,则只在链表上保留一个。转载 2016-04-02 20:02:35 · 563 阅读 · 0 评论