自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

雨伞下的龙猫的博客

学习学习再学习

  • 博客(39)
  • 收藏
  • 关注

原创 树相关算法

上述为递归的方式,下方为非递归方式。

2021-12-20 16:48:06 91

原创 算法题小结

建立k个数大小的小顶堆,用数组保存,则第k大的数为小顶堆的第一个数。用数组存储小顶堆,当下标是i,则其左元素为2*i+1,右元素为2*i+2。当建堆时从非叶子结点开始,即最后一个元素k-1的父结点,根据左右元素规律,可以推出其父结点为k为偶数时(k-1为奇数)k/2-1,k为偶数时k/2-3/2,所以非叶子结点的下标为k/2-1。时间复杂度,建堆的复杂度为klogk,后续移动为(n-k)logk,所以时间复杂度为nlogk空间复杂度,因为有递归栈存储空间,所以为logk。...

2021-12-04 21:14:08 252

原创 动态规划学习总结

本文结合 代码随想录 + leetcode官方解答,做了学习和总结,仅个人记录学习。代码随想录网址代码随想录动态规划大致分为以下几个问题:1.基础动态规划2.背包问题3.打家劫舍4.股票问题5.子序列问题1.基础动态规划基础使用场景:多为计算最少个数,返回一般为一个整数解决基本思路:1考虑前一个状态和该状态的影响关系(递推公式)2注意起始状态(初始化)3考虑遍历时需要的基础存储量(如数组,变量),决定了循环的层数2.背包问题2.1 01背包问题..

2021-11-19 22:50:04 733

原创 PHP生成Excel

需求:将数据导入到Excel文件中导入数据格式: $title = array("name","age","info"); $data = array( array("1"=>"张三","2"=>"12","3"=>"vvvvv"), array("1"=>"李四","2"=>"13","3"=>"vvvvv"), array("1"=>"王五","2"=>"16","3"=>"vvvvv"), );$filen

2020-11-17 14:21:28 278

原创 gif原理+gifsicle压缩gif

一 gif原理简单来说,gif就是通过一张张静态图片连续播放产生的。实验图片为gif信息包含: 1.文件头、2.图像控制扩展、3.注释。1 文件头(格式声明、逻辑屏幕描述符、全局调色盘)1 .1格式声明一般先声明是gif文件,然后再加上版本号。通过命令行vim查看gif文件,可以看到文件开头为GIF,89a表示格式,格式有87a或者89a。在命令行中输入hexdump xx.gif可以看到gif的16进制文件,对照ASCII码,474946代表GIF,383961代表8.

2020-05-15 16:41:02 4037

原创 rsync学习小结

1 简介rsync(remote synchronization)远程数据同步工具,可在两台服务器之间快速传递文件,由于rsync只传递目标服务和源服务器不同的数据,而不是全部文件传递,所以rsync传递数据的速度很快。2 原理3 三种模式3.1 本地模式3.2 shell模式3.3 rsync模式免密登录方式方式一:修改登录者权限rsyncd.co...

2020-04-24 17:37:49 153

原创 各类小问题小结

问题1:命令行执行cd命令能够顺利进入文件目录下,但在shell脚本下报错找不到文件目录。原因:linux和windows下回车换行不同,文件中某些字符格式解释不一致。解决办法:进入文件中(vim xxx.sh),查看文件格式(:set ff),修改文件格式(:set ff=unix),修改为多格式均可(:set ffs=unix,dos ff=unix)解决自:https://b...

2019-10-31 16:59:16 174

原创 php.ini配置修改后没效果+fpm相关概念

1 遇到的问题:在php.ini文件中修改了参数,但phpinfo()打印出的内容和配置中修改内容不一致。解决的方法:在www.conf配置文件中修改相关配置。php.ini、php-fpm.conf和www.conf(1)php.ini是php运行的核心配置文件;(2)php-fpm.conf是进程服务的配置文件;(3)www.conf是php-fpm进程服务的扩展配置...

2019-09-18 11:22:22 419

原创 PHPStorm远程调试开发机代码

1 整体概述本地为PHPStorm运行环境,不需要安装php等内容,开发机环境能够让PHP代码运行起来。通过PHPstorm和xdebug的远程调试功能,可以在本地远程调试开发机中的代码。PHPstorm使用xdebug调试时,会监听固定端口,通过该端口与xdebug进行通讯。在本地环境下(本地具备php运行环境)调试,配置xdebug和PHPstorm,保证两者的端口号一致,从而进行...

2019-09-17 14:35:19 735

原创 redis基础

1 redis基础配置redis.conf文件中的一些相关配置: 使用config get dir启动使用 conf文件路径 (1)units单位 a 只支持bytes,比支持bit; b 对大小写不敏感; (2)includes包含,redis.conf可以作为总闸,包含其他文件,有点类似于ngi...

2019-09-06 15:02:25 142

原创 php中的重载

面向对象三大特性:继承、封装、多态。五大基本原则:单一职责原则、开放封闭原则(扩展开放、更改封闭)、替换原则(子类可以替换父类)、 依赖原则(上层依赖下层,接口)、接口分离原则 重载:其他语言中包含属性重载、方法重载,在C++中还有运算符重载。 在其他编程语言中,重载一般针对方法而言,满足参数类型或参数个数...

2019-09-05 09:05:20 1134

原创 使用redis存储PHP session

PHP自带的session是文件格式存储,不利于高并发访问,所以将PHP原生的session改为redis存储。文章方法转自不知名的大神,并自己做了写总结和修改1 在php.ini文件中修改PHP session的默认存储方式,将文件存储修改为会话存储#session.save_handler=filesession.save_handler = user2 写调用redis的...

2019-08-01 20:08:40 181

原创 关系型和非关系型数据库的区别

常见的数据库:关系型数据库:MySQL、SQL Server、Oracle; (具有丰富的查询语言、二级索引、强事务、企业级工具集成和完备的生态系统)非关系型数据库:MongoDB、Redis、Memcache (弹性结构、水平扩展、集群化部署)1 存储方式不同关系型数据库:表格存储,容易关联协作存储,提取数据方便;非关系型数据库:数据存储集中,像文档、...

2019-07-30 19:56:57 817

原创 cookie和session

一 Cookie技术1 定义:客户端技术,服务器把每个用户的数据以cookie的形式发送给浏览器。用户再次访问该web站点资源时,会带上Cookie进行识别认证。2 流程说明 (1)浏览器访问页面xxx.php, (2)服务器会回送自定义的cookie信息(setcookie) (3)浏览器接收到响应后将cookie信息存储到客户端,后续携带cook...

2019-07-26 20:22:36 97

原创 搭建LNMP+redis环境(centos+mac os)

一. 系统环境为centos(ps.查看linux系统版本命令为lsb_release -a)1安装nginx(1)添加nginx官方yum源vi /etc/yum.repos.d/nginx.repo(2)按装nginxyum install nginx#安装后配置systemctl enable nginx #开机后启动服务systemctl start n...

2019-07-26 17:18:23 213

原创 C++基础学习

1.新建一个工程,以.c作为源文件,打印出hello 使用IDE为CLion,新建xxx.c文件 并将CmakeLists.txt中的 add_executable(Program main.cpp) 改为 add_executable(Program xxx.c)2.在mac终端上写c语言程序并执行 touch xxx.c //创建c文件...

2019-04-02 20:25:26 111

原创 PHP垃圾回收机制

垃圾的定义:      在php中,没有任何变量指向这个对象的时候,这个对象就变为了垃圾。垃圾回收的目的:      php会将其在内存中销毁,以防内存溢出。 垃圾回收的原理:php中的变量在内存中是存在于一个zval的变量容器中的is_ref是一个bool值,用来区分变量是否属于引用集合,表示变量是否有一个以上的别名。refcount是引用计数器,表示指向这个zv...

2018-09-19 22:23:20 109

转载 事务的隔离性

文章摘自微信公众号架构师之路+自己的总结,作为学习笔记记录下来,如有侵权,联系必删 事务有四个特性(ACID):(1)原子性(Atomic):事务中包含操作被看作一个逻辑单元,这个逻辑单元要么一次性执行成功,要么全部失败。原子性体现在对数据的读取上,例如一个事务对统一数据项对多次读取的结果是相同的(2)一致性(consistency):事务对数据完整性约束的遵循。这些约束可能包括主...

2018-09-04 09:53:57 161

转载 InnoDB和MyISAM

文章摘自微信公众号架构师之路+自己的总结,作为学习笔记记录下来,如有侵权,联系必删 MySQL最常用的两个引擎:MyISAM和InnoDB两种引擎的差异:(1)如果对整表进行count(*),由于在存储过程中,MyISAM会对表的行数进行存储,从而读取较快,但是InnoDB会逐行扫描统计,从而费时较多。如果加上where限定则两种方式都要逐行扫描。(2)MyISAM支持全文索引...

2018-09-03 16:34:03 3302

原创 快速排序和归并排序

归并排序采用分治的思想,将两个有序的排序合并为一个有序的排序。void merge(vector<int> vec,int low, int mid, int high){ vector<int>tmp(vec.begin(),vec.end()); for(int i = low, j = mid+1, k=i;low <=mi...

2018-08-27 18:07:26 269

原创 二叉树前、中、后序遍历的递归、迭代实现

前序遍历递归实现vector<int> preorderTraversal(TreeNode* root) { if(!root)return {}; vector<int> res; preorder(root,res); return res; } void...

2018-08-24 14:23:32 482

原创 c++基础认识

一  C++简介C++是一种静态类型、编译式、大小写敏感的编程语言,支持过程化、面向对象、泛型编程。(ps. 1  php对于变量名、常量名、数组索引键值是区分大小写的,但是对函数名、方法名、类名、魔术变量,null、true、false、强制转换类型(int)之类的大小写不敏感           2 泛型编程:能够实现通用的标准容器库,如STL,如一个List类里包含所有该对象可以...

2018-08-06 16:13:39 154

原创 Mac版xshell、xftp替换操作

最近转换到mac上操作,发现xshell和xftp没有mac版本。总结如下:使用mac终端进行ssh连接,命令为ssh -t username@ip_address -p port确认连接,然后输入密码,密码验证成功后即可按上述操作即可进行远程控制和操作了,但是习惯了图形界面,发现了另一个很好用的软件FileZilla在官网上下载安装即可,安装和操作方式均为傻瓜式操作,很...

2018-07-23 15:20:34 30547 3

原创 对称二叉树:BFS、DFS、递归解答

题目详见:https://leetcode-cn.com/problems/symmetric-tree/description/二叉树结构定义// Definition for a binary tree node. struct TreeNode { int val; TreeNode *left; TreeNode *right; ...

2018-07-02 10:42:10 339

原创 C++ 容器小结

小结array、vector、set、list、map、queue、stack            顺序容器:vector、list、queue            关联容器:map、set            vector存储结构式数组,其他的存储结构为链表       list和vector的区别:vector相当于封装了数组,可以改变大小,它使用的是连续的地址,能够用[...

2018-07-02 09:30:27 172

原创 进程与线程基础

程序程序是指令和数据的有序集合,是静态的 进程进程引入原因:            1) 多道程序同时运行时,由于资源存在共享导致程序在执行过程存在制约关系而间断,这些动态的过程静态的程序概念不足以描述,所以引入了进程的概念,进程是动态的。            2)更好地使多道程序并发执行,以提高资源的利用率和系统吞吐量,增加并发程度。 进程常用的定义有:  ...

2018-06-21 11:15:15 181

原创 c++基础

stringstring s1="hello";string s2(10,'c'); //为10个c的字符串s.empty() //判断是否为空s.size()//字符串个数s1+s2 //字符串拼接s1==s2 //大小写敏感isalnum(c) //c是字母或者数字isalpha(c) //c是字母时为真,包含空格isdigit(c) //...

2018-06-14 19:44:24 123

原创 mysql数据库竖表转换为横表并新建表

create table dpl_infoselect p.dpl_id as id,cardID,p.DeviceID,Name,Sex,Age,Height,Weight,BMI,RequestDepartment,RequestDoctor,device_dpl.time as CheckTime,CheckAdvice,DoctorAdvice,Medication,MedHistory...

2018-06-07 10:12:27 992

原创 简易版ps

今天同学发了一张图,需要将左边的人替换成法鲨,ps肯定是短时间学不会的了,于是找了傻瓜操作版美图秀秀,顿时感觉很强大,基础功能基本能实现,放原图然后去网上找了另一张法鲨正面端正的图最后进入美图秀秀网页版,根据图片颜色对比,先把图片转换为黑白,乱点感受软件过程中发现局部处理->局部彩色笔能够实现,貌似是将图片黑白后选择部分地方能够变为彩色,随便点个地方,选择确定观察原图中的人脸比较白,改变处理...

2018-06-05 11:47:30 1853

原创 python 版本转换

通过anacoda安装python基础环境,Mac自带python版本为2.7,所以选择了2.7版本的anacoda后续发现python整体在往3版本转。于是在anacoda的环境中添加3.6版本,并转换整体版本点击environment->create,选择python版本并确认就好安装完成后,进行激活:python3为你选择版本后给环境取的名字source activate python...

2018-05-31 09:49:28 1185

原创 php数组基础操作

$a=array(1,2,3,4)$b=array(2,3,4,5)若数组中有相同元素,$a&&$b=true数组查找:array_search(1,$a)=0数组截取:array_slice($a,0,2)=array(1,2)                 array_slice($a,1)=array(2,3,4)添加元素:array_push($a,7)=array(1,...

2018-04-22 21:03:17 212

原创 PHP变量名中包含变量

问题描述:从不同表中查询一项值,组合成一个对象,并以对象数组的形式返回数据,最终json化。$userid=DB::select('select realname,username from simpleusers where id like “%1%”‘); $num=0; //数组统计个数,及变量名中的变量 if($userid != null){ foreach($user...

2018-02-08 23:41:58 2539

转载 Navicat数据库导入方法

1使用转储sql文件-结构和数据,进行存储,然后再运行sql文件导入想到如的数据库2使用数据同步的方法1) 右击想要同步的数据库,选择数据传输2) 目标中选择连接,然后选择要同步到的数据库3) 点击开始进行 3备份保存1) 点击备份数据库,在菜单栏中选择备份-新建备份2) 写一些关于备份数据的注释信息3) 选择提取sql4)保存后将s

2017-12-25 21:43:13 3366

原创 workman使用和网络映射

在php中利用workman进行socket编程,基础环境:ubuntu系统、bitnami lamp环境bitnami-lampstack-5.6.30-2-linux-x64通过curl -Ss http://www.workerman.net/check.php | php检查软件环境是否满足workman运行标准显示满足情况后,直接进行安装,如果环境不满足拓展条件需要继续安装扩展,具体教程

2017-12-25 21:40:59 559

原创 jquery点击清空

想实现input框点选择日期后,再次点击清空日期选项htmlfunction change(){ var is_null=document.getElementById('check_time').value; if(is_null !=""){ document.getElementById('check_time').value=""; }}

2017-12-25 21:36:11 614

原创 Nginx转发

问题描述:将8081端口通过80端口进行监听,目前服务器中存在nginx,需要找到nginx.conf文件,修改 不确定是否存在nginx服务,ps –ef 查看所有进程ps –ef | grep nginx 查看进程名中包含nginx的进程然后发现有nginx服务,想查询nginx占用端口 lsof –i:80发现80端口未使用netstat –anl  查看端口...

2017-12-25 21:31:12 248

原创 linux下运行脚本

第一次写脚本还是有点小开森~执行检查apache服务器是否执行的脚本,每个半小时执行一次新建一个脚本,名字为checkrun.shtouch checkrun.sh然后有vim进行编辑,所有命令都要在该文件下执行vim checkrun.sh输入i进行编辑编辑文件的时候查了好多方式有ps aux | grep httpd方式,但是执行出来apache停了和没停是一样的反应,因为服务器中的apach...

2017-12-25 21:16:10 658

原创 Node.js后台返回一维数组数据情况

后台获取的数据格式为[1,2,3]以res.render的形式进行数据返回到前台Js中var rate=pr%>;不做任何处理,前台打印接收到的数据为1,2,3,为字符串var rate=[pr%>];加上方括号后计算机识别为数组但是对于日期格式的数据,无法使用该方式,因为计算机将其识别为数字,但又存在-或者:在数字中,所以机器无法识别。最终先将数据转换为字符串

2017-12-25 21:10:39 2662

原创 数据验证提交

有两种方式1 form表单提交中,使用onsubmit=”returncheck()”,然后在js中的check中进行判断处理,不成功则 return false,提交按钮属性为type=“submit”2 ajax方式提交,在提交前判定,ajax提交代码如下:$.ajax({   type: "post",   async:false,//让ajax同步执行,确保flag

2017-12-25 21:08:42 182

空空如也

空空如也

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

TA关注的人

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