自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 折半枚举思想

例如:给定4个数列A,B,C,D。要从每个数列中取出一个数,使4个数的和为0。(a, b, c, d)∈ Ax B x C x D (每个数列的元素个数可以达到4000)并且 a + b + c + d = 0。求出这样的组合数个数?当一个数列中有多个相同的数字,把他们作为不同的数字看待。折半思想是针对当数据规模较大时,而无法全部枚举。这时可以采取折半,就是先枚举一半的元素组合。接着在枚举另一半的元素组合,最后将他们的结果进行合并。注意:枚举时遇到相同的的组合项要进行合并,这样便于进行查找。

2023-04-27 00:02:42 84

原创 二分查找和二分答案

二分算法可以分为二分查找和二分答案(主要考察二分答案)二分算法是:在一个广义的单调有序(递增或者递减)的区间 [ a1,an ] 中查找元素x,每次将区间分为左右长度相等的两部分,通过比较x与分界点的大小关系,判断x在哪个区间中并调整区间的上下界,重复直至找到x。时间复杂度为O(logn)优于顺序查找,所以经常用于对大量数据处理。作用 :1.查找元素是否存在2.求满足条件的最值。

2023-04-26 23:58:39 114

原创 DFS深度优先算法

深度优先算法:利用递归函数实现暴力枚举的算法。递归:指函数自己调用自己本身的过程。该算法相当于在一个迷宫一直往一个方向,没走到头或者不到终点不停,如果走到这条路的尽头则退回上一个选择点,再次选择不同的方向,直到到达终点为止。

2023-04-26 23:26:14 50 1

原创 BFS广度优先算法

广度优先:每次都尝试访问同一层的节点。如果同一层都访问完了,再访问下一层。这样做的结果是,BFS 算法找到的路径是从起点开始的 最短 合法路径。在 BFS 结束时,每个节点都是通过从起点到该点的最短路径访问的。算法过程可以看做是图上火苗传播的过程:最开始只有起点着火了,在每一时刻,有火的节点都向它相邻的所有节点传播火苗。

2023-04-26 23:16:09 67

原创 c++基础

主要用于字符串处理,可以使用输入输出流方式直接进行string操作,也可以通过文件等手段进行string操作,比char数组有更多封装好的方法。C++是面向对象的语言,与c的标志性不同的是,多了面对对象的属性和一套好用的标准库STL。当写了构造函数时,系统默认无参构造将会消失,此时创建结构体变量必须使用你提供的构造函数。Bool类型的变量仅有两种值 : true(1) 与 false(0)结构体的构造函数在创建对应结构体变量时自动调用。结构体的构造函数和结构体同名。string (字符串类型)

2023-04-25 20:59:57 50

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除