- 博客(34)
- 问答 (2)
- 收藏
- 关注
原创 原码、反码、补码详述
写在前作为一个非科班的it小白,对计算机的很多术语总是很懵逼,然后各种百度,各种博客查看,往往很多文章又是人云亦云,该篇文章主要讲解原码、反码、补码。通过记录各个‘码’的出现历史及原因,理解三者的关系,希望能够讲明白**背景:**如何让计算机执行二进制的(+、-)运算,人脑基于常识(规则)可以识别(+、-)符号,然后运算出结果,那如何让计算机基于规则,运算出符合人们常识的结果呢原码一开始,人们约定在一个二进制数前用第一位(最高位)来表示符号,即1表示负,0表示正,这就是最初“原码”的概念(这就是概念
2020-09-25 19:13:18 829 3
原创 leetcode 11容纳最多水
给出一个非负整数数组 a1,a2,a3,…… an,每个整数标识一个竖立在坐标轴 x 位置的一堵高度为 ai 的墙,选择两堵墙,和 x 轴构成的容器可以容纳最多的水Input: [1,8,6,2,5,4,8,3,7]Output: 49思路如下:1、首先该题目隐藏掉的最大宽度为首尾元素的下标差2、从最大宽度开始,逐次减小宽度,依次计算面积,确定出最大面积func GetMaxArea() { areaItem := [9]int{1, 8, 6, 2, 5, 4, 8, 3, 7} st
2021-02-24 11:07:26 170
原创 两数之和
两数之和给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。你可以按任意顺序返回答案。示例 1:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1]暴力解法忽略Map空间换时间思路:采用map记录 【目标值-数组中的值】= 数组下标
2021-02-22 11:31:41 191
原创 数据结构---array
保存一个HashTable结构体/* Zend/zend_type.h */typedef struct _zend_array HashTable;//这个结构体64位平台占56个字节.struct _zend_array { zend_refcounted_h gc; //引用计数信息,与字符串相同 union { struct {
2018-01-30 09:21:47 303
原创 数据结构---function
在PHP中,函数分为两种:一种是zend_internal_function, 这种函数是由扩展或者Zend/PHP内核 提供的,用’C/C++’编写的,可以直接执行的函数.一种是zend_user_function, 这种函数呢,就是我们经常在见的,用户在PHP脚本中定义的函数,这种函数最终会被ZE(全局的一个宏)翻译成opcode array来执行区别: 数据结构/*zen
2018-01-29 12:06:04 403
原创 php源码小计
准备工作Ubuntu 64 位 地址安装java的JDK (1) sudo apt update; (2) sudo apt install default-jdk调试工具 eclipse 地址需要的扩展 sudo apt-get install build-essential autoconf automake libtool bison re2cphp源码官网下载
2018-01-29 11:55:58 274
原创 插入排序--php
思路:两层循环,外层控制选取待排序元素,内层控制将已排好序的元素与待排序元素作比较,插入正确位置将第一个元素单作排好序的左数组从第二个元素开始选择待排序元素以此与排好序的元素比较要点:设立哨兵 直接插入排序示例: function insertSort($arr) { for ($i=1;$i$arr);$i++){ $
2018-01-20 12:22:34 175
原创 快速排序--php
php实现快速排序思路:选择基本元素,本例去第一个元素小于基本元素的放左边,大于放右边递归处理左右两边数据 function quickSort($arr) { $baseNum = $arr[0]; $leftArr = $rightArr = []; for ($i=1; $i $arr); $i++){
2018-01-18 11:38:30 172
转载 每日一则----算法----二分查找法
php实现二分查找法二分查找法称折半查找,需要数组是一个有序的数组假设我们的数组是一个递增的数组,首先我们需要找到数组的中间位置.要知道中间位置就需要知道起始位置和结束位置,然后取出中间位置的值来和我们的值做对比。如果中间值大于我们的给定值,说明我们的值在中间位置之前,此时需要再次二分,此时结束位置的值修改为此时的中间位置。如果中间值小于我们给定的值,那么说明给定值在中间位置之后
2018-01-16 12:29:52 254
原创 Linux查看负载 uptime,w ,top,iostat 命令
负载(load)是linux机器的一个重要指标,直观了反应了机器当前的状态。常用的查看命令
2017-09-01 11:27:47 1888
原创 IPv4地址在mysql的存储
ipv4地址mysql存储这个值是字段需要用int UNSIGNED。不用UNSIGNED的话,128以上的IP段就无法存储
2017-08-31 17:51:24 1727
转载 一个账号,防止多设备登陆
1、在用户表新增三个字段分别存储,用户登录口令、上次登录IP地址、上次登录时间,在登录成功后,生成唯一用户登录口令,把用户登录口令、上次登录IP地址、上次登录时间存储到SESSION,并相应的存储到用户表。然后提示用户 上次登录IP地址、上次登录时间。(也可以把IP地址转为具体地区展示) 2、判断是否已经登录时,先判断是否登录状态? 再读取SESSION的用户登录口令,如果登录口令不为空,则把登录
2017-08-31 17:46:06 4228
转载 搭建LNMP环境(CentOS 6.8 + nginx1.10 + mysql5.6 + php5.6 )
CentOS6.8 搭建lnmp环境
2017-06-21 14:09:23 2815
转载 数据结构
链表链表是一种由节点(node)组成的线性数据集合,每个节点通过指针指向下一个节点。它是一种由节点组成,并能用于表示序列的数据结构 单链表:每个节点仅指向下一个节点,最后一个节点指向空(null)。 双链表:每个节点有两个指针p,n。p指向前一个节点,n指向下一个节点;最后一个节点指向空(null) 循环链表:每个节点指向下一个节点,最后一个节点指向第一个节点 时间复杂度:索引:O(n)
2017-06-08 16:27:18 231
原创 vim 批量注释
方法一批量添加注释 ctrl+v 进入列编辑模式,向下或向上移动光标,把需要注释的行的开头标记起来,shift + i ,再插入注释符,比如”#”,再按Esc,就会全部注释了批量去掉注释 ctrl+v,进入列编辑模式,横向选中列的个数(如”#”注释符号,需要选中两列),然后按d, 就会删除注释符号方法二批量添加注释 使用下面命令在指定的行首添加注释: :起始行号,结束行号s/^/注释符/g批
2017-06-02 13:44:35 415
原创 centos6.8 安装python3.6
下载Python安装包cd /usr/local/srcwget https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz 解压tar -zxvf Python-3.6.0.tgz 进入解压目录cd Python-3.6.0编译安装包./configure --prefix=/usr/local/pythonmake && ma
2017-06-01 15:05:20 4625 1
原创 linux实现自动远程备份(scp+ssh)
定时任务执行,采用scp,因此需要ssh无密码输入登陆ssh生成两台服务器A和B,在B服务器上备份A服务器的日志等 1、在 A 上运行 ssh-keygen -t rsa 在/root/.ssh 下生成id_rsa 和 id_rsa.pub 两个文件 在/root/.ssh下复制备份一份id_rsa.pub 命名为 id_rsa.pub.copy在生成密钥的过程中,一直Enter即可,否则还是需
2017-05-22 12:20:16 1579
转载 MySQL5.6之Index Condition Pushdown(ICP,索引条件下推)
ICP(index condition pushdown)是mysql利用索引(二级索引)元组和筛字段在索引中的where条件从表中提取数据记录的一种优化操作。
2017-05-16 16:54:53 374
转载 optimize table优化mysql例子
原始数据数据量mysql> select count(*) as total from ad_visit_history; +---------+ | total | +---------+ | 1187096 | //总共有118万多条数据 +---------+ 1 row in set (0.04 sec) 存放在
2017-05-09 11:21:13 328
转载 文件从一台服务器拷贝到另一台服务器
scp就是secure copy,是用来进行远程文件拷贝的.数据传输使用ssh1,并且和ssh1使用相同的认证方式,提供相同的安全保证.与rcp不同的是,scp会要求你输入密码如果需要的话. 最简单的应用如下: scp 【本地用户名@IP地址:文件名1】 远程用户名@IP地址:文件名2 [本地用户名@IP地址:] 可以不输入,可能需要输入远程用户名所对应的密码. 可能有用的几个参数:
2017-05-02 17:25:59 16366
转载 MySQL 数据备份与还原
数据的备份类型数据的备份类型根据其自身的特性主要分为以下几组1、完全备份备份整个数据集( 即整个数据库 )、部分备份指的是备份部分数据集(例如: 只备份一个表) 2、部分备份 而部分备份又分为以下两种增量备份: 备份自上一次备份以来(增量或完全)以来变化的数据; 特点: 节约空间、还原麻烦差异备份: 备份自上一次完全备份以来变化的数据 特点: 浪费空间、还原比增量备份简单示意图 MySQL备
2017-04-17 18:49:56 542
转载 Tpcc-MySQL测试
一、 下载工具包 Tpcc-mysql是percona基于tpcc衍生出来的产品,专用于mysql基准测试,其源码放在bazaar(Bazaar是一个分布式的版本控制系统,采用 GPL 许可协议,可运行于 Windows、GNU/Linux、UNIX 以及 Mac OS 系统之上。Bazaar 由 Canonical 公司(Ubuntu母公司)赞助)上,因此还需要先安装bazaar客户端。使用ro
2017-04-11 14:13:44 324
转载 反向代理服务器的工作原理
一、什么是反向代理 反向代理(Reverse Proxy)方式是指以代理服务器来接受Internet上的连接请求,然后将请求转发给内部网络上的服务器;并将从服务器上得到的结果返回给Internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。 通常的代理服务器,只用于代理内部网络对Internet外部网络的连接请求,客户机必须指定代理服务器,并将本来要直接发送到Web服务器上的 ht
2017-04-06 12:20:45 592
转载 nginx fastcgi php-fpm的关系梳理
CGI(Common Gateway Interface) CGI全称是“公共网关接口”(Common Gateway Interface),HTTP服务器与你的或其它机器上的程序进行“交谈”的一种工具,其程序须运行在网络服务器上。 CGI可以用任何一种语言编写,只要这种语言具有标准输入、输出和环境变量。如php,perl,tcl等。FastCGI FastCGI像是一个常驻(long-liv
2017-04-06 11:57:33 626
空空如也
虚拟主机 nginx 地址栏的地址,访问到虚拟机指定的文件
2016-12-12
redis配置,用来缓存数据
2016-12-07
TA创建的收藏夹 TA关注的收藏夹
TA关注的人