![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法讲解
`sake
这个作者很懒,什么都没留下…
展开
-
二分查找题解
二分就是从中割开将其分为两半,分别处理。 题目背景:给定n个单调不下降的非负整数,m次查询,每次查询给定数字在数列里第一次出现的序号,从1开始编号。 核心思路二分:由于这是一个单调的不下降序列,所以如果当前的数比要找的数k小,那么当前这个数前面的数都比这个数小所以就没有必要去判断了,而为了次数更少我们就可以直接总数列的中间开始判断,如果中间的数mid比他小,那么这个数就一定在mid—最右中间,然后在判断mid和最右的中间midmid,以此类推。 举个栗子:有a数组1 3 3 3 5 7 9 11 13 15原创 2021-10-23 18:13:40 · 366 阅读 · 0 评论 -
浅谈dfs与bfs
关于dfs与bfs,dfs叫做深度优先搜素,bfs叫做广度优先搜索。 顾名思义:dfs就是优先进行深度上的搜索,例如有如下的图 假设我们从A点开始dfs,那么遍历的第二个点就是B,B之后遍历的第三个点就是C而不是D,直到把B这条支路一直遍历到底才开始返回,往旁边开始遍历,当然第二条支路也要遍历到了最底才会到第三条支路,以此类推。dfs遍历既如下图 bfs就不一样了,bfs是广度优先搜索,顾名思义就是先遍历同一层的所有点才到下一层,既如下图 很容易的就可以看出两者的差距。 ...原创 2021-10-21 19:00:45 · 306 阅读 · 0 评论