python-算法
文章平均质量分 50
python-算法
一霎风雨.
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
python求一个数n次方的个位数
则(一个数 % 10)的(p的最后两位 % 4)次幂的最后一位是所求数,当mod为0时,p的最后两位 mod 4 取4做计算。2^1=2 2^2=4 2^3=8 2^4=6(四个一循环),同上。3^1=3 3^2=9 3^3=7 3^4=1(四个一循环)7^1=7 7^2=9 7^3=3 7^4=1(四个一循环)6的所有次方都是6,126的所有次方的最后一位都是6。1的所有次方都是1,11的所以次方的最后一位都是1。5的所有次方都是5,25的所有次方的最后一位都是5。4^1=4 4^2=6(两个一循环)原创 2024-03-25 15:49:45 · 393 阅读 · 0 评论 -
python-最长上升子序列(LIS)
因此,我们只需要维护 b 数组,对于每一个a[ i ],如果a[ i ] > b [当前最长的LIS长度],就把 a[ i ]接到当前最长的LIS后面,即b [当前最长的LIS长度 + 1] = a [ i ]。可得到的子序列:(1 2 7) (1 2 3 5) (1 2 3 4) (2 7) (2 3 5) (2 3 4) (7) (3 5) (3 4) (5) (4)将a[ i ]与前i-1位数比较,如果a[ i ]大于之前的某个数a[ j ],则f[ j ]+1,再与f[ i ]比较,取最大值。原创 2024-04-15 19:55:10 · 2080 阅读 · 1 评论 -
python-最长公共子序列(LCS)长度
S = C(n,1)*C(m,1)*1 + C(n,2) * C(m,2) * 2+ …= by ,则有L(x, y)= L(x , y - 1), LCS(x,y) = LCS(x, y – 1)= ax ,则有L(x, y)= L(x - 1, y), LCS(x,y) = LCS(x – 1, y)同样设B长度为1的子序列有C(m,1)个,长度为2的子序列有C(m,2)个,……则设A长度为1的子序列有C(n,1)个,长度为2的子序列有C(n,2)个,。长度为n的子序列有C(n,n)个。原创 2024-04-17 22:42:17 · 492 阅读 · 1 评论 -
蓝桥杯基础题(省赛)
【代码】蓝桥杯基础题(省赛)原创 2024-03-06 11:16:21 · 416 阅读 · 1 评论 -
python多字段排序问题
functools模块中的cmp_to_key()函数可以将一个比较函数(cmp)转换为关键字函数(key).python3中并不支持cmp函数.原创 2024-03-25 14:46:33 · 313 阅读 · 0 评论 -
贪心算法
现假设棋子走到位置(2,3),那么棋子从位置(2,3)如何走到右下角与之前棋子如何走到位置(2,3)无关,这就是之前的状态不会影响之后的状态。选择的贪心策略必须具备无后效性,即某个状态以前的过程不会影响以后的状态,只与当前状态有关。当棋子走到位置(2,3),之后就不能走之前走过的位置,棋子之后走的决策受之前的影响,这就是有后效性。问题:一个棋子需要从位置(0,0)走到位置(5,5),棋子每次只能往下走或往右走。修改问题:棋子可以上下左右走但不能走重复的路线。4.把子问题的局部最优解合成原来问题的一个解。原创 2024-04-03 13:30:41 · 434 阅读 · 2 评论 -
基础算法简介
查询O(1):[x1:x2,y1:y2]的子矩阵的和 = S[x2][y2] - S[x1-1][y2] - S[x2][y1-1] + S[x1-1][y1-1]预处理O(nm):S[i][j] = S[i-1][j] + S[i][j-1] + a[i][j] - S[i-1][j-1]给a数组[l,r]区间中的每个数加上c,只需要 b[l] + c,b[r+1] - c 即可。查询O(1):a[r]+...+a[l] = S[l] - S[r-1]二维数组a是数组b的前缀和数组,b是a的差分数组。原创 2024-04-04 19:00:48 · 347 阅读 · 1 评论 -
对称加密算法-DES算法(Data Encryption Standard)
DES使用56位的密钥和64位的明文块进行加密。DES算法的分组大小是64位,因此,如果需要加密的明文长度不足64位,需要进行填充;密钥K通常表示为64位,其中有8位是校验位不参与运算,相当于实际的密钥长度为56位,从56位密钥产生出不同的48位的16个子密钥(K1,K2,K3....K16),每轮运算使用一个子密钥。虽然DES算法的分组大小是64位,但是由于DES算法的密钥长度只有56位,因此DES算法存在着弱点,容易受到暴力破解和差分攻击等攻击手段的威胁。扩展为48位,然后与48位的密钥。原创 2024-04-17 14:18:50 · 439 阅读 · 1 评论 -
宽度优先搜索算法
假设某个无向图的起点为a,其相邻点有b,c,d,则遍历完a点后遍历b,c,d点。e,f遍历完后,开始遍历c点未遍历过的邻接点,直到起点的相邻点的相邻点全部遍历一遍后,开始遍历e的邻接点.....直到所有的点都被遍历过一次。宽度优先遍历是,假设开始于某个顶点(起点),从起点开始遍历与起点相邻的点,相邻点遍历结束后继续遍历上轮第一个遍历节点的相邻的未遍历的点,直到所有的点都遍历一遍后结束。创建一个集合用来保存遍历过的点,创建一个双端队列用来取出点和加入刚遍历后的邻接点,第一个点为起点。原创 2023-09-21 22:42:03 · 419 阅读 · 0 评论
分享