自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

abs.征召

从零开始、多看多听多记

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

原创 【Redis底层数据结构】01简介

简介 Redis底层的数据结构包括:简单动态数组SDS、链表、字典、跳跃链表、整数集合、压缩列表、对象。 Redis为了平衡空间和时间效率,针对value的具体类型在底层会采用不同的数据结构来实现,其中哈希表和压缩列表是复用比较多的数据结构,下面列出对外数据烈性和底层数据结构的关系: String: SDS简单动态字符串 List: ziplist; linkedlist Hash: ...

2020-04-27 22:07:02 193

原创 在一个静态方法内调用一个非静态成员为什么是非法的

类的静态成员(变量或方法)属于类本身,在类加载的时候就会分配内存,可以通过类名直接访问 非静态成员(变量或方法)属于类的对象,只有在类的对象产生(实例化)时才会分配内存,然后通过类的对象(实例)去访问 所以,如果一个类的静态方法去调用非静态方法或变量的时候,因为类的静态方法存在的时候,类的非静态成员可能不存在,访问一个内存中不存在的东西当然会出错 ...

2020-03-30 09:40:47 4185 1

原创 线程上下文切换

因为一下一些原因导致CPU不在执行当前的线程,转而执行另一个线程的代码。 1 线程的CPU时间片用完 2 垃圾回收 3 有更高级的线程需要运行 4 线程自己调用了 sleep yield wait join park synchtonized lock 等方法 当发生 Context Switch 切换时,需要由操作系统保存当前线程的状态,并恢复另一个线程的状态。 Java种对应的的概念...

2020-03-23 23:20:39 212

原创 一致性hash-php实现

原理 参考https://www.bilibili.com/video/av25184175?from=search&seid=5169155263985611919讲的非常清晰 代码 class consistencyHash { protected $serverNodes = array(); protected $virtualNum = 64; ...

2019-11-03 19:06:43 203

原创 leetcode_1_TwoSum

//给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 // // 你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。 // // 示例: // // 给定 nums = [2, 7, 11, 15], target = 9 // //因为 nums[0] + nums[1] = 2 + ...

2019-10-29 22:48:01 219

原创 leetcode_283_MoveZeroes

//给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 // // 示例: // // 输入: [0,1,0,3,12] //输出: [1,3,12,0,0] // // 说明: // // // 必须在原数组上操作,不能拷贝额外的数组。 // 尽量减少操作次数。 class Solution03 { //思考: 这个...

2019-10-27 23:08:27 149

原创 数据结构-数组实现栈

/** * 用数组实现栈结构 * @author : wangtb * @date : 2019-10-04 22:50 */ public class Array2Stack { private Integer[] arr; private Integer index; public Array2Stack(int initSize) { i...

2019-10-04 23:23:52 142

原创 数据结构-数组实现队列

/** * 用数组实现队列 * @author : wangtb * @date : 2019-10-04 22:28 */ public class Array2Queue { /** * 数据 */ private Integer[] arr; /** * 长度 */ private Integer siz...

2019-10-04 23:21:47 207

原创 无序数组内相邻两个数的最大差值

/** * 求无序数组内相邻两个数的最大差值 * 可参考文章: * https://www.cnblogs.com/xiaomoxian/p/5189782.html */ public class BucketSortExtMaxGap { public static void main(String[] args) { int arr[] = {1, 10...

2019-10-04 22:18:08 315

原创 排序-堆排序

// heapSort 是跟着视频学习写的 // headSort2 是我自己想的,感觉这么写可以。。。验证是ok的。 // 区别等我问问。。。 import com.alibaba.fastjson.JSON; /** * @author : wangtb * @date : 2019-09-29 23:02 */ public class HeapSort { pu...

2019-09-30 00:20:46 168

原创 ElasticSearch java API

按照某个字段排序: searchRequestBuilder.addSort("publish_time", SortOrder.DESC);

2019-05-06 19:37:33 141

原创 Mac安装maven

下载解压: $ curl -O http://mirrors.hust.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz $ tar -xvf apache-maven-3.3.9-bin.tar.gz $ sudo mv -f apache-maven-3.3.9 /usr/local/ 设置...

2019-03-19 17:28:28 370

原创 TPC笔记

TCP的可靠性 数据被分割成Tcp认为合适大小的数据块 Tcp的发送方发送一个数据块之后,要确认Tcp的接受方已经接受,否则会进行重试 Tcp的接收方接受到数据之后,需要告诉发送给方已经确认 Tcp接收方会对接收到的数据进行排序 Tcp接收方会对数据去重 流量控制 校验和保证数据安全:https://www.cnblogs.com/zxiner/p/7203192.html TCP的三次握手过...

2019-03-10 23:37:44 290

原创 ngork

ngork 外网映射工具

2019-03-08 00:12:46 248

原创 chrome禁止跳https

禁止跳HTTPS: 地址栏中输入 chrome://net-internals/#hsts 在 Delete domain security policies 中输入项目的域名,并 Delete 删除 可以在 Query domain 测试是否删除成功 强制跳HTTPS: 地址栏中输入 chrome://net-internals/#hsts 在 Add HSTS domain中添加对应...

2019-01-20 19:55:13 2023

原创 PHP魔术方法和魔术变量

魔术方法: __construct(),类的构造函数 __destruct(),类的析构函数 __call(),在对象中调用一个不可访问方法时调用 __callStatic(),用静态方式中调用一个不可访问方法时调用 __get(),获得一个类的成员变量时调用 __set(),设置一个类的成员变量时调用 __isset(),当对不可...

2019-01-14 22:57:02 293

原创 php单例模式

单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。单例模式是一种常见的设计模式,在计算机系统中,线程池、缓存、日志对象数据库操作等功能g被设计成单例。 class single{ //设置成受保护的属性 protected static $ins = null; public static function getIns(){ ...

2019-01-13 23:06:18 132

原创 常用shell

//set命令 sed -i “s/aaaa/bbbb/g” `grep aaaa -rl ./` //统计前10的IP cat access.log|awk ‘{print $0}’|sort|uniq –c|sort -nr|head -n 10 //杀死php-fpm进程 ps -ef | grep php-fpm | awk '{print $2}' | xargs kill -9...

2019-01-12 22:45:24 259

原创 循环链表解决约瑟夫问题

不多说了 直接贴代码了。 生成循环列表的方式有点儿恶心... #include <stdio.h> #include <stdlib.h> //定义常量 #define TRUE 1 #define FALSE 0 //类型别名 typedef int BOOL; //定义节点 typedef struct Node { int data; //数据 str...

2019-01-12 22:34:18 295

原创 冒泡排序笔记

基本思想: 逐次比较。即一次比较两个数,若它们的顺序错误,则它们交换;重复进行,直到没有需要交换为止。以升序排序为例: 1、比较相邻数字的大小,若第一个数比第二个数大,则相互交换; 2、对每一对相邻的数作相同的工作,那么最后的数应该是最大的数; 3、针对所有数(除了最后一个)重复上述步骤,直到没有任何一对数字需要比较为止。(需要注意的是,第3条中所谓的“最后一个”是指前几步中已经处理过的最大的数...

2019-01-12 22:12:14 183

原创 排序-快排

基本思想: 先从数列中取出一个数作为基准数。 分区过程,将比这个数大的数全放到它的右边,小于或等于它的数全放到它的左边。 再对左右区间重复第二步,直到各区间只有一个数 代码: public static void quickSort(int arr[], int left, int right) { if (left > right) { r...

2019-01-12 21:35:19 207

空空如也

空空如也

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

TA关注的人

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