- 博客(16)
- 资源 (1)
- 问答 (3)
- 收藏
- 关注
转载 深搜和广搜的区别
遍历分为:1.深度(Depth)优先搜索DFS:一个递归过程,有回退过程。尽可能“深”地搜索图。在深度优先搜索中,对于最新发现的顶点,如果它还有以此为起点而未探测到的边,就沿此边继续搜索下去。当结点V的所有边都已被探寻过,搜索将回溯到发现结点V有那条边的始结点,则选择其中一个作为源结点并重复以上过程,整个进程反复进行直到所有结点都被发现为止。2.广度(Breath)优先搜索BFS:一个分层的搜索过程,没有回退过程,是非递归的。只是每次都尽可能地扩展当前节点的邻居节点,之后再向其子结点进行扩展。应用上的
2021-08-17 15:26:05 1486
原创 那些年,我犯过的低级错误
让我们一点一点地说:一.都是分号惹的祸。“;”一说到这我就心酸、心痛…最开始学习C++的时候,一串代码经常没有一个分号。然后,编译…那场面…唉~。当时,我还不知道是为什么,就在OJ上提交,结果CE了。老师一看,哭笑不得。经历了几次‘‘失误’’后,我终于长了记性。虽然偶尔还会犯错,但总比以前好多了。二....
2021-05-16 15:38:12 90
原创 【C++】基本数据结构——栈
栈的定义栈(stack)又名堆栈,它是一种运算受限的线性表。限定仅在表尾进行插入和删除操作的线性表。这一端被称为栈顶(top),相对地,把另一端称为栈底(bottom)。向一个栈插入新元素又称作进栈、入栈或压栈(push),它是把新元素放到栈顶元素的上面,使之成为新的栈顶元素;从一个栈删除元素又称作出栈或退栈(pop),它是把栈顶元素删除掉,使其相邻的元素成为新的栈顶元素。信息学中的栈一般是数组来实现,stl库中内置有栈这个容器。不过信息学竞赛中一般都是自己实现。基本算法1、进栈(push)
2021-05-16 15:01:26 1146
原创 【C++】递归、递推和记忆化搜索例题:拍卖
例题:拍卖直接通过一道题来说明:例题:拍卖【题目描述】一般情况下,拍卖行的拍卖师在拍卖商品的时候都是从低价开始起拍,由买方报价,最后谁出的价格高,商品就归谁所有。但海亮高中信奥公司有个拍卖行,拍卖师小刘在拍卖商品时正好相反:总是从高价开始起拍,如果没有人举成交牌就降价,而且拍卖师在降价时还有规律:假如第i次报价为w元,那么第i+1次报价为w-a或者w-b元,如果降到p元时,你认为价格合适,赶快第一个举成交牌,你就花p元买下了商品。任务:拍卖师把商品从w元降到p元的方法总数。【输入格式】第一行有
2021-05-03 22:45:39 505
原创 【C++】递推
一.递推“递推”是计算机解题的一种常用方法。利用“递推法”解题首先要分析归纳出“递推关系”。如经典的斐波那契数列问题,用 f (i)表示第 i 项的值,则 f (1) =0,f(2) =1,在 n>2 时,存在递推关系:f (n) = f(n-1) + f(n-2)。在递推问题模型中,每个数据项都与它前面的若干个数据项(或后面的若干个数据项)存在一定的关联,这种关联一般是通过一个“递推关系式”来描述的。求解问题时,需要从初始的一个或若干数据项出发,通过递推关系式逐步推进,从而推导计算出最终结果。这
2021-04-24 12:16:10 3770 1
转载 【C++】游戏开发——坦克大战(不用easyx,超好玩)
注:此文章为转载,出处https://blog.csdn.net/qq_39805477/article/details/79643934#include <stdio.h>#include <windows.h>#include <time.h> //里规格:长39*2=78 (真坐标)(假坐标宽为39) 高39 //外规格:长41*2=82 (真坐标)(
2021-04-05 13:39:51 571 2
原创 【C++】递归
程序调用自身的编程技巧称为递归。递归做为一种算法在程序设计语言中广泛应用。 一个过程或函数在其定义或说明中有直接或间接调用自身的一种方法,它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量。递归的能力在于用有限的语句来定义对象的无限集合。一般来说,递归需要有边界条件、递归前进段和递归返回段。当边界条件不满足时,递归前进;当边界条件满足时,递归返回。递归程序设计是C++语言程序设计中的一种重要的方
2021-04-04 22:53:09 6717
TA创建的收藏夹 TA关注的收藏夹
TA关注的人