- 最近抽空看了一点《深入理解Java虚拟机》,本篇文章主要来总结一下Java虚拟机内存的各个区域,以及这些区域的作用、服务对象以及其中可能产生的问题,作为大家的面试宝典。首先我们来看一下Java运行时的数据区域,Java虚拟机在执行Java程序的过程中会把它所管理的内存划分成若干个不同的数据区域,这些区域都有各自的用途,各自的创建和销毁的时间。有的区域随着虚拟机进程的启动而存在,有些区域则依赖... 最近抽空看了一点《深入理解Java虚拟机》,本篇文章主要来总结一下Java虚拟机内存的各个区域,以及这些区域的作用、服务对象以及其中可能产生的问题,作为大家的面试宝典。首先我们来看一下Java运行时的数据区域,Java虚拟机在执行Java程序的过程中会把它所管理的内存划分成若干个不同的数据区域,这些区域都有各自的用途,各自的创建和销毁的时间。有的区域随着虚拟机进程的启动而存在,有些区域则依赖...
- 一、前言我们都知道,当今无论在BAT这样的大公司,还是各种各样的小公司,甚至是传统行业刚转互联网的企业都开始使用分布式架构,那么什么叫分布式架构呢?分布式架构有什么好处呢?分布式架构经过了怎样的发展呢?是哪家企业开启了分布式架构的时代呢?读完本文,你就会得到这些答案,下面让我们一起来开启分布式概述的奇妙之旅吧!二、分布式架构的发展历史1946年2.14日,那是一个浪漫的情人节 , 世界上第一... 一、前言我们都知道,当今无论在BAT这样的大公司,还是各种各样的小公司,甚至是传统行业刚转互联网的企业都开始使用分布式架构,那么什么叫分布式架构呢?分布式架构有什么好处呢?分布式架构经过了怎样的发展呢?是哪家企业开启了分布式架构的时代呢?读完本文,你就会得到这些答案,下面让我们一起来开启分布式概述的奇妙之旅吧!二、分布式架构的发展历史1946年2.14日,那是一个浪漫的情人节 , 世界上第一...
- 一,题记所有的业务系统,都有生成ID的需求,如订单id,商品id,文章ID等。这个ID会是数据库中的唯一主键,在它上面会建立聚集索引!ID生成的核心需求有两点:全局唯一趋势有序二,为什么要全局唯一?著名的例子就是身份证号码,身份证号码确实是对人唯一的,然而一个人是可以办理多个身份证的,例如你身份证丢了,又重新补办了一张,号码不变。问题来了,因为系统是按照身份证号码做唯一主键的。此时,如果身份... 一,题记所有的业务系统,都有生成ID的需求,如订单id,商品id,文章ID等。这个ID会是数据库中的唯一主键,在它上面会建立聚集索引!ID生成的核心需求有两点:全局唯一趋势有序二,为什么要全局唯一?著名的例子就是身份证号码,身份证号码确实是对人唯一的,然而一个人是可以办理多个身份证的,例如你身份证丢了,又重新补办了一张,号码不变。问题来了,因为系统是按照身份证号码做唯一主键的。此时,如果身份...
- 位算法的效率有多快我就不说,不信你可以去用 10 亿个数据模拟一下,今天给大家讲一讲位运算的一些经典例子。不过,最重要的不是看懂了这些例子就好,而是要在以后多去运用位运算这些技巧,当然,采用位运算,也是可以装逼的,不信,你往下看。我会从最简单的讲起,一道比一道难度递增,不过居然是讲技巧,那么也不会太难,相信你分分钟看懂。判断奇偶数判断一个数是基于还是偶数,相信很多人都做过,一般的做法的代码如... 位算法的效率有多快我就不说,不信你可以去用 10 亿个数据模拟一下,今天给大家讲一讲位运算的一些经典例子。不过,最重要的不是看懂了这些例子就好,而是要在以后多去运用位运算这些技巧,当然,采用位运算,也是可以装逼的,不信,你往下看。我会从最简单的讲起,一道比一道难度递增,不过居然是讲技巧,那么也不会太难,相信你分分钟看懂。判断奇偶数判断一个数是基于还是偶数,相信很多人都做过,一般的做法的代码如...
- 写在之前我们都知道,对于同一个问题来说,可以有多种解决问题的算法。尽管算法不是唯一的,但是对于问题本身来说相对好的算法还是存在的,这里可能有人会问区分好坏的标准是什么?这个要从「时效」和「存储」两方面来看。人总是贪婪的,在做一件事的时候,我们总是期望着可以付出最少的时间、精力或者金钱来获得最大的回报,这个类比到算法上也同样适用,那就是花最少的时间和最少的存储做成最棒的解决办法,所以好的算法应... 写在之前我们都知道,对于同一个问题来说,可以有多种解决问题的算法。尽管算法不是唯一的,但是对于问题本身来说相对好的算法还是存在的,这里可能有人会问区分好坏的标准是什么?这个要从「时效」和「存储」两方面来看。人总是贪婪的,在做一件事的时候,我们总是期望着可以付出最少的时间、精力或者金钱来获得最大的回报,这个类比到算法上也同样适用,那就是花最少的时间和最少的存储做成最棒的解决办法,所以好的算法应...
- 之前我写过一篇深度技术文:我敢说,这图绝对跟你想象中的不太一样!在这篇文章里我详细分析了图这种数据结构。本文是基于图这种数据结构,介绍一个排序算法:拓扑排序。准确的说,应该叫“有向图的拓扑排序”。所谓的有向图,就是 A -> B,但不能 B -> A。与无向图的区别是,它的边在邻接矩阵里只有一项(这些东西,我在上面的文章中都有详细的描述)。有向图的邻接矩阵如下:所以针对前面讨论的无向图,邻接... 之前我写过一篇深度技术文:我敢说,这图绝对跟你想象中的不太一样!在这篇文章里我详细分析了图这种数据结构。本文是基于图这种数据结构,介绍一个排序算法:拓扑排序。准确的说,应该叫“有向图的拓扑排序”。所谓的有向图,就是 A -> B,但不能 B -> A。与无向图的区别是,它的边在邻接矩阵里只有一项(这些东西,我在上面的文章中都有详细的描述)。有向图的邻接矩阵如下:所以针对前面讨论的无向图,邻接...
- 今天来讨论下归并排序。只要五分钟便能掌握归并排序的原理。归并算法的中心是归并两个已经有序的数组。归并两个有序数组 A 和 B,就生成了第三个数组 C,数组 C 包含数组 A 和 B 的所有数据项,并且使它们有序的排列在数组 C 中。首先我们来看看归并的过程,然后看它是如何在排序中使用的。假设有两个有序数组,不要求有相同的大小。设数组 A 有 4 个数据项,数组 B 有 6 个数据项,它们要被... 今天来讨论下归并排序。只要五分钟便能掌握归并排序的原理。归并算法的中心是归并两个已经有序的数组。归并两个有序数组 A 和 B,就生成了第三个数组 C,数组 C 包含数组 A 和 B 的所有数据项,并且使它们有序的排列在数组 C 中。首先我们来看看归并的过程,然后看它是如何在排序中使用的。假设有两个有序数组,不要求有相同的大小。设数组 A 有 4 个数据项,数组 B 有 6 个数据项,它们要被...
- 这是一篇技术文,继续提升一下我们的内功。从之前一篇文章:我敢说,这图绝对跟你想象中的不太一样!。可以看到,图的边可以有方向,那么这一篇文章,我们来探讨一下边的另一个特性:权值。例如,如果带权图的顶点代表城市,边的权可能代表城市之间的距离,或者城市之间的路费,或者之间的车流量等等。带权图归根究底还是图,前一篇文章中那些图的基本操作,例如广度优先搜索和深度优先搜索等都是一样的,本文主要来探讨一下... 这是一篇技术文,继续提升一下我们的内功。从之前一篇文章:我敢说,这图绝对跟你想象中的不太一样!。可以看到,图的边可以有方向,那么这一篇文章,我们来探讨一下边的另一个特性:权值。例如,如果带权图的顶点代表城市,边的权可能代表城市之间的距离,或者城市之间的路费,或者之间的车流量等等。带权图归根究底还是图,前一篇文章中那些图的基本操作,例如广度优先搜索和深度优先搜索等都是一样的,本文主要来探讨一下...
- 我没骗你们,这个图的确不是你想象中的图。你想看什么图我还不知道? 不过,我的图却是大千世界,继续以通俗易懂的方式给你提升一波内功。不信你继续往下读。图是一种与树有些相像的数据结构,实际上,从数学意义上说,树是图的一种。然而在计算机程序设计中,图的应用方式与树不同。我前面一些文章中讨论的数据结构都有一个框架,这个框架都是由相应的算法设定的。比如说,二叉树是那样一个形状,就是因为那样的形状使它更... 我没骗你们,这个图的确不是你想象中的图。你想看什么图我还不知道? 不过,我的图却是大千世界,继续以通俗易懂的方式给你提升一波内功。不信你继续往下读。图是一种与树有些相像的数据结构,实际上,从数学意义上说,树是图的一种。然而在计算机程序设计中,图的应用方式与树不同。我前面一些文章中讨论的数据结构都有一个框架,这个框架都是由相应的算法设定的。比如说,二叉树是那样一个形状,就是因为那样的形状使它更...
- 我所写的这些数据结构,都是比较经典的,也是面试中经常会出现的,这篇文章我就不闲扯了,全是干货,如果你能读完,希望对你有所帮助~ 哈希表也称为散列表,是根据关键字值(key value)而直接进行访问的数据结构。也就是说,它通过把关键字值映射到一个位置来访问记录,以加快查找的速度。这个映射函数称为哈希函数(也称为散列函数),映射过程称为哈希化,存放记录的数组叫做散列表。比如我们可以用下面的方法... 我所写的这些数据结构,都是比较经典的,也是面试中经常会出现的,这篇文章我就不闲扯了,全是干货,如果你能读完,希望对你有所帮助~ 哈希表也称为散列表,是根据关键字值(key value)而直接进行访问的数据结构。也就是说,它通过把关键字值映射到一个位置来访问记录,以加快查找的速度。这个映射函数称为哈希函数(也称为散列函数),映射过程称为哈希化,存放记录的数组叫做散列表。比如我们可以用下面的方法...
- 我之前写过一篇文章:下次面试若再被问到二叉树,希望你能对答如流!没错,二叉搜索树是个很好的数据结构,可以快速地找到一个给定关键字的数据项,并且可以快速地插入和删除数据项。但是二叉搜索树有个很麻烦的问题,如果树中插入的是随机数据,则执行效果很好,但如果插入的是有序或者逆序的数据,那么二叉搜索树的执行速度就变得很慢。因为当插入数值有序时,二叉树就是非平衡的了,它的快速查找、插入和删除指定数据项的... 我之前写过一篇文章:下次面试若再被问到二叉树,希望你能对答如流!没错,二叉搜索树是个很好的数据结构,可以快速地找到一个给定关键字的数据项,并且可以快速地插入和删除数据项。但是二叉搜索树有个很麻烦的问题,如果树中插入的是随机数据,则执行效果很好,但如果插入的是有序或者逆序的数据,那么二叉搜索树的执行速度就变得很慢。因为当插入数值有序时,二叉树就是非平衡的了,它的快速查找、插入和删除指定数据项的...
- 来源:http://suo.im/5e8a94一、概述1.MongoDB是什么?用一句话总结MongoDB是一款为web应用程序和互联网基础设施设计的数据库管理系统。没错MongoDB就是数据库,是NoSQL类型的数据库。2.为什么要使用MongoDB?(1)MongoDB提出的是文档、集合的概念,使用BSON(类JSON)作为其数据模型结构,其结构是面向对象的而不是二维表,存储一个用户在M... 来源:http://suo.im/5e8a94一、概述1.MongoDB是什么?用一句话总结MongoDB是一款为web应用程序和互联网基础设施设计的数据库管理系统。没错MongoDB就是数据库,是NoSQL类型的数据库。2.为什么要使用MongoDB?(1)MongoDB提出的是文档、集合的概念,使用BSON(类JSON)作为其数据模型结构,其结构是面向对象的而不是二维表,存储一个用户在M...
- 今天带各位回顾一下线性数据结构:数组、链表、栈、队列,相信通过下面的文字,你会加深对这几种数据结构的认识。一 数组数组(Array) 是一种很常见的数据结构。它是由相同类型的元素(element)的集合所组成,并且被分配一块连续的内存来存储(与链表对比)。利用元素的索引(index)可以计算出该元素对应的存储地址。它的特点是提供随机访问并且容量有限。假如数组的长度为 n。访问:O(1)//访... 今天带各位回顾一下线性数据结构:数组、链表、栈、队列,相信通过下面的文字,你会加深对这几种数据结构的认识。一 数组数组(Array) 是一种很常见的数据结构。它是由相同类型的元素(element)的集合所组成,并且被分配一块连续的内存来存储(与链表对比)。利用元素的索引(index)可以计算出该元素对应的存储地址。它的特点是提供随机访问并且容量有限。假如数组的长度为 n。访问:O(1)//访...
- Spring Cloud Config Server最常见是将配置文件放在本地或者远程Git仓库,放在本地是将将所有的配置文件统一写在Config Server工程目录下,如果需要修改配置,需要重启config server;放在Git仓库,是将配置统一放在Git仓库,可以利用Git仓库的版本控制。本文将介绍使用另外一种方式存放配置信息,即将配置存放在Mysql中。整个流程:Config S... Spring Cloud Config Server最常见是将配置文件放在本地或者远程Git仓库,放在本地是将将所有的配置文件统一写在Config Server工程目录下,如果需要修改配置,需要重启config server;放在Git仓库,是将配置统一放在Git仓库,可以利用Git仓库的版本控制。本文将介绍使用另外一种方式存放配置信息,即将配置存放在Mysql中。整个流程:Config S...
- 本文转载自公众号 美团技术团队大家好,美美今天给大家推荐一篇Java字节码增强技术的文章,在实际工作中有很多应用场景。美团点评技术团队平日积累了很多这类技术原理解析和实战类的文章,未来我们会选取精华,陆续发布,敬请期待。1. 字节码1.1 什么是字节码?Java之所以可以“一次编译,到处运行”,一是因为JVM针对各种操作系统、平台都进行了定制,二是因为无论在什么平台,都可以编译生成固定格式... 本文转载自公众号 美团技术团队大家好,美美今天给大家推荐一篇Java字节码增强技术的文章,在实际工作中有很多应用场景。美团点评技术团队平日积累了很多这类技术原理解析和实战类的文章,未来我们会选取精华,陆续发布,敬请期待。1. 字节码1.1 什么是字节码?Java之所以可以“一次编译,到处运行”,一是因为JVM针对各种操作系统、平台都进行了定制,二是因为无论在什么平台,都可以编译生成固定格式...
上滑加载中
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签