简帛阁
搜索
首页
技术文章
Java
JavaScript
散列表、散列函数和散列冲突
散列表(HashTable,也叫哈希表),是根据键(Key)直接访问在内存存储位置的数据结构。其实现原理是:通过散列函数(也叫哈希函数)将元素的键映射为数组下标(转化后的值叫做散列值或哈希值),然后在
2022-05-24
MySql性能调优一(存储引擎InnoDB,MyISAM)
区别MyISAM基于ISAM存储引擎,并对其进行扩展,不支持事务。InnoDB给mysql提供了事物提交、回滚等事物安全的存储引擎。MyISAM采用表级锁。表级锁开销小,加锁快,锁粒度大,冲突概率高,
2022-05-23
哈希算法及其应用场景
哈希算法的概念和特性我们前面分享了散列表、散列函数和散列冲突,其实也可以译作哈希表、哈希函数和哈希冲突,是一个意思。哈希算法简单理解就是实现前面提到的哈希函数的算法,用于将任意长度的二进制值串映射为固
2022-05-23
PHP 数组底层实现原理
数组在PHP中非常强大、灵活的一种数据类型,和Java、C等静态语言不同,我们在初始化PHP数组的时候不必指定大小和存储数据的类型,在赋值的时候可以通过数字索引,也可以通过字符串索引的方式:基于PHP
2022-05-22
ES 内存深度解析
注:本文主要针对ES2x。“该给ES分配多少内存?”“JVM参数如何优化?““为何我的Heap占用这么高?”“为何经常有某个field的数据量超出内存限制的异常?““为何感觉上没多少数据,也会经常Ou
2022-05-22
Elasticsearch-基础介绍及索引原理分析
介绍Elasticsearch是一个分布式可扩展的实时搜索和分析引擎,一个建立在全文搜索引擎ApacheLucene(TM)基础上的搜索引擎当然Elasticsearch并不仅仅是Lucene那么简单
2022-05-21
ES查看segment大小
摘自:http://wwwaboutyuncom/thread1707811htmlSegmentMemorySegment不是file吗?segmentmemory又是什么?前面提到过,一个segm
2022-05-21
Linux网络处理“零拷贝”技术&mmap()&内核进程间通信设计&8086分页管理——摆在一起来谈谈...
Jack:最近听说了网络处理的“零拷贝”技术,觉得非常神奇,在网上查阅了很多资料。不过,并不是太明白——知其然,而不知其所以然。你能通俗地解释一下吗?我:这是一个相对比较复杂的话题,说起来话就多了。本
2022-05-21
leetcode 142. Linked List Cycle II 环形链表 II
一、题目大意https://leetcodecn/problems/linkedlistcycleii/给定一个链表的头节点head,返回链表开始入环的第一个节点。如果链表无环,则返回null。如果链
2022-05-21
leetcode 524. Longest Word in Dictionary through Deleting 通过删除字母匹配到字典里最长单词
一、题目大意https://leetcodecn/problems/longestwordindictionarythroughdeleting给你一个字符串s和一个字符串数组dictionary,找
2022-05-21
经典c程序100例==1--100
经典c程序100例1100经典c程序100例1100【程序1】题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?1程序分析:可填在百位、十位、个位的数字都是1、2、3、
2022-05-21
27个常用stata命令(2)
常用的27个Stata命令【1】直接导入csv格式数据insheetusingnamecsv,clear【2】修改变量长度formatvar%202g【3】删除重复值sortvar1var2dupli
2022-05-20
epoll IO多路复用(异步阻塞AIO)
epoll的异步阻塞(AIO):用户线程创建epoll后,其实是内核线程负责扫描fd列表(在网络服务器上可以是socket,socket在创建后返回的也是文件描述符),并填充事件链表。但是,并不会主动
2022-05-20
Linux SWAP 深度解读
概述本文讨论的swap基于Linux44内核代码。Linux内存管理是一套非常复杂的系统,而swap只是其中一个很小的处理逻辑。希望本文能让读者了解Linux对swap的使用大概是什么样子。阅读完本文
2022-05-19
设备读写 之 直接方式(Direct I/O)
这种方式需要在创建完设备对象后,为设备设置属性DO_DIRECT_IO和缓冲读写设备不同,直接方式读写设备,操作系统会将用户模式下的缓冲区锁住。然后操作系统将这段缓冲区在内核模式地址空间中再映射一遍。
2022-05-19
RocketMQ记录MMAP、PageCache的一些相关知识
本文是阅读RocketMQ源码后,记录一下FileChannel和MMAP一些原理知识;其中参看了几位大神的博客,这里对其对这方面进行一些相关记录,以便后续方便自行查阅参考:https://blogc
2022-05-19
LSM-tree 一种高效的索引数据结构
论文TheLogStructureMergeTree(LSMtree)(http://wwwgooglecommy/url?sat&rctj&q&esrcs&sourceweb&cd4&cadrja&
2022-05-18
面试经历: 毕业一年腾讯前端社招初探
这次很印象深刻,因为挺别扭的,和我预期差很多,要好好反思背景:17年毕业211末流小硕,某上市小公司工作一年多1电话面说明一下双向绑定原理简单,手撸过就是面试官问到如何对div进行双向绑定有点蒙圈当然
2022-05-17
时间复杂度和空间复杂度,排序算法
一。时间复杂度和空间复杂度时间复杂度是,衡量算法是否优秀的一个标准,其概念是大概一个算法运行需要的时间。空间复杂度是一个算法在运行的时候,所消耗的空间。O(1)<O(logn)<O(n)&
2022-05-16
如何培养编程所需要的逻辑思维?
很少有人能单单通过所谓“逻辑思维”从复杂问题快速找到抽象的,如果有这样的人,他的经验,工具,方法和直觉通常起到比逻辑思维更重要的作用。写代码需要逻辑思维,但解决复杂问题更需要理解分析,写代码只是解决问
2022-05-16
1
2
3
4
5
6
7
8
9
10
11