![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
个人学习笔记
aleoyoy
这个作者很懒,什么都没留下…
展开
-
python实现搜索之二分查找
搜索搜索是在一个项目集合中找到一个特定项目的算法过程。搜索通常的答案是真的或假的,因为该项目是否存在。 搜索的几种常见方法:顺序查找、二分法查找、二叉树查找、哈希查找二分法查找二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键...原创 2019-04-06 14:45:23 · 165 阅读 · 0 评论 -
SHA算法
回顾散列算法我的上篇文章:学习散列表在上篇文章杂货铺的示例中,我们希望散列函数的结果是均匀分布的。散列函数接受一个字符串,并返回一个索引号。安全散列算法(secure hash algorithm, SHA)函数给定一个字符串, SHA返回其散列值。比如一个hello,sha返回2cf24bd…很长的值对于每个不同的字符串, SHA生成的散列值都不同。比较文件内容是否相同你可使用S...原创 2019-04-03 16:03:54 · 680 阅读 · 0 评论 -
学习散列表
回顾一下简单查找和二分查找杂货店商品对应的价格举例:简单查找就是拿出商品价目本,这个价目本并不是有序的,顾客问苹果多少钱,需要一个一个去查找某一个商品的价格,需要O(n)时间。同样是一个价目本,但是按商品名称字母排序的,这样需要的时候更短为O(logn)。但这样我还是觉得查找太慢,怎么办,这时候需要一名能记住所有商品价格的员工,这样一问评价价格便知,只需要O(1)。从数据结构的角度来看...原创 2019-04-03 15:30:36 · 144 阅读 · 0 评论 -
队列和栈
栈一张图可以简单的说明为了达到时间复杂度最低:选择的是python列表实现栈,而列表是顺序表入栈push的时候选择在列表的尾部进行添加元素,出栈在列表尾部弹出class Stack(object): """栈""" def __init__(self): self.items = [] def is_empty(self): "...原创 2019-04-03 13:55:08 · 256 阅读 · 0 评论 -
python的单例模式
单例模式是日常应用中最广泛的模式了,其目的就是令到单个进程中只存在一个类的实例,从而可以实现数据的共享,节省系统开销,防止io阻塞等等但是在多进程的应用中,单例模式就实现不了了,例如一些web应用,django,这些,因为会启动多条进程来监听http请求,这样的会通过单例模式是实现不了数据共享的,也就是实现不了单例模式的目的了,这时需要用进程间通信方法来实现数据共享,当然也可以尝试使用redis...转载 2019-04-09 11:16:01 · 79 阅读 · 0 评论 -
web处理高并发措施
高并发处理的思路,从几个方面进行解决先来了解几个名词QPS: 每秒处理的请求数量!响应时间: 处理一个请求需要的时间!吞吐量: 单位时间内的处理请求数量!最大并发数: 同一时间能支持的最大请求数!1、流量处理防盗链处理(可以在nginx.conf配置,做加密处理,或者请求域名限制)盗链概念:我们常见的小站盗用大站的图片、视频等信息资源,来减轻自己服务器的负担的现象成为盗链;因为真...原创 2019-04-12 12:15:31 · 2178 阅读 · 0 评论 -
学习递归
算法之递归递归思想递归就是函数自己调用自己,会使代码逻辑很清晰,但是Stack Overflow上有说的一句话:“如果使用循环,程序的性能可能更高;如果使用递归,程序可能更容易理解。如何选择要看什么对你来说更重要。很多排序算法都用到了递归,例如快速排序,归并排序等,具体排序算法代码参考我之前写的博客python实现常见排序算法基线条件和递归条件基线条件递归必须有一个终止条件,避免形成无...原创 2019-04-02 23:20:55 · 305 阅读 · 0 评论 -
python实现常见排序算法
python递归实现几种排序算法快速排序原理:取出第一个元素把它放到序列的中间某一个正确位置,以它进行分割成左边和右边,再分别对左边和右边进行取元素分割(递归)代码def quicksort...原创 2019-04-01 21:57:37 · 187 阅读 · 0 评论 -
写SQL语句需要注意的点
连接INNER JOIN 两边表同时有对应的数据,即任何一边缺失数据就不显示。LEFT JOIN 会读取左边数据表的全部数据,即便右边表无对应数据。RIGHT JOIN 会读取右边数据表的全部数据,即便左边表无对应数据。连接时的on和where注意on与where有什么区别,两个表连接时用on,在使用left jion时,on和where条件的区别如下:on条件是在生成临时表时...原创 2019-04-06 17:44:07 · 582 阅读 · 0 评论 -
数据库优化、数据库基础等常用知识点总结
数据库优化建表优化1)数据库范式第一范式(1NF):强调的是列的原子性,即列不能够再分成其他几列。如电话列可进行拆分—家庭电话、公司电话第二范式(2NF):首先是 1NF,另外包含两部分内容,一是表必须有主键;二是没有包含在主键中的列必须完全依赖于主键,而不能只依赖于主键的一部分。第三范式(3NF):首先是 2NF,另外非主键列必须直接依赖于主键,不能存在传递依赖。比如Stu...转载 2019-04-06 20:43:04 · 441 阅读 · 0 评论