自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 图论相关算法:Dijkstra、Kruskal、Prim

'''所有顶点之间都有边的图称为完全图n个顶点的无向图有n(n-1)/2条边,n个顶点的有向图有n(n-1)条边一个顶点的度数表示他的边的个数所有顶点的度数除以二分之一就是边数。如果是有向图,那么还分出度和入度。有根图表示存在一个顶点 到其他所有定点都有路径。根顶点不一定只有一个。连通表示两个顶点之间存在路径。连通无向图:任意两个顶点之间连通就是连通无向图强连通有向图:对于有向...

2019-02-01 20:28:07 388

原创 剑指offer部分题目(三)

class Node: def __init__(self, val): self.val = val self.left = None self.right = Noneclass BinaryTree: def __init__(self): self.root = None def mk_tree(s...

2019-01-20 14:32:45 76

原创 剑指offer部分题目(二)

class Node: def __init__(self, val): self.val = val self.next = Noneclass Llst: def __init__(self): self.head = None self.end = None def print_l(self): ...

2019-01-20 11:50:52 99

原创 剑指offer部分题目(一)

# fibonaccidef fib(n): a, b = 0, 1 print(1) for i in range(n - 1): a, b = b, b + a print(b) # 打印第5个数# 跳台阶def jump_recur(n): if n == 1 or n == 0: return 1...

2019-01-20 11:45:51 148 1

原创 二叉树实现+前中后序遍历(递归+非递归实现)

# 前序遍历,中序遍历, 后序遍历class Node(): def __init__(self, val): self.val = val self.left = None self.right = None def judge(self): if not self.is_fulltree(): ...

2019-01-20 10:53:33 118 1

原创 排序(插入、冒泡、选择、归并、快排) + 二分查找 实现

# 排序算法的稳定与否决定于 会不会破坏原先序列里的相对顺序# 排序test = [1, 6, 8, 4, 7, 9, 3]test_rep = [1, 3, 1, 9, 6, 1, 8, 5, 5]print(test)# 冒泡 时间复杂度 n**2 冒泡排序是比较排序,通过比较来排序,是稳定的排序算法# 平均情况O(n2),最好情况O(n),最坏情况O(n2)def bub...

2019-01-20 10:05:24 152

原创 Django 搭建博客项目(三)

要点:1、JWT先要安装pyjwt,然后import jwtjwt分为三部分:头、负载、签名头部由加密算法构成,负载就是传输的信息,比如时间、用户的id,签名是用前两者用base64编码后再使用加密算法用密钥计算,并再次base64编码后的结果。 头、负载、签名之间用.号链接,头部和负载都要base64。jwt主要用于防篡改,并不能隐藏信息(由于base64是公开的加密算法)注册或者登...

2019-02-19 23:18:34 167

原创 MongoDB

MongoDB是最像关系型数据库的非关系型数据库,支持bson格式:{title:‘today is rainning’,price: ‘19’}类似一个文档形式。MongoDB是面向集合的mysql-表-记录 对应 mongodb-集合-文档常用命令:show dbs 查看所有数据库(mongodb不显示空db)db 当前数据库use db1 连接到db1数据库 ,或...

2019-02-16 11:10:29 125

原创 Redis

使用场景:1、session缓存 2、消息队列redis二进制安全,意味着redis字符串能包含任意类型数据。但是最大不超过512mb常用命令:exist 、del、type 、keys (keys my* 查找my开头的key)、randomkey(获得随机一个已存在的key)、dbsize(查看元素数)、rename(rename myset yourset)、expire key 10 ...

2019-02-15 19:16:37 99

原创 redis+mongodb简介

MongoDB1、高负载性能,Mysql在存储达到一定程度的时候(单表几个G)会有明显的性能下降,但是MongoDB在高负载情况下依然有很好的性能2、基于内存, 和redis一样是基于内存的非关系型数据库,因此速度很快。3、索引数据结构采用B树。4、文档型数据库,类似JSON对象,支持存储二进制数据和大型对象(比如照片)。内存不够时,非热点数据会放入磁盘5、比起Mysql,数据的写入性能...

2019-02-15 15:33:00 989

原创 MYSQL 数据库优化

本文整理收录《阿里JAVA开发手册》 《58到家数据库30条军规》 以及网上各文章 关于MYSQL数据库优化通用的部分纵向优化:字段设计、表库设计、搜索引擎、建立索引、SQL语句优化(效果最不明显)横向优化:负载均衡(Nginx 轮训、IPhash、权重)、读写分离、主从复制字段优化:1、非负数使用unsigned2、255以内用tinyint 65535用smallint 42亿用in...

2019-02-15 12:10:13 128

原创 Python实现单例模式

单例模式:就是一个类只能实例化一次,只能拥有一个实例。python中类的实例的创建由 new 完成, 实例的初始化由 init 完成。因此单例模式可以通过在new这边进行拦截来实现。class A: def __new__(cls, *args, **kwargs): if not hasattr(cls,'_instance'): setat...

2019-02-11 11:58:06 190

原创 Python常见面试题

# 打印99乘法口诀表def table99(): for i in range(1, 10): for j in range(1, i + 1): print('{}*{}={}'.format(j, i, i * j), end='\t') print()# 打印菱形def print_diamond(): fo...

2019-02-02 10:11:39 113 1

原创 装饰器实现类型检查

import inspectfrom functools import wrapsdef check(func): @wraps(func) def wrapper(*args,**kwargs): ''' doc of wrapper ''' print('doc is ',wrapper.__doc__) ...

2019-01-20 14:42:12 156

原创 python装饰器实现cache

import timeimport datetimedef cache(d={},cache_time=3): def _cache(func): def wrapper(*args,**kwargs): if d.get(args) is None or datetime.datetime.now().timestamp()-d[args][1...

2019-01-20 14:39:57 295

原创 python中多线程同步实现

import threadingimport timedef thread1(): while True: time.sleep(1) print('I love u ')# python 实现线程同步:Event、(R)Lock、semaphore、barricade、condition# Event 使用:e.set() e.clear...

2019-01-20 14:27:35 759

原创 二维数组的搜索

'''在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。'''# 首先完成 二分查找def binary_search(array, num): length = len(array) mid = length // 2 ...

2019-01-20 14:25:50 118

原创 回溯法解决N皇后的问题

# 使用回溯法解决N皇后的问题def mk_lst(size): # 生成棋盘 return [[0 for i in range(size)] for j in range(size)]def is_legal_posi(loca, size): # 判断是否合法坐标 x, y = loca[0], loca[1] size -= 1 if 0 &...

2019-01-20 11:47:52 691

原创 Django 搭建博客项目(二)——模板

如果用react 实现前端页面,Django就没必要使用模板,Django是个后台服务程序,接受请求,响应数据,接口设计就可以是纯粹的Reatful风格。Python的模板引擎默认使用Django template language (DTL)构建现在setting.py 里设置模板项目的路径,在TEMPLATES 里设置DIR:[os.path.join(BASE_DIR, template...

2018-12-17 17:35:59 118

原创 Django 搭建博客项目(一)——预备步骤

使用版本:Django 1.11.16 IDE: pycharm在Django根目录的bin文件夹下有个 django-admin.py文件在工作路径命令行键入 django-admin startproject 项目名 .'.'结尾的点表示项目根目录输入后产生需要的几个文件。重要文件说明: 1、 manage.py 命令行工具,用于创建应用、数据库迁移。2、settings.p...

2018-12-17 10:40:01 100

原创 单向链表python实现,增删改查+链表反转

单向链表,实现了增删改查以及链表反转,# 实现 is_empty / clear / append / prepend / search / insert /show_all/reverse/locate/del_posiclass Node: def __init__(self, val): self.val = val self.nextp = N...

2018-12-16 21:33:13 233

原创 JavaScript补充

/* 阅读本文前,请先完整、粗略浏览一遍w3c Javascript教程*/JS是动态弱类型语言,虽然实现声明变量,但是变量还可以赋值任何类型。NaN和任何值都不等,和自己也不等,只能用Number.isNaN(NaN)判断隐式转化:遇到字符串一律拼接成字符串。若没字符,转化成数字(bool类型是数字的子类型)遇到undefined 转化成NaN逻辑运算符、短路符 返回短路的类型,没...

2018-12-16 13:50:14 88

原创 HTML精简入门

/* 本文仅仅是为建立基本的html概念,介绍标签基本用法,更多内容请浏览w3cschool官网的 html教程*//本文末尾有用于展示标签效果的html代码,可以自行复制到vscode里(不知道的自行百度查教程安装下载),建议一遍对照代码一遍对照网页效果来看/用土话土讲来描述html:标签:你看到的html里用<>包裹的东西就是标签。标签定义了你如何组织你的内容,比如标签,则...

2018-12-16 11:12:27 266

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除