自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 电脑微信如何登陆多个账号

一、实验环境系统:win10微信版本:2.9.5.56二、步骤2.1 退出并关闭微信2.2 鼠标左键点击四次微信图标2.3 使用不同账号登陆微信三、结果

2020-09-13 16:05:35 227

原创 移动云服务器端口注意事项

移动云服务器端口注意事项端口80,8080,443,8443有限制,需要备案真的搞心态欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:全新的界面设计 ,将会带来全新的写作体验;在创作中心设置

2020-08-23 21:08:18 1562

原创 序列化二叉树

一、问题描述请实现两个函数,分别用来序列化和反序列化二叉树二叉树的序列化是指:把一棵二叉树按照某种遍历方式的结果以某种格式保存为字符串,从而使得内存中建立起来的二叉树可以持久保存。序列化可以基于先序、中序、后序、层序的二叉树遍历方式来进行修改,序列化的结果是一个字符串,序列化时通过 某种符号表示空节点(#),以 ! 表示一个结点值的结束(value!)。二叉树的反序列化是指:根据某种遍历顺序得到的序列化字符串结果str,重构二叉树。例如,我们可以把一个只有根节点为1的二叉树序列化为"1,",然后通过

2020-06-10 11:29:41 239

原创 从上往下打印二叉树

一、题目描述从上往下打印出二叉树的每个节点,同层节点从左至右打印。二、解决思路用个队列***q***来记录节点,将每一行节点入队,挨个将每个节点出队,如果节点左孩子存在,左孩子就入队;如果右孩子存在,右孩子就入队。直到队列为空。三、Code(python)# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None#

2020-06-08 21:58:23 117

原创 把二叉树打印成多行

一、题目描述从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。二、解决思路用Q1存储前一行节点,用Q2来存储下一行节点,用res存储结果将Q1首节点出队,如果首节点左孩子存在,那么将左孩子入Q2队;如果首节点右孩子存在,那么将右孩子入Q2队。递归,Q1和Q2交替着,没读完一行节点,将该行的节点值加入res三、code(python)递归# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):#

2020-06-08 21:54:15 115

原创 python中5种下划线的含义

参考;https://blog.csdn.net/tcx1992/article/details/80105645总结如下:

2020-06-08 14:58:58 219

原创 Ubuntu18.04 安装OMNet++-5.5.1

一、安装步骤1、源码下载官网:https://omnetpp.org2、依赖包安装(ubuntu18.04)sudo apt-get install build-essential gcc g++ bison flex perl python python3 qt5-default libqt5opengl5-dev tcl-dev tk-dev libxml2-dev zlib1g-dev default-jre doxygen graphviz libwebkitgtk-3.0-03、解

2020-06-08 09:37:27 1491

原创 Ubuntu18.04 安装SUMO-1.2.0

一、安装方式源码安装二、安装步骤1、下载源码官网:http://sumo.sourceforge.net2、安装依赖库命令如下:sudo apt-get install cmake python g++ libxerces-c-dev libfox-1.6-dev libgdal-dev libproj-dev libgl2ps-dev swig3、解压SUMO-1.2.0命令行形式:tar xzf sumo-src-1.2.0.tar.gzcd sumo-1.2.0pwd这

2020-06-08 09:16:24 1277 3

原创 二叉搜索树的第k个结点

一、题目描述给定一棵二叉搜索树,请找出其中的第k小的结点。例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为4。二、解题思路二叉搜索树按照中序遍历的顺序打印出来正好就是排序好的顺序。所以,按照中序遍历顺序找到第k个结点就是结果。⚠️:要注意,返回的是节点,而不是节点的值!!!三、Code(python)中序遍历(递归):# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):

2020-06-05 14:03:40 98

原创 二叉搜索树的后序遍历序列

一、题目描述输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。二、解题思路:2.1 相关概念满二叉树:从高到低,除了叶结点外,所有结点的左右结点都存在。**完全二叉树:**比满二叉树少几个叶结点,从左向右放子结点。**平衡二叉树:**空树或者它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树也都是平衡树。**二叉搜索树:**空树或者二叉树的所有结点比它的左子结点大,比它的右子结点小。2.2 示例

2020-06-05 13:33:51 184

原创 按之字形顺序打印二叉树

一、题目描述请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。二、解题思路本题其实就是BFS的一种变形,只不过是奇数行按照从左往右,偶数行是按照从右往左,所以本文采用两个栈的形式记录奇数行和偶数行的内容,由于栈是FIFO,而我要结果是进的顺序,所以每行的内容需要翻转一次。三、Code(Python)# -*- coding:utf-8 -*-# class TreeNode:# def __i

2020-06-03 12:26:54 102

原创 栈的压入、弹出序列

# -*- coding:utf-8 -*-class Solution: def IsPopOrder(self, pushV, popV): # write code here push_len = len(pushV) pop_len = len(popV) if push_len != pop_len: return False aux_stack = [] i = 0

2020-06-03 12:20:55 120

原创 包含min函数的栈

一、题目描述定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。注意:保证测试中不会当栈为空的时候,对栈调用pop()或者min()或者top()方法。二、思路用个辅助栈来记录最小的数,栈顶即为min值。三、Codepython实现# -*- coding:utf-8 -*-class Solution: def __init__(self): self.stack = [] self.minstack

2020-06-02 08:43:16 70

原创 二进制中1的个数(一行代码)

一、题目描述输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。二、Codepython一行代码# -*- coding:utf-8 -*-class Solution: def NumberOf1(self, n): # write code here #一行代码 return sum([(n>>i & 1)for i in range(0, 32)])...

2020-06-02 08:39:32 131

原创 pyqt5+opencv+yolov3的Demo

pyqt5+opencv+yolov3的Demo前言本文的目的是pyqt5+opencv+yolov3的Demo,利用opencv采集电脑摄像头的图像数据,利用yolov3进行检测,并利用pyqt5将功能集成到ui中。一、ui界面编写直接利用Qt Designer拖拽形成.ui文件,然后利用pyuic工具将ui文件转换成py文件,下为自动生成的代码。class Ui_DetectWithUIDemo(object): def setupUi(self, DetectWithUIDemo)

2020-06-01 00:06:41 2404 5

原创 用两个栈实现队列(剑指offer)

一、题目描述题目来源:剑指offer题目详述:用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。二、题目详解两个栈,栈1和栈2入队: 如果栈2不为空,将栈2的内容全部pop到栈1里,然后栈1进行push操作;如果栈2为空,栈1直接push即可。出队: 如果栈1不为空,将栈1内容全部pop到栈2里,然后栈2进行pop;如果栈1为空,栈2直接pop即可。根据上面操作,即可满足队列的***FIFO*** 的push和pop操作。三、Code及提交结果1、C+

2020-05-30 10:27:24 92

原创 顺时针打印矩阵(剑指offer)

一、题目描述题目来源:剑指offer题目详述:输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下4 X 4矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10.二、题目详解矩阵不为空时:1)输出矩阵的第一行(删除第一行);2)矩阵逆时针旋转90度成为新的矩阵,回到1)如此我们就想到用递归来实现,其中一个重要部分就是矩阵的旋转。可以采用

2020-05-28 14:07:04 90

原创 剪绳子(剑指offer)

一、题目描述题目来源:剑指offer题目详述:给你一根长度为n的绳子,请把绳子剪成整数长的m段(m、n都是整数,n>1并且m>1),每段绳子的长度记为k[0],k[1],…,k[m]。请问k[0]xk[1]x…xk[m]可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。输入描述输入一个数n,意义见题面。(2 <= n <= 60)输出描述输出答案。示例:输入8输出16二、问题详

2020-05-28 13:21:53 257

原创 矩形覆盖(剑指offer)

一、题目描述题目来源:剑指offer具体描述:我们可以用21的小矩形横着或者竖着去覆盖更大的矩形。请问用n个21的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?示例:三、问题剖析n 个 21的小矩形无重叠地覆盖一个2n的大矩形,共有 F(n) 种方法当 n = 1 时,显然 F(n) = F(1) = 1当 n = 2 时,显然 F(n) = F(2) = 2当 n >=3 时,大矩形的最前端要么是以竖着的21的小矩形组成,要么是以2块横着的21 的小矩形组成(如下图

2020-05-27 01:08:29 84

原创 假装大佬之Python中If-else、for的多种写法

Python中If-else、for的多种写法一、If-else1、常规写法a, b, c = 1, 2, 3if a>b: c = aelse: c = b2、常用一行表达式a, b, c = 1, 2, 3c = a if a >b else b3、二维列表a, b, c = 1, 2, 3c = [b,a][a > b]4、逻辑运算法符c = (a>b and [a] or [b])[0]### 改编版c = (a

2020-05-27 00:35:07 739 1

原创 变态跳台阶(Python)

一、题目描述题目来源:剑指offer具体描述:一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。二、解题思路设 n 阶台阶,青蛙的跳法为 F(n) 种。采用 贪心策略,从上往下开始分析,青蛙先一步跳 i(1<=i<=n-1) 阶 ,那么剩下的 n-i 阶就有F(n-i)种跳法,那么 n 阶台阶有 F(n) = F(n-1)+F(n-2)+…+F(1)三、Code(Python)# -*- coding:utf-8 -*-

2020-05-26 23:11:44 292

原创 跳台阶(剑指offer)

一、题目描述题目来源:剑指offer一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。二、解题思路本题其实就是斐波那契数列的变形,设n级的台阶的跳法为F(n)当 n = 1时:F(n) = F(1) = 1;当 n = 2时:F(n) = F(2) = 2;当 n >= 3时:F(n) = F(n-1) + F(n-2)具体分析如下:n 等于1或2时,结果很明显,不加赘述n 大于等于3时,问题可以化为跳到n-1阶

2020-05-25 21:18:36 76

原创 169. 多数元素

169. 多数元素每日一题一、问题描述二、解决思路及代码三、结果分析

2020-05-24 17:21:55 70

原创 telnet测试SMTP

telnet测试SMTP一、测试环境MacOS10.15.4测试qq邮箱二、流程%创建连接%telnet smtp.qq.com 25 %登录服务器%EHLO Dusa AUTH LOGINbase64编码的邮箱名base64编码的授权码%添加地址%MAIL FROM:<sender邮箱>RCPT TO:<receiver邮箱>%添加邮件数据%DATAFrom: <sender邮箱>To: <sender邮箱>su

2020-05-24 17:10:02 354

原创 二维数组中的查找

二维数组中的查找一、来源剑指offer二、类型数组三、题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。四、解决方法及分析⚠️这是个有序的二维数组设数组行数为m, 列数为n法一1、思路:按行读取,然后可以用二分法判断目标是否在该行中(python实现时直接利用in来判断)2、code(python)# -*- coding:utf-

2020-05-23 17:21:49 96

原创 409. 最长回文串

409. 最长回文串一、问题描述1.1 题目给定一个包含大写字母和小写字母的字符串,找到通过这些字母构造成的最长的回文串。在构造过程中,请注意区分大小写。比如 “Aa” 不能当做一个回文字符串。注意:假设字符串的长度不会超过 1010。1.2 示例输入:“abccccdd”输出: 7解释: 我们可以构造的最长的回文串是"dccaccd", 它的长度是 7。二、解决思路...

2020-03-19 17:25:35 98

原创 1160. 拼写单词

1160. 拼写单词

2020-03-17 15:33:36 92

原创 面试题59 - II. 队列的最大值

LeetCode面试题59 - II. 队列的最大值LeetCode每日一题一、问题描述1.1 题目描述请定义一个队列并实现函数 max_value 得到队列里的最大值,要求函数max_value、push_back 和 pop_front 的时间复杂度都是O(1)。若队列为空,pop_front 和 max_value 需要返回 -11.2 示例示例1:输入:[“MaxQue...

2020-03-07 15:12:51 218

原创 面试题57 - II. 和为s的连续正数序列

面试题57 - II. 和为s的连续正数序列Leetcode每日一题一、问题描述1.1 题目输入一个正整数 target ,输出所有和为 target 的连续正整数序列(至少含有两个数)。序列内的数字由小到大排列,不同序列按照首个数字从小到大排列。1.2 示例示例1:输入:target = 9输出:[[2,3,4],[4,5]]示例2:输入:target = 15输出...

2020-03-06 18:11:33 96

原创 Leetcode971翻转二叉树以匹配先序遍历(C++)

Leetcode971翻转二叉树以匹配先序遍历一、题目描述给定一个有 N 个节点的二叉树,每个节点都有一个不同于其他节点且处于 {1, …, N} 中的值。通过交换节点的左子节点和右子节点,可以翻转该二叉树中的节点。考虑从根节点开始的先序遍历报告的 N 值序列。将这一 N 值序列称为树的行程。(回想一下,节点的先序遍历意味着我们报告当前节点的值,然后先序遍历左子节点,再先序遍历右子节点。...

2020-02-16 15:14:06 154 1

原创 Leetcode104二叉树的最大深度

二叉树一、二叉树的最大深度(Leetcode104)二、二叉树的最小深度(Leetcode111)三、平衡二叉树(Leetcode110)四、N叉树最大深度

2020-02-06 11:19:33 184

原创 Leetcode648单词替换(字典树应用)

Leetcode648单词替换(字典树应用)C++实现一、问题描述在英语中,我们有一个叫做 词根(root)的概念,它可以跟着其他一些词组成另一个较长的单词——我们称这个词为 继承词(successor)。例如,词根an,跟随着单词 other(其他),可以形成新的单词 another(另一个)。现在,给定一个由许多词根组成的词典和一个句子。你需要将句子中的所有继承词用词根替换掉。如果继承...

2020-01-08 23:20:18 143

原创 Leetcode208. 实现Trie(前缀树)C++实现

Leetcode208. 实现Trie(前缀树)一. 前缀树介绍1、应用Trie (发音为 “try”) 或前缀树是一种树数据结构,用于检索字符串数据集中的键。这一高效的数据结构有多种应用:1)自动补全2)拼写检查3)IP路由(最长前缀匹配)4)九宫格打字预测5)单词游戏2、优势还有其他的数据结构,如平衡树和哈希表,使我们能够在字符串数据集中搜索单词。为什么我们还需要...

2020-01-04 12:16:58 530

空空如也

空空如也

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

TA关注的人

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