在上次的刷题记中分别体验了easy和medium难度,感觉easy属于纯水题,medium属于技巧性。那么,这次当然要来体验一下hard难度
675. Cut Off Trees for Golf Event
难度:
Hard
思路:
图论题,其实题意也十分清晰,在一个种满树的的矩阵中,按照树的高度从小到大依次砍树,求最短距离。
图论最短距离的搜索当然要数bfs了,对于搜索顺序,对树预处理排序即可。
可见这题的难度并不是在于思路上,而是对bfs的coding上。
STL知识回顾:
stack:
stack<element>
LIFO
stl的stack默认基于deque实现,但其实也能在声明的时候手动改成list,array或者list实现,但基本操作并不会增加,所以并没有什么太大区别。
stack基本操作主要有:插入push(),弹出pop(),查询栈顶top(),判空empty(),查询大小size()
stack支持复制已有stack进行构造,但不支持遍历的iterator
弹出函数pop()无返回值,一般与栈顶函数top()结合使用
queue:
queue<element>
FIFO
queue和stack基本功能和实现基本一模一样,只有基本操作有一点小