自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Django2与Django3之间的不同

最近在复现别人django的一个电商系统项目,他用的是django2,而我使用的是django3。在调试的过程中,由于这两个版本之间某些语法或者是要求的不同,出现了很多bug。从现在开始,这篇博文会写一些我在探索过程中对django2和django3不同点的总结。一、url()与path()*url()和path()*都是用于实例化urlpatterns的函数。url()是在django1、...

2020-02-15 15:41:21 17543 3

原创 LeetCode-115 真的没想出来状态转移方程

一、心路历程这道题是有关字符串的问题,与之前字符串匹配的问题不同,它要求的不是子串匹配,也不是模式串匹配,而是序列匹配。问题发生了变化,但不变的思路是:暴力!暴力就完了! ,这道题如果使用暴力法可就真的“完了”。暴力法是使用类似bfs的思路,每一层递归遍历两个字符串,当某一位字符相同时,就递归到下一层,判断这一位之后的子串的匹配情况,当递归到 t字符串尾时,就将匹配方案数加一。还可以有剪枝的操...

2020-02-10 20:43:28 191

原创 LeetCode-108-109 对链表的二分方法

一、思路这两道题都是要求将线性表转换成二叉搜索树,数组转化为二叉搜索树是很简单的,使用标准的二分法即可,不再赘述,之后附上代码。重点的问题是如何将链表转化为二叉搜索树(这里就不谈将链表转为数组这种只为AC的方法了)。由于不能用下标来访问链表,所以单纯地用数组转树的二分法是不合理的。那么不使用下标,该如何访问链表中点处的节点呢?方法是用快指针和慢指针来查找中点处的节点:快指针每次移动两个节点,慢...

2020-02-08 22:44:36 187

原创 LeetCode-51/52 经典回溯问题

一、思路N皇后问题可以说是最经典的回溯问题,经典到刚接触C语言的时候,就有讲到这个问题。现在重新看这个问题,就会比较熟练:问题是在模拟摆放皇后,使他们满足皇后之间不可互相攻击这个条件。国际象棋中,皇后可以横、直、斜着走,步数不受限制,但不能越子。如对国际象棋感兴趣可以自己在 https://lichess.org/ 这个网站上自己玩。如果将棋盘分成行、列、斜三种情况(斜这种情况其实还...

2020-02-08 14:51:59 175

原创 LeetCode-94 莫里斯中序遍历

中序遍历常见的是递归和用栈辅助遍历两种方法,这两种方法网上很常见,故我不再赘述。在看题解的时候,我看到一种莫里斯中序遍历,很有意思,就在写了一份关于这个的代码。一、思路首先是莫里斯中序遍历的过程:对于当前节点node来说,如果node的左子树是空的,那么就将node的值压入输出序列中,并更新node的值为其右指针;否则,将node左子树最右端节点的右指针指向node(这一步的目的之后...

2020-02-07 16:22:49 457 1

原创 LeetCode-103 双端队列

一、思路的诞生这个问题是在层次遍历的基础上做了延伸,寻找锯齿型的层次遍历。与一般层次遍历的单方向不同,锯齿形遍历是奇数层从左向右遍历,偶数层从右向左遍历(视根节点在奇数层)。这种对称的操作让我们想到了对层次遍历的数据结构队列进行改变,变为对称的双端队列(然鹅我并没有想到,我的想法还是使用队列,在入栈的顺序上做一些变化,后面会继续探讨这个想法不正确的地方。但是思路就是这样,把遍历的对称性作为突破口...

2020-02-06 12:46:53 338

原创 Unity+ARFoundation 探坑之路

前两天想要上手Unity来AR方面的项目东东 ,探索过程中出现了各种各样的问题,现在将这个过程中遇到的各种各样问题梳理一下,希望后来者能开开心心上手Unity+AR。注意:这是一篇踩坑博客,具体搭建还请自行百度。一、ARFoundation or ARCore or ARKitUnity作为一个平台,不直接提供XR(包括VR、AR和MR)的开发包,这时就需要其他公司提供各种各样的SDK工具包...

2020-02-04 12:37:31 6690

原创 LeetCode-102 层次遍历

一、思路这道题使用的是二叉树的广度优先遍历,也就是层次遍历。与单纯的层次遍历不同的地方在于,这个问题要求返回的遍历结果是一个二维数组,一行代表树的一层。但是总的思路还是和层次遍历没有区别。为了知道二叉树中每一个节点位于书的哪一层的问题,需要标识每一个节点所在的层数,并根据层次遍历时的节点,对其子节点进行标识。在这里我想到的方法有两种:第一种是建一个队列保存节点的层数,与层次遍历的队列保持一一对...

2020-02-01 16:57:24 103

原创 LeetCode-99 二叉搜索树要往中序遍历去想

一、错误思路最开始的思路,是进行深搜,向左树走的时候节点 N 压入biggers栈中,向右树走的时候节点压入smallers栈中,当子树深搜结束后,再将栈顶的节点,也就是节点 N 弹出。然后每到一个节点 P,就判断该节点与biggers和smallers栈中所有元素之间的关系,如果该节点的值大于等于biggers数组中的某一个节点 Q1,或者是该节点的值小于等于smallers数组中的某一个节点...

2020-01-31 15:45:26 166

原创 LeetCode-100 留心小问题即可

一、问题及注意点这道题主要是考察对节点为空的情况时的考虑,想要访问某一个节点的内容,第一个需要解决的问题就是排除节点空的情况。剩下的就是编写类似深搜的代码。二、具体代码class Solution {public: bool isSameTree(TreeNode* p, TreeNode* q) { return helper(p , q); } ...

2020-01-31 09:16:25 102

原创 LeetCode-4 超多方法;找到多个变量之间的关系来减少变量个数

一、直接顺序遍历到所求位置所谓求中位数,实际上就是求两个数组排序后的第 tar 个元素(当两数组长度之和m+n为奇数时,tar1 = (m+n)/2,当为偶数时,tar1 = (m+n)/2,tar2 = tar1+1)。可以想到归并排序时归并的操作,cnt1和cnt2分别指向两个数组当前遍历到的位置,选择两数组中较小的元素,将其对应遍历指针cnt加一。在这里需要注意的是,有可能出现nu...

2020-01-29 23:38:18 302

原创 LeetCode-97 指数型增长的暴力果然不可行

题目分析这个题要求判断两个字符串s1、s2,是否能通过某种方式,将他们的字符任意排列,从而组成字符串s3,也就是题目所说的s1、s2交错组成s3。思路分析1、暴力法首先想到的是简单的暴力法,对问题进行递归。按字符顺序递归。假设某一层递归s1,s2,s3分别到达下标p1,p2,p3,问题变成分别尝试s3[p3]取s1[p1]和s2[p2](取的规则是字符要求相同)并继续递归。class S...

2020-01-28 10:40:59 214

原创 LeetCode-95 合理利用返回值

一、思路最开始做这道题的时候,我把题目理解成了值为1到n的二叉搜索树有几颗,而不是这些树分别是什么。但这两个问题的关联度较大,问题的关键在于想到:当我们确定了根节点的值是什么,那么他左右子树的取值范围就已经很明确了。若根节点的取值是在[left , right]中的一个值k,由二叉搜索树的定义可知,左子树的值在[left , k-1],右子树的值在[k+1 , right]。假设我们已经求出左...

2020-01-27 21:29:06 155

翻译 Django学习(4)

• 编写一个用于问题显示的表单(form)form是HTML的一个元素,修改polls/detail.html<h1>{{ question.question_text }}</h1>{% if error_message %}<p><strong>{{ error_message }}</strong></p>{% e...

2020-01-27 13:07:15 125

原创 LeetCode-92 哨位节点的重要性

一、解题思路这个问题其实等同于反转链表,只是将问题变成了子链表。在反转链表的时候,是引入了prev,scan,next三个指针,分别表示当前节点的前一个节点,当前节点,当前节点的后一个节点。遍历的过程只需要将scan->next赋值为prev。最后处理头节点即可。回到这个问题,其实就是在反转m至n号节点,将最后处理头节点的过程变成处理这一段链表两端节点。二、具体流程首先需要先找到第...

2020-01-26 12:51:58 243

原创 LeetCode-3 官方题解的优化滑动窗口

一、子问题解决这道题之前,可以先思考一个重要的问题,就是给定的一段字符串,如何判断它是否有重复的字符。法一、容易想到的是遍历每一个字符,判断在它之后是否出现相同字符,时间复杂度o(n^2)。法二、同LeetCode-1,用哈希表进行搜索加速:维护一个数组作为哈希表,初始化为0。遍历字符串,并将每个字符对应位置(eg:‘f’-‘a’ = 5,‘f’对应下标为5)置为1,如果该位置已经置1,那么...

2020-01-26 11:30:46 149

原创 LeetCode-2 需要考虑周全的问题

一次遍历这个问题主要考察的是链表的操作和出现特殊情况的处理。1、当两个链表一样长的时候,问题比较好处理,直接挨个相加即可;2、当两个链表不一样的时候,就需要对遍历节点进行判断,不能出现再访问属性val的语句;3、由于一条链有可能为空这种极端情况,所以不能简单的采用原地算法;4、问题有一个小坑,就是有可能最后还有一位进位,对这个情况要考虑在内;5、可以通过添加一个哑节点来减少代码;/*...

2020-01-23 10:53:21 194

原创 LeetCode-1 利用哈希表进行查找加速

问题可以转换为,已有一个ele(为数组中的任意元素),需要在数组中寻找另一个元素等于target-ele1、暴力遍历法最直观的想法遍历每一个元素,再对该元素进行遍历,查看是否有满足条件的其他元素,使得他们两的加和为target。class Solution {public: vector<int> twoSum(vector<int>& nums, ...

2020-01-23 10:24:59 226

翻译 Django学习(3)

• 视图视图其实是视图函数的简称,视图是Django应用程序中网页的“类型”,通常具有特定功能并具有特定模板。在Django中,网页和其他内容是通过视图传递的。每个视图均由Python函数(或方法(对于基于类的视图而言))表示。Django将通过检查所请求的URL(准确地说,是域名之后的URL部分)来选择视图。• URLURL即统一资源定位符,是每一个信息资源都有统一的且在网上唯一的地址。...

2020-01-22 22:12:35 86

翻译 Django学习(2)

• 数据库设置默认使用SQLite,相关的设置都在setting.py文件中进行。setting,py中还有其他设置:INSTALLED_APPS文件顶部的设置。该名称包含在此Django实例中激活的所有Django应用程序的名称。其中包含一些默认的应用程序。不需要时可以在INSTALLED_APPS中删去。python manage.py migrate该migrate命令将查看该I...

2020-01-15 17:34:13 95

翻译 Django 学习(1)

• 创建项目django-admin startproject mysite创建了mysite目录:mysite/ manage.py #一个命令行实用程序,可让您以各种方式与该Django项目进行交互。 mysite/ __init__.py settings.py #此Django项目的设置/配置。 urls.py #此D...

2020-01-05 12:59:03 128

原创 KMP算法

KMP模式匹配一、引言模式匹配问题是指:寻找目标串 s 中与模式串 p 完全相同的子串。初遇这个问题,我们都能想到用暴力循环的方法进行解决int violence(char *s , char *p) //s中包含p返回第一次出现位置的下标,否则返回-1 { int slen = strlen(s); int plen = strlen(p); for (int i = 0 ...

2019-08-13 20:58:36 130

原创 图最短路问题

一、图的最短路问题分类求解最短路问题有很多种解决方案,各个方案会有对应的解决类型单源最短路问题:BFS用于解决单源无权最短路问题Dijkstra算法用于解决单源正权最短路问题Bellman-Ford、SPFA算法用于解决负权最短路问题各顶点最短路问题:Floyd算法二、BFS广度优先搜索1、BFS按照到源点的最短距离将图中的各点分类,按照距离从小到大访问各点。为了实现按距离大小访问各...

2019-07-11 00:04:55 762

原创 表达式的计算

一、前导知识1、中缀表达式:通用的算术或逻辑公式表示方法, 操作符是以中缀形式处于操作数的中间(例:3 + 4),中缀表达式是人们常用的算术表示方法;2、后缀表达式:又称逆波兰式,指的是不包含括号,运算符放在两个运算对象的后面(例:3 4 +),所有的计算按运算符出现的顺序,严格从左向右进行(不再考虑运算符的优先规则);3、我们一般计算表达式用的都是中缀表达式,便于人类进行计算;但计算机并不...

2019-07-08 00:34:22 2120

空空如也

空空如也

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

TA关注的人

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