自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

willinux的专栏

因为我能看得见,始终能看得见,始终能看得见自己。

  • 博客(242)
  • 资源 (3)
  • 收藏
  • 关注

原创 3. 无重复字符的最长子串

给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。解法:滑动窗口,left指向窗口的最左端,然后右边依次遍历。

2023-10-11 09:48:47 112

原创 golang中json序列号大小写的问题

go中根据首字母的大小写来确定可以访问的权限。如果首字母大写,则可以被其他的包访问;如果首字母小写,则只能在本包中使用。1.struct转json序列化//demo1package mainimport ( "fmt" "encoding/json")type Person struct { Name string age int}func main() { person := Person {"小明", 18} if result,err :=jso

2021-10-27 19:49:52 2655 1

原创 适合小白入门,一篇汇总k8s存储架构、csi原理和实现

centos过旧版本编译rocksdb出错会很多,不建议这么使用。实在环境受限制,可以尝试以下解决方法:1.编译报错Error: no such instruction: `shlx %ebx,%r14d,%ebx'需要升级各种编译工具,可参考centos6.3升级编译工具2.升级后编译,报错rocksdb/env/env_posix.cc:725:对‘clock_gettime’未定义的引用原因是glibc版本太旧了,ldd --version查看版本libc 2.12,需要修改编译ma

2021-09-22 11:26:54 3074 1

转载 golang序列化以及那些坑

一、基本概念1.什么是序列化/反序列化把对象转换为字节序列的过程称为对象的序列化;把字节序列恢复为对象的过程称为对象的反序列化。2.序列化的作用(1)把对象的字节序列永久地保存到硬盘上,通常存放在一个文件中(2)在网络上传送对象的字节序列。在很多应用中,需要对某些对象进行序列化,让它们离开内存空间,入住物理硬盘,以便长期保存。比如最常见的是Web服务器中的Session对象,当有 10万用户并发访问,就有可能出现10万个Session对象,内存可能吃不消,于是Web容器就会把一些seesion

2021-07-26 23:53:57 1094

原创 文件锁-flock和fcntl

文件级的锁:对整个文件加锁,flock系统调用文件内范围的锁:对文件的某个范围加锁,fcntl库函数1. flockflock是系统调用,加的建议锁tips:flock的锁的语义:获取到的锁是与打开的文件描述符,而不是文件描述符或者inode相关联(1)对于open同一个文件多次,获取到的不同fd,flock会认为是不同的,所以再加flock会block(2)flock创建的锁是和fd相关的,所以复制dup(fd)和fork产生的fd,都是同一把锁demo:#include <std

2021-07-12 10:25:24 562

原创 341. 扁平化嵌套列表迭代器

题目描述:给你一个嵌套的整型列表。请你设计一个迭代器,使其能够遍历这个整型列表中的所有整数。列表中的每一项或者为一个整数,或者是另一个列表。其中列表的元素也可能是整数或是其他列表。思路:参考:参考思路详解本文有两种主要的思路:1.在构造函数中提前「扁平化」整个嵌套列表2.在调用 hasNext() 或者 next() 方法的时候扁平化当前的嵌套的子列表1对应的递归,2对应的迭代之前想的是不是实现迭代器,类似链表,怎样保存下一个指针,方向不太对。Solution:class Nest

2021-03-23 23:09:10 107

原创 spark基础

1.parquetApache Parquet是Hadoop生态圈中一种新型列式存储格式,它可以兼容Hadoop生态圈中大多数计算框架(Hadoop、Spark等),被多种查询引擎支持(Hive、Impala、Drill等),并且它是语言和平台无关的。个人理解:parquet是多方公认的一种对外数据格式,将parquet数据读到内存中具体是什么类型,由使用方决定。parquet项目包含多个子项目,子项目有多个工具,方便读写parquet数据。parquet是列式存储,列式存储尤其适用OLAP场景,不需

2021-01-20 17:17:06 118

原创 vector保存局部变量和指向局部变量的指针区别

一、结论vector保存局部变量:可以,因为在vector上创建对象也是在堆上;vector保存指向局部变量的指针:不可以,因为局部变量离开作用域后,就会释放,指向局部变量的指针会指向未知的地址空间,指向的内容未知。demo1:验证vector即使局部变量也是堆上上分配。结果:返回的vector中保存的局部变量地址没有变化。#include <iostream>#include <vector>using namespace std;// 返回一个vector变量,

2021-01-18 17:59:59 1457

转载 C++ 类静态成员变量存取出错 undefined reference to ‘xxx‘

刚开始用C++写程序,遇到了一个很奇怪的问题,就是在类定义的面定义了一个静态成员变量,但在使用时编译器报错称变量不是类的成员。文件a.h内容:#define A_H class A { static int num1; int num2; A(); } #endif 文件a.c内容:#include "a.h" void A::A() { num2=1;//正确 num1=2;//报错 } 编译

2020-08-14 16:39:03 1209

转载 C语言面试题目

https://cloud.tencent.com/developer/article/1637948

2020-08-05 19:40:38 176

转载 http和https的区别

http和https的区别https://cloud.tencent.com/developer/article/1381270

2020-07-30 11:58:42 129

转载 IO多路复用select、poll、epoll

IO多路复用

2020-07-30 11:34:37 97

原创 undefined reference to `vtable for FssHelper‘

1.编译报错:In function `~FssHelper':FssHelper.h:51: undefined reference to `vtable for FssHelper'2.查资料:(1)可能1:基类的析构函数需要有函数体。~IFssHelper() {}或者 ~IFssHelper() = default;(2)实际我已经添加了函数体,最后发现是代码里没有用到多态,没有生成vtable。生成vtable的时机是编译器发现有基类的指针指向派生类,才会去真正创建vtable

2020-07-29 14:51:50 166

原创 blade说明和使用

1.blade是什么?有什么优点?(1)blade是什么一个构建工具,根据BUILD文件构建目标,类似于make根据Makefile文件构建目标。(2)blade优点:先看makefile的缺点:间接依赖也需要在makefile里写明构建速度慢blade优点:依赖自动传递,只需要写出直接依赖,间接的依赖blade为你搞定构建速度更快增量构建2.blade怎么用Blade 通过一系列的名字为 “BUILD” 的文件(文件名全大写),这些文件需要开发者去编写。每个 BUILD文件

2020-07-21 18:19:29 8198

原创 C++编译常见错误

1.error: ‘common’ has not been declared没有include头文件或者没有using namespace2.undefined reference to void function,collect2: error: ld returned 1 exit status找的到头文件(找得到定义),链接ld找不到目标文件,因为找不到函数定义,函数实现没有找到前两个问题主要说明,.h和.cpp为什么会分开,.h是函数声明,方便其他人调用,.cpp是函数定义(函数实现),链

2020-07-15 19:41:13 1078

原创 error: ‘virtual void xxx const‘ was hidden [-Werror=overloaded-virtual]

从错误信息提示看,是虚函数被隐藏,所以报错。1.为什么会出现这种错误?(1)先理解重载和重写(覆盖)的区别:重载:函数名相同,函数参数不同,和返回类型无关;重写(覆盖):函数名相同,函数参数相同,多用在实现函数的多态;(2)这种报错,多是基类定义的虚函数被子类隐藏,子类定义了同名函数,但方法参数不同造成2.-Werror=overloaded-virtual这是编译选项,-Werror=overloaded-virtual:是报出error,W本身是warning,error是把warnin

2020-07-14 21:05:29 2386

原创 centos6.3安装poco库

1.poco库是什么c++库:跨平台的网络通讯库poco库详细介绍2.安装centos6.3,系统版本偏低,试了官网各种安装方法,cmake、bazel等都没有安装成功;发现是安装高版本poco库报错,选择了低版本的poco库。$wget --no-check-certificate https://pocoproject.org/releases/poco-1.8.0/poco-1.8.0-all.tar.gz$tar -zxvf poco-1.8.0-all.tar.gz$cd poc

2020-07-10 15:40:49 258

转载 was

https://zhuanlan.zhihu.com/p/33951960

2020-06-30 21:10:52 166

原创 ycsb使用

1.是什么YCSB(Yahoo! Cloud Serving Benchmark),是雅虎开源的一款通用的性能测试框架。2.可以做什么可以测试数据库,或者支持数据库操作的产品性能。内嵌了一些数据库产品和测试,并支持自定义数据库的测试,测试结果是吞吐量和延迟,可以了解数据库性能。3.ycsb执行的原理ycsb的目录:bin目录:目录下有个可执行的ycsb文件,是个python脚本,是用户操作的命令行接口。ycsb主逻辑是:解析命令行、设置java环境,加载java-libs,封装成可以执行的j

2020-06-30 21:01:13 3047

转载 maven教程

maven是一个项目构建和管理项目依赖的工具。遇到mvn编译时,从project的src/main/java目录开始查找源代码,不理解为什么一定是从这样的路径找?原因:在pom的配置文件中,// 配置mvn编译的源代码目录<resources> <resource> <directory>${project.basedir}/src/main/resources</directory> <filterin

2020-06-30 20:19:44 142

转载 /etc/profile、~/.bash_profile、~/.bash_rc的区别

https://www.jianshu.com/p/a57e8f1a3426https://www.jianshu.com/p/ff5648690bb0/etc/profile全局配置,对所有用户生效设置系统级的环境变量和启动程序,比如JAVA_HOME,M2_HOME等~/.bash_profile只对当前用户生效~/.bashrc也有系统级别/etc/bashrc主要是配置命令别名等...

2020-06-30 14:22:42 2449

原创 84. Largest Rectangle in Histogram

Description:Given n non-negative integers representing the histogram’s bar height where the width of each bar is 1, find the area of largest rectangle in the histogram.Analysis:输入一个数组,表示柱状图的高度,求出这个柱状图中的最大矩形的面积。面积=宽度*高度,关键在于求出宽度。height[i],求出下标i的左右两边第一个

2020-06-14 22:40:40 162

转载 将make的输出重定向到文件

[转载] https://blog.csdn.net/feihongwang/article/details/6975670 Linux中,脚本语言环境中,即你用make xxx即其他一些普通linux命令,比如ls,find等,不同的数字,代表不同的含义: 数字 含义 标准叫法0 标准输入 stdin = standard input1 标准输出 stdout = standard output2 标准错误输出 stderr = standard error而系统默认的stdin,s

2020-06-14 11:55:07 1433

原创 报警发现inode不足

Referenc:[1] http://www.dahouduan.com/2014/12/19/linux-inode-full/[2] https://my.oschina.net/adailinux/blog/1833466

2020-06-14 11:43:32 437

原创 libevent的安装和简单使用

1.安装libeventmac下下载源码安装,执行到make时报错,fatal error because of ‘openssl/bio.h’ file not foundopenssl实际已经安装,并且版本是最新。解决方法是:./configure LDFLAGS=’-L/usr/local/opt/openssl/lib’ CPPFLAGS=’-I/usr/local/opt/openssl/include’安装成功,安装的libevent在/usr/local/lib/目录下。2.简单例

2020-06-08 21:11:46 706

原创 98. Validate Binary Search Tree

Given a binary tree, determine if it is a valid binary search tree (BST).Assume a BST is defined as follows:The left subtree of a node contains only nodes with keys less than the node’s key.The right subtree of a node contains only nodes with keys great

2020-06-08 17:10:27 137

原创 监控系统系能-网络

netstat常见参数-a (all)显示所有选项,默认不显示LISTEN相关-t (tcp)仅显示tcp相关选项-u (udp)仅显示udp相关选项-n 拒绝显示别名,能显示数字的全部转化成数字。-l 仅列出有在 Listen (监听) 的服務状态-p 显示建立相关链接的程序名-r 显示路由信息,路由表-e 显示扩展信息,例如uid等-s 按各个协议进行统计-c 每隔一个固定时间,执行该netstat命令。提示:LISTEN和LISTENING的状态只有用-a或者-l才能看到参考

2020-06-04 11:31:30 179

原创 监控系统系能-磁盘

系统性能:cpu、内存、磁盘、网络一、磁盘先看磁盘基本信息df -hl二、iostat使用iostat -d -k 2 -x-d:显示设备(磁盘)使用状态;-k:某些使用block为单位的列强制使用kB为单位;2:数据显示每隔2秒刷新一次。-x:显示和io相关的扩展数据三、iotop使用很好用参考:[1] https://www.cnblogs.com/ggjucheng/archive/2013/01/13/2858810.html[2] https://linuxtools

2020-06-03 20:44:30 138

原创 监控系统性能-CPU

系统性能:cpu、内存、磁盘、网络监控cpu的命令:top和htop一、top使用1.top的直接视图执行top的直接视图,默认按照cpu使用率降序对进程排序详细:top命令2.top命令的参数top默认是对进程排序top -H:对线程排序top -p pid:查看线程号pid的cpu二、htop使用htop比top更好用详细参考:[1] https://cloud.tencent.com/developer/article/1508028除了top、htop还介绍了glances

2020-06-03 20:29:18 344

原创 extern C的作用详解

https://blog.csdn.net/jiqiren007/article/details/5933599

2020-05-28 14:43:58 623

原创 817. Linked List Components

Description:We are given head, the head node of a linked list containing unique integer values.We are also given the list G, a subset of the values in the linked list.Return the number of connected components in G, where two values are connected if they

2020-05-27 10:45:12 168

转载 libevent中TAILQ_QUEUE队列的使用

https://blog.csdn.net/luotuo44/article/details/38374009

2020-05-20 17:38:48 174

原创 148. Sort List

Description:Sort a linked list in O(n log n) time using constant space complexity.Analysis:147是插入排序,时间复杂度O(N^2),这里要求O(n log n),快排满足要求。快排是用分治的思想,将链表分成两个子链表分别排序,然后再合并链表。Solution:class Solution {public: ListNode* sortList(ListNode* head) {

2020-05-18 12:19:31 120

原创 147. Insertion Sort List

Description:Sort a linked list using insertion sort.Analysis:插入排序,时间复杂度O(N^2)创建一个dummy node,方便从head开始遍历。可以结合题目148一起看。两种解法:解法一:断开链表,分成两个链表,链表1是有序链表,链表2是待排序链表,依次将链表2中的元素插入到链表1的有序链表中;解法二:不断开链表,依次移动结点,移动结点后,依然保持链表不断开。Solution1:class Solution {publ

2020-05-18 10:42:02 262

原创 42. Trapping Rain Water

Description:Given n non-negative integers representing an elevation map where the width of each bar is 1, compute how much water it is able to trap after raining.Analysis:1.直接的想法(not AC)找到一个“V”型区间,区间中间就是每个区间可以接的水。提交后,发现有case错误,原来这种解法相当于是贪心,没办法对求对全局的ca

2020-05-14 18:04:48 102

原创 56. Merge Intervals

Description:Given a collection of intervals, merge all overlapping intervals.Example 1:Input: [[1,3],[2,6],[8,10],[15,18]]Output: [[1,6],[8,10],[15,18]]Explanation: Since intervals [1,3] and [2,6] overlaps, merge them into [1,6].Example 2:Input: [[1

2020-05-12 21:03:55 118

原创 986. Interval List Intersections

Description:Given two lists of closed intervals, each list of intervals is pairwise disjoint and in sorted order.Return the intersection of these two interval lists.(Formally, a closed interval [a, b] (with a <= b) denotes the set of real numbers x w

2020-05-12 17:16:27 178

原创 78. Subsets

Description:Given a set of distinct integers, nums, return all possible subsets (the power set).Note: The solution set must not contain duplicate subsets.Analysis:解法1:分治思想,复杂问题化成简单的子问题,子集i是子集i-1,然后加上nums[i]构成的集合。全排列、全组合、子集可以归纳为一类问题。Solution1:时间复杂度O

2020-05-08 23:27:51 121

原创 236. Lowest Common Ancestor of a Binary Tree

Description:Given a binary tree, find the lowest common ancestor (LCA) of two given nodes in the tree.Analysis:第一种:很直接的解法公共祖先,所以从根到结点的path前面部分相同,有些类似两个链表的公共结点,先求出root到结点的path,然后比较即可。第二种:参考很巧妙的解法...

2020-05-08 15:46:03 174

原创 145. Binary Tree Postorder Traversal

Description:Given a binary tree, return the postorder traversal of its nodes’ values.Analysis:递归解法容易,如果是非递归呢?很好解法:二叉树非递归解法决定这个解法的原因是二叉树的结构和依次访问二叉树的顺序,根-左-左-根-右-右-根。Solution1:两个辅助栈,输出栈是后序遍历的逆序,辅...

2020-05-08 11:26:10 140

AWK程序设计语言翻译

师弟翻译的: 《AWK程序设计语言》 -Alfred V.Aho Brian W.Kernighan Peter J.Weinberger github地址:https://github.com/wuzhouhui/awk 仅供学习,欢迎交流。

2015-12-21

数字图像处理标准测试图

以前下载了一些,又找了一些,要删除了,所有传了,希望能有点用处

2013-06-20

opencv1.0安装程序

第一个opencv1.0版本,有问题请安装第二个。这个是所有版本下载网址http://www.opencv.org.cn/index.php/Download#Version_1.0_rc1_.280.9.9.29

2013-06-10

空空如也

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

TA关注的人

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