- 博客(59)
- 资源 (2)
- 收藏
- 关注
原创 136. 只出现一次的数字
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。说明:你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?示例 1:输入: [2,2,1]输出: 1示例2:输入: [4,1,2,1,2]输出: 4思路一:class Solution: def singleNumber(self, num...
2019-06-07 12:03:54
266
原创 455. 分发饼干
假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子 i ,都有一个胃口值gi ,这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j ,都有一个尺寸 sj。如果 sj >= gi,我们可以将这个饼干 j 分配给孩子 i ,这个孩子会得到满足。你的目标是尽可能满足越多数量的孩子,并输出这个最大数值。注意:你可以假设胃口值为正。一...
2019-06-07 10:42:55
274
原创 316. 去除重复字母
给定一个仅包含小写字母的字符串,去除字符串中重复的字母,使得每个字母只出现一次。需保证返回结果的字典序最小(要求不能打乱其他字符的相对位置)。示例 1:输入: "bcabc"输出: "abc"示例 2:输入: "cbacdcbc"输出: "acdb"思路:这个问题主要的就是 需保证返回结果的字典序最小(要求不能打乱其他字符的相对位置)。首先是应该获取出来每个字母出现的...
2019-06-07 10:19:10
772
原创 Django项目部署遇到的一些问题
部署项目时使用的知识点在刚进系统时需要先更新一下资源,要不然会出现找不到资源。使用sudo apt update进行更新安装完memcached之后可以使用telnet 127.0.0.1 11211 进行测试。set username 0 60 7 zhiliaoSTOREDget usernameVALUE username 0 7zhiliaoEND quitr^...
2019-04-20 16:06:03
462
原创 Django+uwsgi+Nginx项目部署
项目部署:这里用的是非常干净的ubuntu 16.04系统环境,没有使用任何云服务器,原因是因为不同的云服务器环境都不一样。我们就从零开始来完成部署。在开发机上的准备工作:确认项目没有bug。用pip freeze > requirements.txt将当前环境的包导出到requirements.txt文件中,方便部署的时候安装。把dysms_python文件准备好。因为短信验证...
2019-04-20 16:04:38
290
原创 爬取豆瓣网电影的数据信息
爬取豆瓣网电影的数据信息# -*- coding: utf-8 -*-import requestsimport jsonfrom bs4 import BeautifulSoupdef get_page(): # 1. url url= 'https://movie.douban.com/cinema/nowplaying/kaifeng/' # 2. 请求时...
2019-04-20 12:17:53
1044
原创 爬取电影天堂
电影天堂爬虫之网页分析from lxml import etreeimport requestsBASE_DOMAIN = 'http://www.ygdy8.net'url = 'http://www.ygdy8.net/html/gndy/dyzz/index.html'headers = { 'User-Agent':'Mozilla/5.0 (Windows NT 10....
2019-04-20 12:17:03
146104
原创 爬取中国天气
中国天气网爬取之华北城市数据爬取import requestsfrom bs4 import BeautifulSoupdef parser_page(url): headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like G...
2019-04-20 12:16:05
690
原创 爬取斗图网的图片
单线程爬取斗图网的图片# -*- coding: utf-8 -*-import requestsfrom bs4 import BeautifulSoupfrom urllib.request import urlretrieveimport lxml,urllibfrom lxml import etreeimport os#基本urlBASE_URL = 'https://...
2019-04-20 12:14:15
631
原创 解决办法:error: failed to push some refs to 'https://github.com/xxxx.git'
在github远程创建仓库后, 利用gitbash进行提交本地文件的时候出现如下错误:$ git push origin masterFatal: HttpRequestException encountered.Username for 'https://github.com': syb666To https://github.com/syb666/Django-admin.git...
2019-04-18 18:47:15
41602
6
原创 Django Admin站点的使用
一、创建项目使用pycharm创建Django项目,使用命令创建应用 python manage.py startapp goods (创建应用goods)二、配置文件Settings.py文件INSTALLED_APPS中加载应用配置实现注册应用,并配置数据库DATABASES = { 'default': { 'ENGINE': 'django.db....
2019-04-18 16:28:01
1026
原创 Django中状态保持总结[Cookie,session,的概述,特点,用法]
状态保持概述浏览器请求服务器是无状态的。无状态指一次用户请求时,浏览器、服务器无法知道之前这个用户做过什么,每次请求都是一次新的请求。无状态的应用层面的原因是:浏览器和服务器之间的通信都遵守HTTP协议。根本原因是:浏览器与服务器是使用Socket套接字进行通信的,服务器将请求结果返回给浏览器之后,会关闭当前的Socket连接,而且服务器也会在处理页面完毕之后销毁页面对象。有时需要保持...
2019-04-02 20:11:43
289
原创 二叉搜索树的第k个结点
题目描述给定一棵二叉搜索树,请找出其中的第k小的结点。例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为4。二叉搜索树:中序遍历就相当于从小到大排列二叉查找树(英语:Binary Search Tree),也称二叉搜索树、有序二叉树(英语:ordered binary tree),排序二叉树(英语:sorted binary tree),是指一棵空树或...
2019-03-21 18:23:25
126
原创 把二叉树打印成多行
题目描述从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。思路:层次遍历,利用列表进行辅助# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# self.righ...
2019-03-21 17:43:05
109
原创 对称的二叉树
题目描述请实现一个函数,用来判断一颗二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。思路:1.首先根节点以及其左右子树,左子树的左子树和右子树的右子树相同2.左子树的右子树和右子树的左子树相同即可,采用递归3.非递归也可,采用栈或队列存取各级子树根节点递归:# -*- coding:utf-8 -*-# class TreeNode...
2019-03-20 23:54:22
100
原创 二叉树的下一个结点
题目描述给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。思路:分析二叉树的下一个节点,一共有以下情况:1.二叉树为空,则返回空;2.节点右孩子存在,则设置一个指针从该节点的右孩子出发,一直沿着指向左子结点的指针找到的叶子节点即为下一个节点;3.节点不是根节点。如果该节点是其父节点的左孩子,...
2019-03-20 23:22:48
110
原创 平衡二叉树
题目描述输入一棵二叉树,判断该二叉树是否是平衡二叉树。思路:使用获取二叉树深度的方法来获取左右子树的深度 左右深度相减,若大于1返回False 通过递归对每个节点进行判断,若全部均未返回False,则返回True代码:# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):# ...
2019-03-11 10:55:55
102
原创 二叉树的深度
题目描述输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。思路:第一是我们可以通过借助一个队列进行层次遍历# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):# self.val = x# ...
2019-03-11 10:20:08
120
原创 Python笔试题
黑色加粗的是笔试题1.什么是GIL2.Python中的@staticmethod和@classmethod的区别 (**)3.Python里面如何拷贝一个对象,并解析深浅拷贝4.Python里面的search()和match()的区别5.简述迭代器生成器以及他们之间的区别6.什么是协程,Python中的协程是如何实现的7.什么是装饰器,请使用装饰器实现singletio...
2019-03-10 22:00:32
493
原创 Python中找出数组中第二大的数
已知numpy函数库中max和argmax函数可以得出一个数组中最大的成员以及所在位置:import numpy as np arr = [2, 3, 4, 1, 7, 6, 5]print("# arr中最大的数为{},位于第{}位".format(np.max(arr), np.argmax(arr)+1))那么如何得到一个数组中第二大的成员呢?我的思想是:将原数组中最大...
2019-03-10 13:37:08
14694
3
原创 丑数
题目描述把只包含质因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含质因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。方法一:简单粗暴,分解每一个数,看他的因数是不是只有2,3,5。import mathclass Solution: def GetUglyNumber_Solution(self, i...
2019-03-04 17:57:03
395
原创 字符串的排列(全排列)
题目描述输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。输入描述:输入一个字符串,长度不超过9(可能有字符重复),字符只包括大小写字母。#使用itertools中的permutations,可以实现全排列from itertools import ...
2019-03-03 15:44:52
437
原创 二叉搜索树的后序遍历序列
题目描述输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。思路 :BST的后序序列的合法序列是,对于一个序列S,最后一个元素是x (也就是根),如果去掉最后一个元素的序列为T,那么T满足:T可以分成两段,前一段(左子树)小于x,后一段(右子树)大于x,且这两段(子树)都是合法的后序序列。完美的递归定义...
2019-03-03 10:25:38
156
原创 从上往下打印二叉树
题目描述从上往下打印出二叉树的每个节点,同层节点从左至右打印。思路:这是一个二叉树的层次遍历,这时我们需要用一个队列来实现注意:这里我们需要注意的是root为None的情况# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):# self.val = x# se...
2019-03-03 10:04:02
199
原创 包含min函数的栈
题目描述定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。思路:当我们看到这道题要求时间复杂度为O(1),所以求最小值,肯定不能用遍历的方法进行。这时我们应该想到用一个位置存这个最小值,我在这利用了一个辅助栈来实现,辅助栈的栈顶元素一直是存储的最小值。 当push时,我们通过判断这个数值跟辅助栈的栈顶元素大小进行比较,如果这个数值比...
2019-03-03 08:59:30
143
原创 栈的压入、弹出序列
题目:输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等的)思路:这是我们需要利用一个辅助栈,首先我们一次的将这些数据添加到辅助栈中,每次都判断一次...
2019-03-02 12:07:00
96
原创 顺时针打印矩阵
思路:刚开始看着道题没想到什么好的方法,就想到暴力,但是暴力好麻烦,然后参考了一下别人的思路,恍然大悟。首先1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16这些数字是排列成一个矩阵形式。1 2 3 45 6 7 89 10 11 1213 14 15 16我的方法是每次都取第一行。当取完...
2019-03-02 10:47:03
114
原创 二叉树的镜像
题目描述操作给定的二叉树,将其变换为源二叉树的镜像。输入描述:二叉树的镜像定义:源二叉树 8 / \ 6 10 / \ / \ 5 7 9 11 镜像二叉树 8 / \ 10 6 / \ / \ 11 9 7 5...
2019-03-02 10:22:25
104
原创 树的子结构
题目描述输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)思路:1. 首先我们先判断一下树的根值是否相等2. 如果相等时我们可以写一个可以判断该根左右孩子结点是否相等的递归函数。这个函数主要是判断B数是否是A数的子结构3. 如果不相等的话,找大树的左右孩子结点当根结点,递归到步骤1# -*- coding:utf-8 -*-# cla...
2019-03-02 09:10:37
98
原创 合并两个排序的链表
思路:比较两个链表的首结点,哪个小的的结点则合并到第三个链表尾结点,并向前移动一个结点。 步骤一结果会有一个链表先遍历结束,或者没有 第三个链表尾结点指向剩余未遍历结束的链表 返回第三个链表首结点 # -*- coding:utf-8 -*-# class ListNode:# def __init__(self, x):# self.val = x#...
2019-03-02 00:05:27
128
原创 二进制中1的个数
思路:在Python的整数变成机器位数是32位,我们对每一位都与1进行与运算,如果结果为1代表当前位置为1,我们加上1.class Solution: def NumberOf1(self, n): # write code here count = 0 for i in range(32): count += ...
2019-02-28 22:30:35
99
原创 重建二叉树
输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):# ...
2019-02-28 20:22:49
118
原创 通过Pycharm上传项目到GitHub
在博客上看到一、配置Pycharm 不管你用哪种方法,进入pycharm的配置菜单。选择上图中的version control。按照图中所示,配置好github相关内容。没有github的同学,建议你自己前往官网注册,而不要通过它的快速注册通道。这一步很关键,很多同学配置完github就直接开始使用了,结果却是各种错误。这是因为,除了配置github外还要...
2019-02-24 22:46:00
384
转载 深入了解通信协议:http、TCP/IP协议与socket之间的区别
http、TCP/IP协议与socket之间的区别 网络由下往上分为: 物理层– 数据链路层–网络层– IP协议传输层– TCP协议会话层–表示层和应用层– HTTP协议 1、TCP/IP连接 手机能...
2019-02-24 17:56:44
1545
原创 Django中get和filter的区别
class Student(models.Model): name = models.CharField('姓名', max_length=20, default='') age = models.CharField('年龄', max_length=20, default='') class Book(models.Model): stud...
2019-02-17 13:43:41
1967
原创 django-debug-toolbar用法
文档:https://django-debug-toolbar.readthedocs.io/en/stable/installation.html首先安装django-debug-toolbar,然后将debug_toolbar添加到installed_apps里,然后在住url中配置if settings.DEBUG: import debug_toolbar urlp...
2019-01-21 23:44:44
484
原创 Django
Django之密码加密通过django自带的类库,来加密解密很方便,下面来简单介绍下;导入包:from django.contrib.auth.hashers import make_password, check_password从名字就可以看出来他们的作用了。一个是生成密码,一个是核对密码。例如:make_password("123456")得到结果:...
2019-01-21 23:40:04
93
转载 Python的Django框架中forms表单类的使用方法详解
用户表单是Web端的一项基本功能,大而全的Django框架中自然带有现成的基础form对象,本文就Python的Django框架中forms表单类的使用方法详解。Form表单的功能自动生成HTML表单元素检查表单数据的合法性如果验证错误,重新显示表单(数据不会重置)数据类型转换(字符类型的数据转换成相应的Python类型)Form相关的对象包括Widget:用来渲染成HTML元素的工具,如:for...
2018-06-09 23:04:40
528
原创 Python-Django如何插入一个章图片
首先我们先建立一个static的目录(与manage.py同一级别)如图然后就就是要把配置文件里加目录在settings.py里添加下面俩行STATIC_URL = '/static/'STATICFILES_DIRS = [os.path.join(BASE_DIR, "static")]然后就可以直接使用了我是小白,被坑好多次,网上的东西各种各样,还好遇到一个学长一指点就好希望能帮包你们...
2018-06-09 15:20:23
1388
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人