面试笔记(1)
该文章下的 mysql 题目取自网络,我是二次进行对应延伸的思考 1.Python 的 with 使用过吗,使用在哪些场景,原理是啥with 相当于一个上下文管理器,主要用于打开资源或者关闭资源的场景,比如文件读写,数据库连接等,在执行出现异常的情况下,也能正常的关闭资源,相当于 try-finally 的二次封装嘛,主要调用了enter和exit两种魔术方法,能正常关闭也是因为exit方法优先级高,exit有三个参数异常类型,异常值,异常回溯,比起 try-finally 语句更加的优雅。 2.Python list 底部是内存是连续分布的吗连续内存块存储的是引用,而不是真正的数据,真正的数据可能存放在内存的任意位置。因为比起 golang 或者 c++来说,我记得定义数组时候要定义数组的长度,而 python 没有就说明 python 底部存储真正的数据肯定不是连续分布的,预分配原则 3.说说 fastapi 依赖注入和装饰器有啥区别fastapi 依赖注入允许你在路由函数和子依赖中声明所需的依赖,通过 depends...
数组链表哈希表解析
动态数组代码实现 class MyArrayList: # 默认容量 INIT_CAP = 1 def __init__(self, init_capacity=None): self.data = [None] * (init_capacity if init_capacity is not None else self.__class__.INIT_CAP) self.size = 0 # 在末尾增加 def add_last(self, element): now_cap = len(self.data) if self.size == now_cap: self._resize(2 * now_cap) self.data[self.size] = element self.size += 1 # 在开头增加 def add_first(self,...
工具网站推荐
leonardo.ai 简介:ai绘画网站 labuladong 的算法平台 简介:算法解析与笔记网站 Statically 简介:挂载github静态资源的网站 DownGit 简介:分离下载github文件夹的网站 DownGit 简介:分离下载github文件夹的网站
配置问题解决方案
aioredis 不兼容问题1.(解决方案)[https://blog.csdn.net/ViniJack/article/details/131809573] rust 配置镜像源问题1.(字节跳动解决方案)[https://rsproxy.cn/]
工具箱开发
打算做一个工具箱,包含一些常用的开发工具还有不同职业使用的快捷工具集合暂时起名为 child gun(孩子的枪)竞品是 dev toys 1.拟使用的技术栈 Rust Python Go Tauri Vue3 2.打算完成的功能分类一:程序员工具 二维码解码 二维码生成 json 解析 md5 加密解密 base64 加密解密 密码生成器 UUID 生成器 文本按需转换 js 压缩 js 格式化 图片尺寸修改 分类二:内容创作者工具包 标题生成器 敏感词检测 视频补帧 动态水印 热搜词云 平台发布器 情感温度计 阅读时长预估 ASMR 生成器 分类三: 生活实用工具包 红包外交官:根据亲戚关系/当地习俗推荐婚礼红包金额 生成各国求助短语二维码 电子木鱼 为视频添加老电视雪花屏/卡带掉帧效果 电子宠物 食物保质期追踪
mysql知识总结(二)
该文章下的 mysql 题目取自网络,我是二次进行对应延伸的思考 1.什么是死锁 解析 是指多个事务在执行过程中, 因资源争用造成了循环等待,事务 A 持有资源 X 并等待 Y,事务 B 持有资源 Y 并等待 X,这就形成了死锁死锁的产生原因:1.多个事务以不同的顺序访问相同的资源2.事务设计不当,事务的执行时间过长,导致资源放不出来ET: 那如何解决呢1.InnoDB存储引擎会自动检测死锁进行回滚2.调整锁等待超时参数1.固定资源的访问顺序 2.优化索引设计 3.合理选择隔离级别 2.创建索引的方式 解析 CREATE TABLE `employee` ( `id` int(11) NOT NULL, `name` varchar(255) DEFAULT NULL, `age` int(11) DEFAULT NULL, `date` datetime DEFAULT NULL, ...
mysql知识总结(一)
该文章下的 mysql 题目取自网络,我是二次进行对应延伸的思考 1.MYSQL 索引使用的话要有哪些注意事项:此问题可从两个角度来回答,索引不适用于那些场景,索引哪些场景下会失效 1.索引哪些场景下会失效 查询条件包含 or 原因:1.这我们就需要提到 mysql 的查询优化器的查询策略,他会根据查询条件和索引情况选择最优的查询计划,当 or 条件的一列未被索引,查询优化器可能会认为全表扫描比使用索引效率高,在数据分布不均匀或者大量重复值的情况下,全表扫描的优先级也可能比使用索引效率高,而且如果 or 条件设计多个索引的时候,mysql 对多个索引扫描,排序,合并,这本身就挺耗费 cpu 内存资源的。解决办法:用 or 的查询分成多个子查询,这样每个子查询可以单独使用其自身的索引,第二个方法就是创建复合索引,比如 select * from user where col1 = val1 or col2 = val2 的查询,可以创建一个(col1,col2)的复合查询 ...