算法优化
Brazor
这个作者很懒,什么都没留下…
展开
-
Python小工具备份
遇到一次需要将加拿大的邮编范围打印出来的需求,比如需要打印E0A到E1V之间所有的邮编,就写了下面的小工具,备个份。原创 2024-07-04 17:55:03 · 127 阅读 · 0 评论 -
【PHP】RSA 长字符串 分段加密(117)解密(128)
RSA对明文长度和密文长度有限制,如果要加密的明文太长则会出错。RSA 1024bit 加密明文最大长度117字节,解密要求密文最大长度为128字节,所以在加密和解密的过程中需要分块进行。RSA密钥长度1024bit,加密的时候117个字符加密一次,然后把所有的密文拼接成一个密文;若RSA密钥长度为M bit,分段加密字节数为(M/8-11),分段解密字节数为(M/8)。1024bit:分段加密字节数为117,分段解密字节数为128。2048bit:分段加密字节数为245,分段解密字节数为256。转载 2023-07-25 17:47:58 · 1209 阅读 · 0 评论 -
php数组得到N个不重复的数字之和
/** * 得到数组里面两个不重复的数字之和 * @param $array ['a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5] * @param $count 2 * @return array */function getSumFromArray($array, $count = 2){ if ($count > 2) { $totalArr = []; $left = $count -.原创 2022-03-21 14:27:18 · 333 阅读 · 0 评论 -
高并发下,用户余额扣减保证一致
1,可以通过队列的方式处理;2,参见:https://m.wang1314.com/doc/webapp/topic/20483105.html高并发下,余额扣减一致性实践藏家004收藏于2018-11-01 转藏1次缘起:在高并发的分布式环境下,对于数据的查询与修改容易引发一致性问题,本文将分享一种非常简单但有效的优化方法。一、业务场景业务场景为,购买商品的过程要对余额进行查询与修改,大致的业务流程如下:(1)从数据库查询用户现有余额 SELECT money FRO...转载 2021-08-17 17:13:26 · 2100 阅读 · 0 评论 -
通过ID生成唯一推荐码
转自:https://www.cnblogs.com/aksir/p/6852544.html根据用户id生成一个唯一邀请码 1 需求描述:根据用户id生成与之对应的唯一邀请码,范围为‘0-9A-Z’。 这个需求的重点在于加粗的部分,也就是要能够根据邀请码反推出用户ID,这样邀请码就不用入库了,在用户量很大的情况下,性能可以得到不小的提升。错误...转载 2020-02-13 15:41:58 · 1384 阅读 · 0 评论 -
php 对比字符串相似度
其实我一直都觉得similar_text 就可以完成对比了(需求不复杂的话)网上找了一些文章,说similar_text返回的数字有问题,比如说:echo similar_text("吉林禽业公司火灾已致112人遇难","吉林宝源丰禽业公司火灾已致112人遇难");得到的是42,不准确。。。我希望能更正一下,请参照:https://www.w3school.com.cn/p...原创 2019-10-21 10:19:34 · 643 阅读 · 0 评论 -
PHP 使用非对称加密算法(RSA)
转自:https://www.cnblogs.com/xuweiqiang/p/9784584.html常用的rsa密钥有两种格式,一种为pkcs1,首尾分别为:# 公钥-----BEGIN RSA PUBLIC KEY----------END RSA PUBLIC KEY-----# 私钥-----BEGIN RSA PRIVATE KEY----------END RSA...转载 2019-10-09 17:40:34 · 407 阅读 · 0 评论 -
防sql和XSS
网上搜罗来自己用的,如果原作者看到了,请告知 <?php/** * 三个方法,都可以用,推荐用最后的方法,加了一个时效,并且是加密解密一体 * Class encrypt_decrypt */class encrypt_decrypt{ private $md5_key='md5_key'; private $chars ='ABCDEFGH...原创 2018-10-07 15:57:25 · 256 阅读 · 0 评论 -
不用数组函数,也不用冒泡排序,得到一维数字数组第二大的值
之前面试,一位大牛问到,怎么得到一维数组里面第二大的数组,我脑中想到的是冒泡排序,他说不能用冒泡排序,然后我想到还有数组函数,大牛说不能用数组函数,我就茫然了,大牛告诉了我两个方法,现在我将两种方法整理一下:1:找到最大的值,然后unset掉,再找一次/** * @param $arr 待处理数组 * @param bool $原创 2017-02-27 13:29:01 · 1583 阅读 · 0 评论 -
PHP实现斐波那契数列-重点说非递归
首先是转载地址: http://blog.csdn.net/star_yt/article/details/53103172原博主不在线,如您看到这篇文章,可联系我删除,谢谢. 最近在看PHP面试题,看到一个斐波拉契数列的题: 有一列数的规则如下 1、1、2、3、5、8、13、21、34... 求第30位数是多少.写出相关函数和算法名称 ,大部分网友都选择了递归,其转载 2017-02-17 11:04:07 · 1415 阅读 · 0 评论