崽崽
  • 首页
  • 归档
  • 分类
  • 标签
  • 关于

第一次习题课

第K个数(快速选择) 算法思想🔺快排思想※找到分界点x,q[l],q[(l + r) >> 1],q[r].※左边所有数Left <= x,右边所有数Right >= x.※递归排序Left,递归排序Right🔺快选思想※找到分界点x,q[l],q[(l + r) >> 1],q[r].※左边所有数Left <= x,右边
2023-04-23
算法基础 > 第一章

双指针算法

2023-04-22

前缀和与差分

一维前缀和算法思想 1.数组从a1,a2...a存储,前缀和的定义为Si=a1+a2+...+ai\ 2.求Si\ 设置S0 = 0.通过循环,Si = Si-1+ai,即可求出每个Si的值 3.求区间[l,r]的值x\ 利用x = Si-Si-1,即可求出答案。 完整代码123456789101112131415161718#include<iostream>using name
2023-04-22
算法基础 > 第一章

高精度

高精度(加、减、乘、除)高精度加法算法思想1.将高精度数用字符串表示string a,b,再用vector用数组表示vector A,B,再调用push_back方法逆序存储,存储由低位向高位存储,这样进位时方便存储,即原始数为”123456”,则存储在数组中的值为[6,5,4,3,2,1].2.设置进位t 本位的值等于(t + A[i] + B[i])%10然后传给下一位的进位为 t =
2023-04-20
算法基础 > 第一章

第二章JSP语法

JSP语法主要内容 一:JSP页面的基本结构二:声明变量和定义方法三:Java程序片 四:Java表达式五:JSP中的注释六:JSP指令标记七:JSP动作标记 一:JSP页面的基本结构1.1一个JSP页面可由5中元素组合而成:①普通的HTML标记和JavaScript标记②JSP标记,如指令标记、动作标记③变量和方法的声明④Java程序片⑤Java表达式1.2原理①一个JSP页面被第一次请求执行时
2023-04-20
JavaWeb

二分查找

查找二分查找算法思想※二分的本质并不是单调性 有单调性一定可以二分 用二分的不一定有单调性※二分的本质是找边界点 每次二分时选择答案所在区间 当区间长度为1时 得出答案※若有某种性质使得一部分满足 另一部分不满足,二分可以用来寻找这个性质边界(两个边界对应两个模板)※整数二分需要考虑边界问题,浮点二分不需要考虑边界问题。**当l = mid 时 mid = l + r + 1
2023-04-19
算法基础 > 第一章

归并排序

排序快速排序算法思想分治1.确定分界点—-mid = (l + r) / 2 2.递归排序left、right3.归并–合二为一 完整代码 1234567891011121314151617181920212223242526272829303132#include<iostream>using namespace std;const int N = 1e6 +
2023-04-19
算法基础 > 第一章

快速排序

排序快速排序算法思想分治 确定分界点:头 、尾 、(头+尾)/2、 随机 调整区间,使得小于分界点的数全在其左边,大于分界点的数全在右边 利用两个指针在数列两头向中间移动,左边的指针在碰到大于等于分界点时停下,右边的指针反之,都停下时交换两数,循环上述过程,直到两指针相交 递归处理左右两端 题目:快速排序 完整代码: 1234567891011121314151617181920
2023-04-19
算法基础 > 第一章
1…91011

搜索

Hexo Fluid