baobaohui

私信 关注
宝宝辉AD
码龄3年

落霞与孤鹜齐飞 秋水共长天一色

  • 91,301
    被访问量
  • 172
    原创文章
  • 38,016
    作者排名
  • 40
    粉丝数量
  • 于 2018-05-03 加入CSDN
获得成就
  • 获得100次点赞
  • 内容获得14次评论
  • 获得344次收藏
荣誉勋章
兴趣领域
  • #前端
    #小程序#Vue.js#CSS#HTTPS#ECMAScript 6#JavaScript#React.js#WebPack#面试#Node.js#前端框架
TA的专栏
  • 剑指offer
    49篇
  • Git
    1篇
  • JavaScript
    10篇
  • PHP
    7篇
  • 数据库
    2篇
  • 数据结构与算法
    4篇
  • 微信小程序
    2篇
  • 操作系统原理
    1篇
  • #Vue
    2篇
  • 网络组成原理
    6篇
  • 其他
    1篇
  • linux
    7篇
  • 蓝桥杯
    14篇
  • c语言
    12篇
  • 基础练习
    6篇
  • java
    59篇
  • python
    23篇
  • leetcode
    52篇
  • 数组
    1篇
  • 动态规划
    5篇
  • 前端
    5篇
  • 最近
  • 文章
  • 资源
  • 问答
  • 课程
  • 帖子
  • 收藏
  • 关注/订阅

剑指offer-js 矩阵中的路径

矩阵中的路径题目描述:请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子。如果一条路径经过了矩阵中的某一个格子,则该路径不能再进入该格子。 例如 [ a b c e][ s f c s][ a d e e] 矩阵中包含一条字符串"bcced"的路径,但是矩阵中不包含"abcb"路径, 因为字符串的第一个字符b占据了矩阵中的第一行第二个格子之后,路径不能再次进入该格子。
原创
64阅读
0评论
1点赞
发布博客于 6 月前

剑指offer-js 机器人的运动范围

机器人的运动范围题目描述: 地上有一个m行和n列的方格。一个机器人从坐标0,0的格子开始移动,每一次只能向左,右,上,下四个方向移动一格,但是不能进入行坐标和列坐标的数位之和大于k的格子。 例如,当k为18时,机器人能够进入方格(35,37),因为3+5+3+7 = 18。但是,它不能进入方格(35,38), 因为3+5+3+8 = 19。请问该机器人能够达到多少个格子?问题分析:其实题意就是在一个矩阵范围内找出 和小于等于某一个值的所有点,进行计数那么相应的 边界值就出来了:不超出矩阵范
原创
67阅读
0评论
0点赞
发布博客于 6 月前

剑指offer-js 剪绳子

剪绳子题目描述:给你一根长度为n的绳子,请把绳子剪成整数长的m段(m、n都是整数,n>1并且m>1,m<=n),每段绳子的长度记为k[1],...,k[m]。请问k[1]x...xk[m]可能的最大乘积是多少?例如,当绳子的长度是8时,我们把它剪成长度分别为2、3、3的三段,此时得到的最大乘积是18。 输入描述: 输入一个数n,意义见题面。(2 <= n <= 60)输出描述: 输出答案。 示例1 输入 8 输出 18问题分析:动态规划的
原创
54阅读
0评论
0点赞
发布博客于 6 月前

剑指offer-js 序列化二叉树

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

剑指offer-js 二叉搜索树的第k个结点

二叉搜索树的第k个结点题目描述:给定一棵二叉搜索树,请找出其中的第k小的结点。例如, (5,3,7,2,4,6,8) 中,按结点数值大小顺序第三小结点的值为4。问题分析:二叉搜索树:左子树都比根结点小,右子树都比根结点大中序遍历:左结点-根结点-右结点,对于二叉搜索树来说,中序遍历就是有序的序列对于本题而言,中序遍历之后,找第 k-1 个就行代码展示:/* function TreeNode(x) { this.val = x; this.left = null;
原创
49阅读
0评论
0点赞
发布博客于 6 月前

剑指offer-js 按之字形打印二叉树

按之字形打印二叉树推荐阅读二叉树从上到下打印把二叉树打印成多行三道题其实是递进关系 二叉树从上到下打印: while 下遍历所有节点,将节点插入到 res[] ,中 return 把二叉树打印成多行: while下遍历所有节点,然后实现 BFS(通过循环实现),将每层的的数据放到 temp[] 中,然后放到 res[] 中return 按之字形打印二叉树: while下遍历所有节点,然后实现 BFS(通过循环实现),将每层的的数据放到 temp[] 中,按顺序进行反转(判断 fla
原创
42阅读
0评论
0点赞
发布博客于 6 月前

剑指offer-js 把二叉树打印成多行

把二叉树打印成多行题目描述:从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。问题分析:剑指offer-js 二叉树从上到下打印和上面这道题结合起来,其实对于BFS,主要在于如何对同一个层级的节点数据进行展开,循环 就是一个利器,通过对该层节点的循环完成展开代码展示:/* function TreeNode(x) { this.val = x; this.left = null; this.right = null;} */function Pri
原创
58阅读
0评论
0点赞
发布博客于 6 月前

剑指offer-js 对称的二叉树

对称的二叉树题目描述:请实现一个函数,用来判断一棵二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。代码展示:/* function TreeNode(x) { this.val = x; this.left = null; this.right = null;} */function isSymmetrical(pRoot){ // 直接写就好了 if(pRoot == null) return tr
原创
43阅读
1评论
0点赞
发布博客于 6 月前

剑指offer-js 二叉树的下一个结点

二叉树的下一个结点题目描述:给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。问题分析:两种方法:方法一:暴力解法 1,根据给出的结点求出整棵树的根节点 2,根据根节点递归求出树的中序遍历,存入vector 3,在vector中查找当前结点,则当前结点的下一结点即为所求。方法二:画出图形总结要求结点的规律 (放一下官方题解给出的示意图),然后使用js实现它代码展示:/*functio
原创
60阅读
0评论
0点赞
发布博客于 6 月前

剑指offer-js 删除链表中重复的结点

删除链表中重复的结点相似题目:leetcode-java 删除排序链表中的重复元素–保留一个元素leetcode-java 删除排序链表中的重复元素II – 不保留重复元素上面用的方法会多一点,可以从多个角度理解一下题目描述: 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5问题分析: 方法一: 直接修改
原创
39阅读
0评论
0点赞
发布博客于 6 月前

剑指offer-js 链表中环的入口节点

链表中环的入口节点相似推荐判断链表中有无环判断是否有环并返回入口节点(java)题目描述:给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。问题分析:两种方法: 1,哈希表法 创建一个数组,遍历所有链表元素,判断是否在数组内,若不在,则加入;若在,就将第一个在的节点返回 2,快慢指针,floyd算法 借用两张官方解法放出的图片第一张图告诉我们,对于快慢指针,当slow和fast相遇时,相遇点在C, 同时推导出 =>2(AB+BC) = A
原创
57阅读
0评论
0点赞
发布博客于 6 月前

剑指offer-js 字符串的排列

字符串的排列题目描述:输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则按字典序打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。输入描述: 输入一个字符串,长度不超过9(可能有字符重复),字符只包括大小写字母。问题分析:固定一个值与其他值交换位置顺序,然后将生成的字符串放入res,放入时判断有无重复注意: 两次代码中的swap交换:第一次:可以看成abc->abc;第二次:abc->bac
原创
54阅读
0评论
0点赞
发布博客于 7 月前

剑指offer-js 二叉搜索树与双向链表

二叉搜索树与双向链表题目描述:输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。代码展示:/* function TreeNode(x) { this.val = x; this.left = null; this.right = null;} */function Convert(pRootOfTree){//1,构建左子树为双向链表,返回链表头节点left//2,定位到左双向链表最后一个节点//
原创
40阅读
0评论
0点赞
发布博客于 7 月前

剑指offer-js 扑克牌顺子

扑克牌顺子题目描述:LL今天心情特别好,因为他去买了一副扑克牌,发现里面居然有2个大王,2个小王(一副牌原本是54张^_^)...他随机从中抽出了5张牌,想测测自己的手气,看看能不能抽到顺子,如果抽到的话,他决定去买体育彩票,嘿嘿!!“红心A,黑桃3,小王,大王,方片5”,“Oh My God!”不是顺子.....LL不高兴了,他想了想,决定大\小 王可以看成任何数字,并且A看作1,J为11,Q为12,K为13。上面的5张牌就可以变成“1,2,3,4,5”(大小王分别看作2和4),“So Luck
原创
38阅读
0评论
0点赞
发布博客于 7 月前

剑指offer-js 孩子们的游戏(圆圈中最后剩下的数)

孩子们的游戏(圆圈中最后剩下的数)题目描述:每年六一儿童节,牛客都会准备一些小礼物去看望孤儿院的小朋友,今年亦是如此。HF作为牛客的资深元老,自然也准备了一些小游戏。其中,有个游戏是这样的:首先,让小朋友们围成一个大圈。然后,他随机指定一个数m,让编号为0的小朋友开始报数。每次喊到m-1的那个小朋友要出列唱首歌,然后可以在礼品箱中任意的挑选礼物,并且不再回到圈中,从他的下一个小朋友开始,继续0...m-1报数....这样下去....直到剩下最后一个小朋友,可以不用表演,并且拿到牛客名贵的“名侦
原创
55阅读
0评论
0点赞
发布博客于 7 月前

剑指offer-js 复杂链表的复制

复杂链表的复制题目描述:输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针random指向一个随机节点),请对此链表进行深拷贝,并返回拷贝后的头结点。注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空。问题分析:两种方式: 1,利用map对象,使用哈希表,通过哈希表来对应拷贝前后的两个复杂链表, 通过原链表的random作为键,取到新链表的random应该指向的结点。 2,直接递归复制代码展示:/*function
原创
55阅读
0评论
0点赞
发布博客于 7 月前

剑指offer-js 平衡二叉树

平衡二叉树题目描述:输入一棵二叉树,判断该二叉树是否是平衡二叉树。在这里,我们只需要考虑其平衡性,不需要考虑其是不是排序二叉树问题分析:遍历左右子树,当左子树-右子树的深度大于1时,返回-1,否则返回二叉树的深度代码展示:/* function TreeNode(x) { this.val = x; this.left = null; this.right = null;} */// 平衡二叉树:任意一子节点的左右子树高度差不大于1 (包含空树)// 思路
原创
43阅读
0评论
1点赞
发布博客于 7 月前

剑指offer-js 和为s的两个数字&&和为s的连续正数序列

和为s的两个数字&&和为s的连续正数序列和为s的两个数字题目描述:输入一个递增排序的数组和一个数字S,在数组中查找两个数,使得他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的。输出描述: 对应每个测试案例,输出两个数,小的先输出。问题分析:两个for循环找到这样的数字,进行乘积比较,然后决定数组是否push这两个数字代码展示:function FindNumbersWithSum(array, sum){ // 找到这样的数字,进行乘积比
原创
49阅读
0评论
0点赞
发布博客于 7 月前

剑指offer-js 数组中只出现一次的数字

数组中只出现一次的数字题目描述:一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字。问题分析:js中用对象做这类题,比较直观,python中的话字典也不错代码展示:function FindNumsAppearOnce(array){ // 对这些计数的问题,使用对象是一个不错的方法 // return list, 比如[a,b],其中ab是出现一次的两个数字 var arr = []; var nums = {};
原创
40阅读
0评论
0点赞
发布博客于 7 月前

剑指offer-js 两个链表的第一个公共节点

两个链表的第一个公共节点题目描述:输入两个链表,找出它们的第一个公共结点。(注意因为传入数据是链表,所以错误测试数据的提示是用其他方式显示的,保证传入数据是正确的)。问题分析:有这样几种思路: 链表中有关的相交就是结点相等。三种方法: 第一种:双重循环, 遍历第一个链表,然后遍历另一个链表,如果相等,return 第二种:哈希表 遍历一个链表并且将链表存在哈希表中,而后遍历另一个链表,如果相等,return 第三种:双指针法(使用此方法) 两条链表,共同的部分
原创
52阅读
0评论
0点赞
发布博客于 7 月前

剑指offer-js 丑数

丑数题目描述:把只包含质因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含质因子7。 习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第N个丑数。问题分析:两种思路: 1,直接算 -- 这种思路过于繁琐,应该还有其他直接算的简便算法 a,从num=2进行遍历 b,找出这个数的所有因子 c,找出所有因子中的质因子 d,判断有无除了2,3,5之外的质因子 e,若满足条件,则将该数字放在数组中,后续按
原创
32阅读
0评论
0点赞
发布博客于 7 月前

剑指offer-js 第一个只出现一次的字符

第一个只出现一次的字符题目描述:在一个字符串(0<=字符串长度<=10000,全部由字母组成)中找到第一个只出现一次的字符,并返回它的位置, 如果没有则返回 -1(需要区分大小写).(从0开始计数)问题分析: 遍历字符串,判断字符是否放在 对象res中,若不在,则加进去,同时 value=1, 若在,则对原来的值+1 遍历结束后,找到第一个value等于1的字符,然后在字符串中找到他的index索引代码展示:function FirstNotRepeatingChar
原创
48阅读
0评论
0点赞
发布博客于 7 月前

剑指offer-js 把数组排成最小的数

把数组排成最小的数题目描述:输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。问题分析:两种思路: 1,找出所有的可能排列,然后进行大小的比较 2,通过组合比较确定先后顺序,进行拼接代码展示:错误的代码var numbers = [3,32,321];function PrintMinNumber(numbers){ console.log("nu
原创
73阅读
0评论
0点赞
发布博客于 7 月前

剑指offer-js 整数中1出现的次数

整数中1出现的次数题目描述: 求出1~13的整数中1出现的次数,并算出100~1300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1、10、11、12、13因此共出现6次,但是对于后面问题他就没辙了。ACMer希望你们帮帮他,并把问题更加普遍化,可以很快的求出任意非负整数区间中1出现的次数(从1 到 n 中1出现的次数)。问题分析:两种方式: 1,找规律,找出1-9,10-99,100-999 这种个,十,百位上1出现的规律进行求解。。。(真心考验人,所以采用第二种方法,
原创
54阅读
0评论
0点赞
发布博客于 7 月前

剑指offer-js 连续子数组的最大和

连续子数组的最大和题目描述: HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢?例如:{6,-3,-2,7,-15,1,2,2},连续子向量的最大和为8(从第0个开始,到第3个为止)。给一个数组,返回它的最大连续子序列的和,你会不会被他忽悠住?(子向量的长度至少是1)问题分析:动态规划问题,核
原创
74阅读
0评论
0点赞
发布博客于 7 月前

剑指offer-js 最小的k个数

最小的k个数题目描述:输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4。问题分析:排序,拿数据,不同的是排序的方法排序方法: 1,使用数组的sort() 2,快排 3,堆排序代码展示:function GetLeastNumbers_Solution(input, k){ //1,直接排序,push数据,return var res = []; if(input.length <=0
原创
79阅读
0评论
0点赞
发布博客于 7 月前

剑指offer-js 二叉树中和为某一值的路径

二叉树中和为某一值的路径题目描述:输入一颗二叉树的根节点和一个整数,按字典序打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径。问题分析:大概的思想就是:二叉树的遍历(递归)+动态规划(push,pop数据)每次遍历的时候先将数字的值放入数组,计算数字的值是否满足条件(等于给出的num),同时当数字满足条件时是否还有多余节点,如果有,则已有路径无效,将数组中数字弹出;如果没有,则已有路径有效,将数组的值放入最终数组,然后将数组中
原创
103阅读
0评论
1点赞
发布博客于 7 月前

剑指offer-js 求1+2+3+...+n

题目描述:求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。问题分析:都不能用,就用递归好了代码展示:function Sum_Solution(n){ // write code here if(n <= 0) return n; let ans = n; return ans + Sum_Solution(n - 1);}...
原创
42阅读
0评论
0点赞
发布博客于 7 月前

git相关命令操作及多人协同开发流程

git相关命令操作及多人协同开发流程git 安装安装git -- git bash 等(官网上下载安装就好)推荐安装教程git 初始化配置1.配置用户名,邮箱git config --global user.name "git用户名"git config --global user.email "git邮箱"2.设置ssh key查看是否存在密钥cd ~/.sshls若无,则生成密钥ssh-keygen -t rsa -C "git邮箱"3.将key 添加到 git账号s
原创
40阅读
0评论
0点赞
发布博客于 7 月前

剑指offer-js 数组中出现次数超过一半的数字

数组中出现次数超过一半的数字JS中的Map对象1,js创建map对象 var map = new Map();2.将键值对放入map对象 map.set("key",value)3.根据key获取map值 map.get(key)4.删除map指定对象 delete map[key] 或 map.delete(key)5.循环遍历map map.forEach(function(key){   console.log("key",key) //输出的是map中的value值 })
原创
67阅读
0评论
0点赞
发布博客于 7 月前

剑指offer-js 二叉树的深度

二叉树的深度题目描述:输入一棵二叉树,求该树的深度。从根结点到叶结点依次经过的结点(含根、叶结点)形成树的一条路径,最长路径的长度为树的深度。问题分析:用递归一层一层往下走,同时记上数字就行,注意这种递归时的思想,通过max选出最深的代码展示:/* function TreeNode(x) { this.val = x; this.left = null; this.right = null;} */function TreeDepth(pRoot){
原创
90阅读
0评论
1点赞
发布博客于 7 月前

剑指offer-js 二叉搜索树的后序遍历

二叉搜索树的后序遍历题目描述:输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。问题分析:二叉搜索树的特点: 根结点的左子树都小于根结点,根结点的右子树都大于根结点思路: 1,根据特性找到根结点 2,从后往前找到第一个不大于根结点的索引,记录下位置 3,以这个结点为分割,进行递归代码展示:function VerifySquenceOfBST(sequence){ // wr
原创
74阅读
0评论
0点赞
发布博客于 8 月前

剑指offer-js 二叉树从上到下打印

二叉树从上到下打印题目描述:从上往下打印出二叉树的每个节点,同层节点从左至右打印。问题分析:从上到下遍历,自然要记住顺序,那么一个数组用来存节点,一个用来存要打印的值按照顺序: res 添加值,queue添加节点,按照左右顺序添加,这样,每次从queue中出队的时候都有顺序代码展示:/* function TreeNode(x) { this.val = x; this.left = null; this.right = null;} */function
原创
86阅读
0评论
1点赞
发布博客于 8 月前

剑指offer-js 栈的压入、弹出序列

栈的压入、弹出序列题目描述:输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等的)问题分析: 借用一个辅助的栈,遍历压栈顺序,先讲第一个放入栈中,这里是1, 然后判断栈顶元素是不是出栈顺序的第一个元素,这里是4, 很显然1≠4,所以我们继续压栈,
原创
190阅读
0评论
0点赞
发布博客于 9 月前

剑指offer-js 包含min函数的栈

包含min函数的栈题目描述:定义栈的数据结构,请在该类型中实现一个能够得到栈中所含最小元素的min函数(时间复杂度应为O(1))。注意:保证测试中不会当栈为空的时候,对栈调用pop()或者min()或者top()方法。问题分析:js里面的栈,大多数时候都和数组脱不了关系,在python里,栈也可以由列表来实现用一个新的数组,完成添加,删除,自然不是什么难事,主要是要想到用数组来解决代码展示:var stack = [];//数组function push(node){ sta
原创
54阅读
0评论
0点赞
发布博客于 9 月前

剑指offer-js 顺时针打印矩阵

顺时针打印矩阵题目描述:输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下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.问题分析:定义四个变量,表示左上和右下的打印范围,按照 右--下--左--上 一次旋转打印结束后,往对角分别前进和后退一个单位,也就是四个变量的值进行更改,直到最后循环结束代码展示:functio
原创
89阅读
0评论
0点赞
发布博客于 9 月前

剑指offer-js 二叉树的镜像

二叉树的镜像题目描述:操作给定的二叉树,将其变换为源二叉树的镜像。输入描述:二叉树的镜像定义:源二叉树 8 / \ 6 10 / \ / \ 5 7 9 11 镜像二叉树 8 / \ 10 6 / \ / \ 11 9 7 5问题分析:将左右子节点调换,利用递归走完所有的节点代码展示:/* function Tre
原创
139阅读
0评论
1点赞
发布博客于 9 月前

剑指offer-js 树的子结构

树的子结构题目描述:输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)问题分析:判断B是不是A的子树,那么就必须有两个操作, 遍历A子树找对应的根结点, 遍历B结点比较A树的子结构是否和B树相同通过递归完成B树节点的逐个比较,return 结果代码展示:/* function TreeNode(x) { this.val = x; this.left = null; this.right = null;} */fu
原创
67阅读
0评论
0点赞
发布博客于 9 月前

剑指offer-js 合并两个排序的链表

合并两个排序的链表题目描述:输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。问题分析:对于已经排序的两个链表来说,合成一个不减的链表,核心就是通过比较,把小的放在链表前面,然后进行逐个元素的循环,当有一个链表循环结束之后,就把另一个剩余的直接挂上去两种方式: 1,采用递归的方式(核心还是比较) 2,创建一个新链表,通过比较,依次挂载节点代码展示:/*function ListNode(x){ this.val = x; t
原创
99阅读
0评论
1点赞
发布博客于 9 月前

剑指offer-js 反转链表

反转链表题目描述:输入一个链表,反转链表后,输出新链表的表头。问题分析:利用三指针,通过链表的遍历完成顺序的反转1,创建前后指针2,用next指针指向剩余链表的头部,进行保存;3,让当前遍历到的链表结点与链表断开,再去连接链表头部pre;4,接着更新pre,让它指向当前结点;5,让链表头部参数指向下一个结点。代码展示:/*function ListNode(x){ this.val = x; this.next = null;}*/function Rever
原创
69阅读
0评论
0点赞
发布博客于 9 月前

剑指offer-js 链表中倒数第k个结点

链表中倒数第k个结点题目描述:输入一个链表,输出该链表中倒数第k个结点。问题分析:使用快慢指针,让快指针先走k步,然后快慢指针一起走,走到最后,慢指针就是倒数第k个节点代码展示:/*function ListNode(x){ this.val = x; this.next = null;}*/function FindKthToTail(head, k){ if(head === null || k<=0) return null;
原创
74阅读
0评论
0点赞
发布博客于 9 月前

剑指offer-js 二进制中1的个数

二进制中1的个数题目描述:输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。问题分析:将数字转换成二进制数字,如果是直接求的话,注意数组反转,反转之后,若不够32位进行补零负数的补码: 求出绝对值的原码,从最后一个数字开始往前数,到第一个1之后把前面的全部取反代码展示:function NumberOf1(n){ //还可以使用二进制转换来减少代码量 num.toString(2) var nums = []; var num = 0;
原创
105阅读
0评论
0点赞
发布博客于 9 月前

剑指offer-js 跳台阶-变态跳台阶

跳台阶-变态跳台阶跳台阶题目描述:一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。问题分析:作为斐波那契数列的延伸,之前写过三种写法,现在用第四种代码展示:function jumpFloor(number){ // write code here //斐波那契问题 -- 继上次三种解法的第四种 // 1 2 3 4 5 6 // 1 2 3 5 var a = 1, b
原创
61阅读
0评论
1点赞
发布博客于 9 月前

剑指offer-js 斐波那契数列

斐波那契数列题目描述:大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0,第1项是1)。n<=39问题分析:n数字不大,直接算就行,用递归,数列,定值都可以算代码展示:function Fibonacci(n){// 1,直接递归 if(n<=1){ return n; } return Fibonacci(n-1) + Fibonacci
原创
55阅读
0评论
0点赞
发布博客于 9 月前

剑指offer-js 旋转数组的最小数字

旋转数组的最小数字题目描述:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。问题分析:主要是两种方式: 1,直接找出最小的数字,输出 i,Math....
原创
71阅读
0评论
0点赞
发布博客于 9 月前

剑指offer-js 用两个栈实现队列

用两个栈实现队列题目描述:用两个栈来实现一个队列,完成队列的Push和Pop操作。队列中的元素为int类型。问题分析: 两个栈:一个插入 一个输出,但是注意 栈先入后出,队列先入先出 借助一次pop,push 之后再pop 就完成了顺序的颠倒,也就完成了先入先出代码展示:// 两个栈:一个插入 一个输出,但是注意 栈先入后出,队列先入先出// 借助一次pop,push 之...
原创
114阅读
0评论
0点赞
发布博客于 10 月前

剑指offer-js 重建二叉树

重建二叉树题目描述:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。问题分析:给出的是前序遍历序列,中序遍历序列找出根结点,也就是前序遍历序列的第一个节点,在中序遍历序列的中间部分,根据根结点进...
原创
70阅读
0评论
1点赞
发布博客于 10 月前

从头到尾打印链表

从头到尾打印链表题目描述:输入一个链表,按链表从尾到头的顺序返回一个ArrayList。问题分析:循环遍历所有结点,将节点的值加入到数组中,反转输出代码展示:function printListFromTailToHead(head){ // write code here // 创建数组,添加元素,反转输出 res = []; while(hea...
原创
81阅读
0评论
0点赞
发布博客于 10 月前

替换空格

替换空格题目描述:请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。问题分析:1,第一时间应该可以想到使用 正则表达式来进行空格的替换,关于空格的替换有两种方式: s = str.replace(/ /g,"%20"); s = str.replace(/\s/g,"...
原创
74阅读
0评论
0点赞
发布博客于 10 月前

二维数组中的查找

二维数组中的查找题目描述 在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。问题分析:1,查找二维数组中的某个元素,最简单的就是暴力法,两个for循环逐个比对2,也可以根据给出的数组特性,从右上角开始每次找最右边的开始比较,逐层向下(中间可以...
原创
54阅读
0评论
0点赞
发布博客于 10 月前

JavaScript 内存管理

JS 内存管理内存管理 MDN详细介绍链接内存生命周期分配你说需要的内存使用分配到的内存(读,写)不需要时将其释放\归还JS的内存分配值的初始化 js 在定义变量时就完成了内存分配 var n = 123; // 给数值变量分配内存var s = "azerty"; // 给字符串分配内存var o = { a: 1, b: null}; // 给对象及其包含...
原创
70阅读
0评论
0点赞
发布博客于 1 年前

vue-webpack配置过程及bug锦集

vue-webpack配置过程及bug锦集webpack的概念网页中引用的一些静态资源 js .js .jex .coffee .ts(TypeScript 类c#语言) css .css .less .sass .scss Image .jpg .png .gif .bmp .svg 字体文件(Fonts) ...
原创
256阅读
0评论
1点赞
发布博客于 1 年前

Smarty模板引擎

Smarty 模板引擎模板引擎的工作原理1,如何实现HTML代码和PHP代码分离 一个是HTML静态页面(视图文件,模板文件),扩展名是.html,包含html,css,js 一个是纯PHP程序页面(控制器文件),扩展名是.PHP 合并:在php文件的下方使用 include "./view.html" 包含视图文件 2,如何完全去除视图文件中的PHP标记...
原创
80阅读
0评论
0点赞
发布博客于 1 年前

PHP单例设计模式与工厂设计模式

PHP单例设计模式与工厂设计模式单例设计模式概念一个类只能创建一个实例对象,不管用什么方法都无法创建第2个对象, 比如,数据库类单例设计模式的要求(三私一公)一私:私有的静态的保存对象的属性一私:私有的构造方法,阻止类外new对象一私:私有的克隆方法,阻止类外clone对象一公:公共的静态的创建对象的方法单例设计模式的核心代码<?php//单例设计模式的核心代码c...
原创
55阅读
0评论
0点赞
发布博客于 1 年前

python scrapy框架简介及抓取流程

scrapy框架简介及抓取流程Scrapy简介​ Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。 ScrapyCrawl则是在Scrapy基础上进一步处理数据的爬虫框架Scrapy执行流程图Scrapy主要包括了以下组件:引擎(Scrapy): 用来处理整个系统的数据流处理, 触发事务(框架核心)调度器(Scheduler): 用来接受引擎发过来的请求, ...
原创
116阅读
0评论
1点赞
发布博客于 1 年前

PHP COOKIE和SESSION操作

PHP COOKIE和SESSION操作COOKIECOOKIE概述1,什么是COOKIE COOKIE 就是服务器暂时存放在你的电脑里的资料(.txt格式的文本文件),好让服务器辨认你的计算机 cookie是由服务器段生成,发送给user_agent(一般是浏览器),浏览器会将cookie的key/value保存 到某个目录的文本文件内,下次请求同一网站时...
原创
79阅读
0评论
0点赞
发布博客于 1 年前

PHP图像操作

PHP图像操作图像处理概述1,开启GD2图像扩展库 PHP不仅限于只产生HTML的输出,还可以创建与操作多种不同格式的图像文件 PHP提供了一些内置的图像处理函数,也可以使用GD函数库创建新图像,或处理已有的图像 目前GD2库支持JPEG,PNG和WBMP格式 GD扩展用于动态创建图片,使用c语言编写 开启GD2扩展库,将php.in...
原创
115阅读
0评论
0点赞
发布博客于 1 年前

HTTP协议详解(请求,响应)

HTTP协议详解HTTP协议概述1,B/S网络结构 浏览器/服务器模式 web浏览器 (http) web服务器 (SQL) 数据库服务器 2,HTTP协议概述 超文本传输协议(HyperText Transfer Protocol) HTTP是一个客户端和服务器端请求和应答的标准3,HTTP协议的特点 简单,快速:只...
原创
119阅读
0评论
0点赞
发布博客于 1 年前

PHP目录操作和文件操作

PHP目录操作和文件操作PHP 操作目录1,目录操作概述2,创建新目录 mkdir() 新建一个由pathname指定的目录,创建成功方式ture,否则为false bool mkdir(string $pathname,[int $mode=0777,[bool $recursive=false]]) $pathname:指定目录的路径 $m...
原创
130阅读
0评论
0点赞
发布博客于 1 年前

PHP操作数据库

PHP操作数据库PHP 连接MySQL 服务器1,mysqli_connect() 连接到mysql数据库 mysqli_connect(host,username,password,dbname,port) 如果连接成功,则返回mysqli 连接对象,如果失败,则返回false; $my = @mysqli_connect("localho...
原创
52阅读
0评论
0点赞
发布博客于 1 年前

数据库语句操作

数据库语句操作数据库介绍关系型数据库:基于关系模型而设计的数据库系统E-R 实体-关系图访问mysql数据库mysql服务 计算机服务可以开启,关闭 cmd 命令行可以开启,关闭 net start mysql net stop mysql连接数据库 cmd 命令行:mysql -uroot -p ...
原创
84阅读
0评论
1点赞
发布博客于 1 年前

腾讯云服务器django项目部署随笔

腾讯云服务器django项目部署随笔mysql修改密码部分mysql的密码条件限制的,其中包括大小写字母个数,特殊符号个数,数字个数,共多少位如果将密码设置成为“123456”,则需要进行一下修改修改mysql参数配置mysql> set global validate_password_policy=0;Query OK, 0 rows affected (0.05 sec)...
原创
266阅读
0评论
0点赞
发布博客于 1 年前

PHP运行环境配置随笔

PHP运行环境配置phpphp下载下载php 与apache连用时,下载 thread safe类型文件zip 文件下载后,进行解压php配置文件设置和时区配置1,将 PHP 的根目录下的 php.ini-development 或者 php.ini-production复制一份并改名为 php.ini,作为PHP的配置文件2,在php.ini中设置 timezone 为PRC...
原创
80阅读
0评论
0点赞
发布博客于 1 年前

linux自有服务(II)

Linux自有服务(2)设置主机名chkconfig服务配置ntp服务防火墙服务rpm管理cron/crontab 计划任务一,设置主机名回顾:#hostname#hostname -f FQDN(全限定域名)1,设置临时主机名,需要切换用户使之生效#hostname 设置的主机名2,永久设置主机名,需要重启先找到一个文件/etc/sysconfig/net...
原创
38阅读
0评论
0点赞
发布博客于 1 年前

微信小程序:正则表达式

微信小程序 正则表达式手机号码验证:if (!(/^((13[0-9])|(14[0-9])|(15[0-9])|(17[0-9])|(18[0-9]))\d{8}$/.test(number))) { wx.showToast({ title: '手机号码有误', duration: 2000, icon:'none' });}邮箱验证if (!(/^[a-zA-Z0-9...
原创
726阅读
0评论
0点赞
发布博客于 2 年前

leetcode-java 旋转图像

旋转图像题目描述:给定一个 n × n 的二维矩阵表示一个图像。将图像顺时针旋转 90 度。说明:你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。示例 1:给定 matrix =[ [1,2,3], [4,5,6], [7,8,9]],原地旋转输入矩阵,使其变为:[ [7,4,1], [8,5,2]...
原创
47阅读
0评论
0点赞
发布博客于 2 年前

leetcode-java 回文链表

回文链表题目描述:leetcode 234.回文链表请判断一个链表是否为回文链表。示例 1:输入: 1->2输出: false示例 2:输入: 1->2->2->1输出: true进阶:你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题?问题分析:回文的思想就是前后比较,找出不同返回false,不然返回true。回文链表的...
原创
63阅读
0评论
0点赞
发布博客于 2 年前

leetcode-java 反转链表

反转链表反转链表 I题目描述:反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL进阶:你可以迭代或递归地反转链表。你能否用两种方法解决这道题?问题分析:随着指针遍历的同时完成转向代码展示(已验证)://206. 反转链表class Solut...
原创
107阅读
0评论
0点赞
发布博客于 2 年前

leetcode-java 删除链表的倒数第N个节点

删除链表的倒数第N个节点删除链表中的节点题目描述:237.删除链表中的节点请编写一个函数,使其可以删除某个链表中给定的(非末尾)节点,你将只被给定要求被删除的节点。现有一个链表 -- head = [4,5,1,9],它可以表示为:4->5->1->9示例 1:输入: head = [4,5,1,9], node = 5输出: [4,1,9]解释: 给定...
原创
131阅读
0评论
1点赞
发布博客于 2 年前

leetcode-java 删除排序数组的重复项

删除排序数组的重复项删除排序数组的重复项 I题目描述:leetcode 26.给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。示例 1:给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 的前两个...
原创
204阅读
0评论
0点赞
发布博客于 2 年前

leetcode-java 删除排序链表中的重复元素II

删除排序链表中的重复元素II删除排序链表中的重复元素 I题目描述:给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字。示例 1:输入: 1->2->3->3->4->4->5输出: 1->2->5示例 2:输入: 1->1->1->2->3输出: 2->3问题...
原创
299阅读
0评论
1点赞
发布博客于 2 年前

wx-charts 微信小程序图表插件

wx-charts 微信小程序图表插件微信小程序图表插件(wx-charts)基于canvas绘制,体积小巧,支持图表类型饼图、线图、柱状图 、区域图等图表图形绘制,目前wx-charts是微信小程序图表插件中比较强大好使的一个支持图标类型饼图 pie圆环图 ring线图 line柱状图 column区域图 area雷达图 radar如何使用?1.直接引用编译好的文件 di...
转载
149阅读
0评论
0点赞
发布博客于 2 年前

leetcode-java字符串转整数(atoi)

字符串转整数(atoi)题目描述:leetcode 8.字符串转换整数(中等)请你来实现一个 atoi 函数,使其能将字符串转换成整数。首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止。当我们寻找到的第一个非空字符为正或者负号时,则将该符号与之后面尽可能多的连续数字组合起来,作为该整数的正负号;假如第一个非空字符是数字,则直接将其与之后连续的数字字符组合...
原创
78阅读
0评论
0点赞
发布博客于 2 年前

leetcode 字符串中的第一个唯一字符

字符串中的第一个唯一字符题目描述:leetcode 387.字符串中的第一个唯一字符给定一个字符串,找到它的第一个不重复的字符,并返回它的索引。如果不存在,则返回 -1。案例:s = "leetcode"返回 0.s = "loveleetcode",返回 2. 注意事项:您可以假定该字符串只包含小写字母。问题分析:返回唯一字符的索引,首先想到的是从 indexO...
原创
62阅读
0评论
0点赞
发布博客于 2 年前

leetcode-java 反转字符串

反转字符串反转字符串 I题目描述:leetcode 344.反转字符串编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 char[] 的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。你可以假设数组中的所有字符都是 ASCII 码表中的可打印字符。示例 1:输入:["h","e","l","l","...
原创
327阅读
0评论
0点赞
发布博客于 2 年前

leetcode-java 有效的数独

有效的数独题目描述:leetcode 36.有效的数独 * 判断一个 9x9 的数独是否有效。只需要根据以下规则,验证已经填入的数字是否有效即可。数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3 宫内只能出现一次。上图是一个部分填充的有效的数独。数独部分空格内已填入了数字,空白格用 '.' 表示。示例 ...
原创
274阅读
0评论
0点赞
发布博客于 2 年前

leetcode 两个数组的交集II

两个数组的交集 II题目描述:给定两个数组,编写一个函数来计算它们的交集。示例 1:输入: nums1 = [1,2,2,1], nums2 = [2,2]输出: [2,2]示例 2:输入: nums1 = [4,9,5], nums2 = [9,4,9,8,4]输出: [4,9]说明:输出结果中每个元素出现的次数,应与元素在两个数组中出现的次数一致。我们可以不考虑输...
原创
61阅读
0评论
0点赞
发布博客于 2 年前

leetcode-java 移动零

移动零题目描述: 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入: [0,1,0,3,12]输出: [1,3,12,0,0]说明:必须在原数组上操作,不能拷贝额外的数组。尽量减少操作次数。问题分析:如何能更快更好的进行数据交换是解决这道题的核心,将非零数据从前到后赋值给数组,将数组后续的空间数据赋值为零代码展...
原创
75阅读
0评论
0点赞
发布博客于 2 年前

操作系统原理:第一章 操作系统概述

第一章 操作系统概述1.1 计算机系统概观1.1.1 计算机的发展与分类1,手动、机械和电动计算机2,数字电子计算机 第一代是电子管计算机 第二代是晶体管计算机 第三代是集成电路计算机 第四代是大规模集成电路计算机 第五代 未可知3,电子计算机的分类 数字和模拟4,图灵机与存储程序原理5,未来的计算机 光子计算机 生物计...
原创
272阅读
2评论
0点赞
发布博客于 2 年前

网络组成原理:网络层

网络组成原理:网络层5.1 网络层与IP协议5.1.1 网络层基本概念网络层通过路由选择算法,为IP分组从源主机到目的主机选择一条合适的传输路径,为传输层提供端-端数据传输服务5.1.2 IPv4协议的基本内容1,IPv4协议研究的背景2,IPv4协议发展与演变详请见图 5.1 IPv4 协议的研究与发展的过程示意图5.2 IPv4协议的基本内容5.2.1 IP协议的主要特点...
原创
568阅读
0评论
0点赞
发布博客于 2 年前

Vue.js 简化版学习

Vue.js 简化版学习安装与部署创建第一个vue应用数据与方法生命周期模板语法-插值模板语法-指令class与style绑定条件渲染列表渲染事件绑定表单输入绑定组件基础组件注册单文件组件1,安装与部署vue.js 下载地址2,创建第一个vue应用<script src="vue.js" type="text/javascript" charset="...
原创
102阅读
0评论
0点赞
发布博客于 2 年前

网络组成原理:网络安全

网络组成原理:网络安全8.1 网络空间安全与网络安全的基本概念8.1.1 网络空间安全与网络安全的基本概念 应用安全系统安全 网络安全 密码学及应用 网络安全基础8.1.2 网络空间安全理论体系网络空间安全理论包括三大体系:基础理论体系,技术理论体系,应用理论体系网络安全研究的基本内容:应用理论 电子商务,电子政务,物联网及云...
原创
181阅读
0评论
0点赞
发布博客于 2 年前

网络组成原理:应用层

网络组成原理:应用层7.1 Internet 应用与应用层协议的分类7.1.1 Internet 应用技术发展的三个阶段第一阶段:提供远程登录,电子邮件,文件传输,电子公告牌与网络新闻组等基本的网络服务功能第二阶段:Web技术,以及基于Web技术的电子政务,电子商务,远程医疗与远程教育应用,搜索引擎技术第三阶段:P2P 网络应用7.1.2 C/S模式与P2P模式的比较1,客户/服务...
原创
114阅读
0评论
0点赞
发布博客于 2 年前

网络组成原理:传输层

网络组成原理:传输层6.1 传输层与传输层协议6.1.1 传输层的基本功能网络层、数据链路层与物理层实现了网络中主机之间的数据通信传输层的主要功能是实现分布式进程通信网络层的IP地址标识主机、路由器的位置信息;IP协议通过路由选择算法和链路组成的传输路径完成IP分组数据的传输;传输层协议是利用网络层所提供的服务,在源主机的应用进程与目的主机应用进程之间建立 端到端 的连接,实现...
原创
193阅读
0评论
0点赞
发布博客于 2 年前

比较常用的正则表达式

比较常用的正则表达式正则表达式用于字符串处理、表单验证等场合,实用高效。现将一些常用的表达式收集于此,以备不时之需。匹配中文字符的正则表达式: [\u4e00-\u9fa5]评注:匹配中文还真是个头疼的事,有了这个表达式就好办了匹配双字节字符(包括汉字在内):[^\x00-\xff]评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)匹配空白行的正则表达式:
...
转载
69阅读
0评论
0点赞
发布博客于 2 年前

Java 基础知识随笔1

1,语法错误 运行时错误 逻辑错误2,类名,方法名,常量,变量名的命名习惯常量中所有名字大写,类名中每个单词的首字母大写,实用小写字母命名变量和方法3,回文数4,使用Math.random()方法显示一个随机的大写字母(65-90)int num = (int)(Math.random()*26+65);(char)(num);5,编写程序中100-1000之间所有能被5 或 6整...
原创
591阅读
0评论
0点赞
发布博客于 2 年前

python Django kindEditor,双层视图查找,CMDB开发,JSONP,XSS攻击

Django kindEditor,CMDB开发,JSONP,XSS攻击kindEditor双层视图查找CMDB 开发JSONPXSS攻击1,kindEditorpip3 install beautifulsoup4beautifulsoup4 对标签进行过滤单例模式实例:@check_logindef add_article(request): """ ...
原创
50阅读
0评论
0点赞
发布博客于 2 年前

python Django 连接mysql数据库创建表详细全过程

python Django 连接mysql数据库创建表详细全过程1,在数据库中新建一个要连接的数据库(在cmd命令行里登录数据库进行创建创建)mysql -u root -p**+密码**create database day25;show databases;2,配置与Django项目同名目录下的 settings3,下载 pymysql 模块4,找到与Django项...
原创
1847阅读
0评论
4点赞
发布博客于 2 年前

python Django ModelForm,Ajax,文件上传,图片验证码+Session,HTML在线编辑器

Django ModelForm,Ajax,文件上传,图片验证码+Session,HTML在线编辑器ModelFormAjax文件上传图片验证码+SessionHTML在线编辑器1,ModelFormModel + Form => 验证 + 数据库操作- class LoginModelForm(xxx): 利用model.A 中的字段 1,生成HTML...
原创
89阅读
0评论
0点赞
发布博客于 2 年前

python Django Session,CSRF,Model操作,Form验证,中间件,缓存,信号

Django Session,CSRF,Model操作,Form验证,中间件,缓存,信号SessionCSRFModel 操作Form 验证中间件缓存信号1,Session基于cookie做用户验证时:敏感信息不适合放在cookie中a,Session 原理 cookie是保存在在用户浏览器端的键值对 Session是保存在服务器端的键值对原理: ...
原创
91阅读
0评论
0点赞
发布博客于 2 年前

python python3飞机大战

python3飞机大战一.源代码使用教程及环境配置1.环境配置打开pycharm,进入file,打开settings打开project interpreter,点击右上方 + 号搜索pygame模块并导入到此环境就配置好了。2.源代码使用教程创建一个新的python文件夹命名为“飞机”在新文件夹下再创建一个文件夹命名为“images”,用来存放游戏所需图片将以下图片下...
转载
577阅读
1评论
4点赞
发布博客于 2 年前

python Django请求的相关信息,cookie及其装饰器,母版继承分页,分页

本节知识点;URL-两个Views-请求的其他信息装饰器FBV: def auth(func): def inner(reqeust,*args,**kwargs): v = reqeust.COOKIES.get('username111') if not v: ...
原创
70阅读
0评论
0点赞
发布博客于 2 年前

python Django数据部分操作

Django 数据部分操作一对多关系表单数据表单数据的三种获取方式Ajax提交数据多对多关系一对多关系使用外键进行一对多关系的创建业务线class Business(models.Model): #id caption = models.CharField(max_length=32) code = models.CharField(max_leng...
原创
152阅读
0评论
0点赞
发布博客于 2 年前

网络组成原理:数据链路层

网络组成原理:数据链路层实质数据链路层传递的是帧封装成帧:帧首部 | IP数据报 | 帧尾部帧开始符 帧结束符SOH EOT---------- 帧 ----------透明传输 用字节填充法解决透明传输问题 ESC | EOT 转义字符 | 差错控制 误码率 CRC 循环冗余检验 余数作为 FCS两种情况下...
原创
107阅读
0评论
0点赞
发布博客于 2 年前

网络组成原理:物理层

网络组成原理:物理层目的解决传输媒体上传输数据比特流特性机械特性:接口形状,大小,引脚数目电气特性功能特性过程特性通信目的------传送消息 数据 信号 码元信道向一个方向传输信息的媒体通信类型单向通信双向交替通信双方同时通信信号类型基带信号带通信号基本的调制方法调幅调频调相信道的极限容量奈奎斯特----奈氏准则码间串扰波特B...
原创
62阅读
0评论
0点赞
发布博客于 2 年前

Linux 自有服务(I)

Linux 自有服务(I)运行模式用户与用户组管理网络设置ssh 服务修改主机名一,运行模式运行模式也可以称之为运行级别在linux进程中存在一个进程:init,进程id 为1查看进程:#ps -ef|grep init该进程存在一个对应的配置文件:inittab(系统运行级别的配置文件)centos6.5 中存在 7 中运行级别/模式 0--表示关机级别(不要将默认的...
原创
95阅读
0评论
0点赞
发布博客于 2 年前

Linux vim编辑器

vim编辑器vi 介绍vim 三种模式命令模式模式间的切换(重点)末行模式编辑模式实用功能扩展1,vi 介绍vi 编辑器 是所有unix 及 linux 系统下标准的编辑器,vim 也是 linux 的编辑器,vim 相对来说比较高级,更适合用于 coding 编辑vim 点是光标的移动,模式切换,删除,查找替换,复制,粘贴,撤销命令的使用二,vim 三种模式vi...
原创
116阅读
0评论
0点赞
发布博客于 2 年前

Linux 命令练习题

Linux 命令练习题1,如何通过命令行重启 linux 操作系统?#reboot2,如何在命令行中快速删除光标前后的内容?前:ctrl+u后:ctrl+k3,如何删除/tmp 下所有的A 开头的文件?#rm -f /tmp/A*4,系统中重要文件需要备份,如何把 /etc/passwd 备份到 /tmp 目录下?#cp /etc/passwd /tmp/5,如何查看系...
原创
229阅读
0评论
0点赞
发布博客于 2 年前

Linux 基本指令

Linux 基本指令指令与选项 linux指令基础指令进阶指令高级指令一,指令与选项 linux指令在linux 终端(命令行)中输入的内容一个完整的指令的标准格式:linux的通用格式#指令【选项】【操作对象】#指令主体【选项】【操作对象】一个指令可以包含对个选项,操作对象也可以是多个二,基础指令1,ls指令含义:ls(list)用法1,:#ls 含义:列出当前工作...
原创
244阅读
0评论
0点赞
发布博客于 2 年前

python Django的基础知识 II

Django的基础知识 II路由系统URL视图模板ORM操作Django的基础知识 I 回顾一,路由系统 URL1,url or pathdjango 版本 2…1,url(r'^index/',views.index), url(r'^home/',views.Home.as_view()),2,url(r'^detail-(\d+).html',views.detail...
原创
56阅读
0评论
1点赞
发布博客于 2 年前