- 博客(6)
- 收藏
- 关注
原创 Python set查找的性能为什么比list好那么多
那现在通过set源码的熟悉,可以知道O(1)其实是最优的情况下。可以看到这里是使用for循环,从头到尾的去寻找这个元素,如果存在就返回下标,不然的话返回null,这里的时间复杂度为O(n)。但是不同的是,set中元素的查找是通过hash来进行的,所以in set的时间复杂度只有差不多O(1)。对于平均情况,假设一个简单的均匀哈希函数,时间复杂度为O(1/(1-k/n)) ,其中k/n可以由常数c
2022-09-15 16:33:38 717 1
原创 不可逆加密算法-MD5
加密算法,根据是否可逆计算出明文,分为可逆加密算法与不可逆加密算法。这两种类型的加密算法,在网络数据请求中广泛应用,提高网络安全性。其中的可逆加密算法用于加密数据包,保证数据安全,不可逆加密算法用于签名,防止数据篡改。这篇文章介绍不可逆加密算法中的md5,以及其应用场景。
2022-09-15 15:36:49 1206
原创 Python源码解析-bytes类型底层实现
在python中,有两种类型可以保存bytes(字节)类型的数据。分别是bytes与bytearray。其中bytearray支持修改任意位置的值,而bytes和tuple一样,是不可变的,无法更改其中的值。>>> b>>> bPyBytesObject类型是python源码中bytes类型的实现,PyByteArrayObject类型是bytearray类型的实现,这两者实际使用差不多,只是bytes类型无法编辑,这里只针对PyBytesObject类型进行分析。
2022-09-05 09:17:26 2394
原创 Python源码解析-整数与引用计数器
在Python源码中,整数这个概念是通过PyLongObject对象实现的。这与python2中不同,在python2,存在PyIntObject的对象,将整数类型区分为int与long。而在最新的源码中,已经将int与long的类型统一。
2022-09-01 16:52:29 412
原创 rabbitmq搭建与python应用
Rabbitmq是一个应用较广的消息中间件,凭借其高可靠、易扩展、高可用以及丰富的功能特性在很多行业得到了广泛应用。什么是消息中间件?消息中间件是利用高效可靠的机制进行与平台无法的数据交流,可以在分布式环境下扩展进程间的通信。在分布式、微服务应用越发广泛的今天,消息中间件已经成为了一名开发者必须熟悉的技能。目前使用较多的消息队列有ActiveMQ,RabbitMQ,Kafka,RocketMQ。............
2022-08-30 13:27:36 740
原创 Centos7搭建FTP站点
Centos7搭建FTP站点 vsftpd安装 安装vsftpd 设置开机自启 服务启动 查看服务状态 服务重启 vsftpd准备 创建用户 设置密码 创建目录 权限配置 vsftpd配置 常用配置 日志配置 黑名单配置 其它配置 补充说明 ftp数字代码 正常代码 错误码 Centos7搭建FTP站点vsftpd安装安装vsftpdyum instal..
2021-09-10 14:08:38 412
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人