自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 收藏
  • 关注

原创 【恋上数据结构,Alibaba高并发业务秒杀系统落地实战文档

int[] faces = { 1, 5, 20, 25 }; // 给定的面值数组for (int face : faces) { // 如果我要凑的钱是20元, 那么我肯定用不到25元面值 if (face > n) break; // 用不到的面值不用初始化 dp[face] = 1; // 初始化可能用到的面值}return coins(n, dp);}static int coins(int n, int[] dp) {// 递归基if (n <

2021-08-10 21:34:51 126

原创 【恋上数据结构(1),尚硅谷Java全套视频

③ 递推(自底向上)动态规划中的 “动态” 可以理解为是 “会变化的状态”;① 定义状态(状态是原问题、子问题的解)比如定义 d p ( i ) dp(i) dp(i) 的含义② 设置初始状态(边界)比如设置 d p ( 0 ) dp(0) dp(0) 的值③ 确定状态转移方程比如确定 d p ( i ) dp(i) dp(i) 和 d p ( i − 1 ) dp(i - 1) dp(i−1) 的关系动态规划的一些概念维基百科的解释:Dynamic Programm

2021-08-10 21:33:42 111

原创 【开发必备,华为Java高级工程师面试题

如果现在有这么一个需求:在我们的应用程序的第一个版本中,它是没有授权功能,现在的需求是要加一个授权功能。在上面的示例中,在我们操作订单信息之前(不管是查询还是修改)添加一个检查用户是否为admin的功能。实现此功能的一种方法是创建Authorization类和isAuthorized方法来检查用户是否被授权。那么我们需要更新OrderServiceImpl的所有方法,并通过调用isAuthorized方法来检查授权。@Componentpublic class OrderServiceImpl {

2021-08-10 21:32:29 160

原创 【实习之T100开发,linux初学者入门书籍

2、点击 【字段定义清单】,先将一些固定的拖入,然后拖入流水号(等等自定义),完成后点【字段定义完成】。azzq090 字段属性树状查询3、将流水号按要求自定义完成后点【确定】。4、必须【执行异动】,消除前面的感叹号!以下操作可以在设计器里进行…5、【栏位设计资料维护】设置 [状态码]6、【栏位设计资料维护】设置 [查询时开窗设置]7、建表 (修改标准表)1、搜索一个标准表 xmda,并【签出】。2、对字段进行需要的修改,然后【执行异动】。3、【DBA】专用前三个分别点

2021-08-10 21:31:17 182

原创 【实习之T100开发(3),Java面试总结

单档程序只需要一张表,双档需要建多张表。1. 建立单头表单头一般是主档企业代码、营运据点基本是必要的,其他按需求设置。字段设置完毕后,【执行异动】2. 建立单身表单身一般是明细档单身表与单头表的主键位置需要一一对应,不然自动生成的SQL语句会关联错误。单头表的顺序是:企业代码(主)、营运据点、单号(主)、…则单身表的顺序必须是:企业代码(主)、营运据点、单号(主)、…单身表一定会比单头表多1个主键。字段设置完毕后,【执行异动】3. 单身表 中建立主外键关联.

2021-08-10 21:30:06 283

原创 【实习之T100开发(2),Java详解

查看自己当前用户:id切换其他用户身份:su - tiptop在Linux系统中使用以下文件来管理用户和群组信息:/etc/passwd 存放用户信息/etc/group 存放群组定义信息/etc/shadow 存放用户密码信息 shell中,每个用户登录后,都会自动执行其主目录下的 .profile文件,我们可以编辑该文件,在其中设定一些环境变量或预执行操作。Linux中,以 "." 开头的文件属于隐藏文件,ls -a可以查看这些隐藏文件;隐藏文件不见,但可直接进行编辑。任何目

2021-08-10 21:28:52 204

原创 【实习之T100开发(1),极客时间

首先要通过 r.t (adzi140) 建立表azzi900 建立 程序代号程序代号是唯一的。azzi910 建立 作业代号一个程序代号可以被多个作业使用。通过设计器 - 规格(签出规格)规格相当于画面。通过设计器 - 程序(签出程序)adzp168 通过画面产生器产生画面通过设计器 - 规格(下载规格)r.q 开窗,r.v 校验带值(根据需求设定)通过设计器 - 程序(下载程序)通过设计器 - 档案(开启规格档案)- 修改程序 - 上传程序

2021-08-10 21:27:41 361

原创 【大牛疯狂教学,AcWing 1532

输出样例1:4 11输入样例2:7 141 8 7 2 4 11 15输出样例2:No Solution[]()什么是双指针算法?简介双指针算法应用非常广泛,而它能够拿出来作为一种效率较高的算法是因为它和普通的暴力搜索相比,为组合项固定了一些顺序,直接排除了一些组合选项。其思路就是,每次两个指针里面,一个指针负责循环遍历,另一个指针负责检查条件,配合。模板for (int i = 0, j = 0; i < n; i ++ ){ while (j < i

2021-08-10 21:26:36 51

原创 字节跳动今日学习内容,toString()、String

2、封装类型(1)toString ok(2)String.valueOf()自然也是可以的。(3)封装类型也无法强转3、null值问题(1)toString()报空指针异常(2)String.valueOf()返回字符串“null”(3)null值强转成功三、源码分析1、toString()2、String.valueOf()String.valueOf()比toString多了一个非空判断。四、总结1、toString(),可能会抛空指针异常在这种使用.

2021-08-07 14:50:54 68

原创 字节跳动Java面试,这13道面试常问Redis面试题,你能答对几道

Redis zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。zset的成员是唯一的,但分数(score)却可以重复。2、什么是Redis持久化?Redis有哪几种持久化方式?优缺点是什么?持久化就是把内存的数据写到磁盘中去,防止服务宕机了内存数据丢失。Redis 提供了两种持久化方式:RDB(默认) 和AOFRDB:rdb是Redis DataBase

2021-08-07 14:49:36 269

原创 字节跳动Java面试,【数据结构与算法 7(1)

三、中缀表达式转后缀表达式这个有一个固定的思路,就像降龙十八掌秘籍一样,照着练就行了,如果你非要自创黯然销魂掌,你得自断一臂,不建议。1、初始化两个栈:运算符栈s1和储存中间结果栈s2;2、从右至左扫描中缀表达式;3、遇到操作数时,将其压入s2;4、遇到运算符时,比较其与s1栈顶运算符的优先级:(1)如果s1为空,或栈顶运算符为左括号“(”,则直接将此运算符入栈;(2)否则,若优先级比栈顶运算符的高,也将运算符压入s1;(3)否则,将s1栈顶的运算.

2021-08-07 14:48:17 85

原创 字节跳动Java面试,Java EE的断路器API设计

此外,有一种说法是你所做的是保守而你所接受的是自由。同样,企业应用程序在拒绝技术上易于理解但不完全遵循规范的消息时不应过于严格。超时为了避免死锁情况,建立同步通信的超时至关重要。超时是活动之间的关系,当应用程序继续能够处理传入请求时,以及当我们拒绝处理可能很快成功完成的请求时,进行权衡。虽然超时对于各种同步通信至关重要,但我们将专注于HTTP调用。<span style="color:#333333">@ApplicationScoped<strong>public<

2021-08-07 14:46:57 105

原创 字节跳动+腾讯+华为+小米+阿里面试题分享,java-注解(1)

2.**可以被其他程序(比如:编译器等)读取**Annotation的格式:​ 注解是以"@注释名"在代码中存在的,还可以添加一些参数值,例如:​ @SuppressWarnings(value=“unchecked”)Annotation在哪里使用​ 可以附加到package,class,method,field等上面,相当于给他们添加了额外的辅助信息,我们可以通过反射机制编程实现对这些元数据的访问内置注解@Override:定义在Java.lang.Override中,此注释只适用于修

2021-08-07 14:45:42 90

原创 太爽了!花了6个月18天

P8大佬自编笔记——JVM内存整理以及GC调优:P8大佬自编笔记——JVM内存区域划分:JVM学习笔记总结:线程JVM内存区域JVM运行内存垃圾回收与算法Java四种引用类型GC分代收集算法 VS 分区收集算法GC垃圾收集器JAVA IO/NIOJVM类加载机制大厂必问JVM技术栈,都在这张图上:Part 4Netty与RPC网络编程我愿意称Netty为王,Netty的底层就是NIO网络编程+线程池组,很多消息中间件的底层就是Netty,因此如果你的项目里用到了Ne

2021-08-07 14:44:20 78

原创 大型网站演变中的负载均衡场景

创业阶段创业初期很多资源的限制,一切以业务为核心,能够正常使用就可以了,因为流量不是很大,所以这个阶段的什么集群、高可用、负载均衡就没有了这个阶段服务器的不可用,影响不是太大,因为在尝试阶段,都是种子用户进行尝试业务小型阶段业务得到市场认可,用户活跃基数慢慢变大,需要考虑****到系统的可用性和负载问题到这个阶段一般会保证web应用服务的可用性和负载,做Web应用集群。这个利用nginx的负载均衡的功能。保证用户基本服务。这里就第一个负载均衡场景。web服务的集群化,就会碰到用户sessio

2021-08-07 14:42:58 107

原创 基于java SSM医药住院管理系统设计和实现

护理中心:=====统计中心:药品管理:主要对药品的入库 发放 退药/查询/以及库存查询等操作用户模块管理:医生管理:医生基本信息的管理以及操作系统配置:源码结构:sql ER图表设计:相关系统设计实现推荐:基于java springboot+mybatis电影售票网站管理系统前台+后台设计和实现基于java ssm springboot+mybatis酒庄内部管理系统设计和实现基于JAVA springboot+mybatis智慧生活分享平台设计.

2021-08-07 14:41:36 91

原创 想搞定大厂面试官?一个月面试了3家大厂Java岗,我发现这几个突破点

前言先给大家看看我所面试的这几家大厂的任职要求:字节跳动高级工程师:1、计算机相关专业统招本科及以上学历,3年以上云服务开发经验;2、扎实的编程基础,精通Java开发语言,熟悉JVM,web开发、缓存、消息中间件等核心技术;3、具备大型分布式,高并发高可用系统的设计和优化经验;4、精通Java相关的主流开源框架,能了解到它的原理和机制;5、具备产品意识,思路清晰,良好的沟通能力和技术学习能力研发架构师:1、扎实的java基础,精通Java EE、数据库、缓存、消息队列、索引等技术;2

2021-08-05 16:26:51 152 1

原创 想提高开发效率的必看!RabbitMQ的高级特性和消息补偿机制

confirm 确认模式:当消息从 producer 发送到 exchange 则会执行 confirmCallback中的confirm方法。return 退回模式:当消息发送给Exchange后, Exchange将消息路由到queue失败会执行ReturnCallBack。确认模式会返回{1.相关配置信息, 2.交换机是否成功接收到消息 , true 成功 false失败 3.失败原因 }回退模式会返回{1.消息对象,2.错误码,3.错误信息,4.交换机名称,5.路由键}2.Consumer

2021-08-05 16:25:44 160

原创 想拿高工资?MySQL高可用之主备同步:MySQL是如何保证主备一致的

主备同步,也叫主从复制,是MySQL提供的一种高可用的解决方案,保证主备数据一致性的解决方案。在生产环境中,会有很多不可控因素,例如数据库服务挂了。为了保证应用的高可用,数据库也必须要是高可用的。因此在生产环境中,都会采用主备同步。在应用的规模不大的情况下,一般会采用一主一备。除了上面提到的数据库服务挂了,能够快速切换到备库,避免应用的不可用外,采用主备同步还有以下好处:提升数据库的读并发性,大多数应用都是读比写要多,采用主备同步方案,当使用规模越来越大的时候,可以扩展备库来提升读能力。备份,主备

2021-08-05 16:24:42 92

原创 总结一下,为了进大厂

这里就不多涉及,我们直接看技术面。技术面问题:======hashMap原理,put和resize过程线程池类型concurrentHashMap分段锁原理,用java8实现和java7有什么区别B-树B+树区别,数据库索引原理,组合索引怎么使用?最左匹配的原理spring生命周期,几种scope区别,aop实现有哪几种实现,接口***和类***会有什么区别斐波拉契数列非递归实现短URL实现让你来设计咸鱼,你会怎么设计?模型设计linux常用指令,软

2021-08-05 16:23:36 80

原创 怎么入门Java?深入理解Java虚拟机(二

=========1、编译器优化-泛型:1、泛型出现之前存在的问题:所有对象的类型都继承自Object,虚拟机只有到运行时才能知道这个Object具体是什么类型,在编译期是无法检查这个Object是否强制转型成功,会将ClassCaseException的风险转移到程序运行期。2、泛型的作用:通过泛型,编译器可以在编译阶段发现类型不一致的问题3、泛型擦除:将Java代码编译成Class文件,通过反编译发现泛型都不见了,被替换为原生类型,并插入强制转型的代码。//泛型擦除前List&lt

2021-08-05 16:22:41 50

转载 怎么入门Java?HarmonyOS与Android的全面对比

2.2 系统定位2.3 内核对比2.4 运行速度三、方舟编译器一、前言这段时间我在寻思着学习一下鸿蒙,第一是因为在着手做一个自己的开源项目,技术选型的时候想到了鸿蒙;第二是我个人非常看好鸿蒙系统的未来,清楚明白华为和一些民族企业担负的责任和国人的期待,虽然带着一些民族感情;鸿蒙刚发布的时候自己是非常激动的,但是后来项目太忙一直没有认真的去了解过,这次打算花一部分时间认认真真的去研究学习一下。于是我开始试探性的去请教身边的大佬们,公司的CTO、中台部门的总监、老东家数十年行业经验的老架构、

2021-08-05 16:21:46 350 1

原创 快速学会!秘辛:2019上半年程序员生存报告

2019年最流行的编程语言是什么?程序员更喜欢猫还是狗?程序员半数都单身是真的吗?哪个城市的程序员最幸福?##语言篇**Java:**最流行的主要编程语言;**Go:**最有前途的编程语言;**Python:**学习最多的语言;Java 8是使用最多的版本,是83% java开发人员的共同选择;Spring Boot已成为最流行的Java web框架。1、程序员擅长的编程语言:调查发现擅长前端的JavaScript和后端Java的程序员非常多。与市场需求吻合,前端工程师需求非常大,至

2021-08-05 16:20:35 105

原创 快速上手!你知道如何用面向对象思想写好并发编程吗?

public class SafeWM { // 库存上限 private final AtomicLong upper = new AtomicLong(0); // 库存下限 private final AtomicLong lower = new AtomicLong(0); // 设置库存上限 void setUpper(long v){ upper.set(v); } // 设置库存下限 void setLower(long v){ lower.se

2021-08-05 16:19:30 79

原创 快点来学吧!培训机构出来的同学背了这些面试题

说说你对Java反射的理解说说你对Java注解的理解说说你对依赖注入的理解说一下泛型原理,并举例说明Java中String的了解String为什么要设计成不可变的?Object类的equal和hashCode方法重写,为什么?三.数据结构常用数据结构简介并发集合了解哪些?列举java的集合以及集合之间的继承关系集合类以及集合框架容器类介绍以及之间的区别(容器类估计很多人没听这个词,Java容器主要可以划分为4个部分:List列表、Set集合、Map映射、工具类(Iterator迭代器

2021-08-05 16:18:23 126

原创 快点来学吧!208道最常见的Java面试题整理(面试必备

7.java 中操作字符串都有哪些类?它们之间有什么区别?8.String str="i"与 String str=new String(“i”)一样吗?9.如何将字符串反转?10.String 类的常用方法都有那些?11.抽象类必须要有抽象方法吗?12.普通类和抽象类有哪些区别?13.抽象类能使用 final 修饰吗?14.接口和抽象类有什么区别?15.java 中 IO 流分为几种?16.BIO、NIO、AIO 有什么区别?17.Files的常用方法都有哪些?容器======1

2021-08-05 16:17:22 158

原创 太赞了!Eclipse中查看源代码

在eclipse中可以通过Ctrl+左键单击查看源代码:但是刚开始使用时会出现以下情况:找到jdk的安装位置,可以看到一个src.zip文件,这就是jdk的源代码,我们先把路径复制下来:点击Attach Source…按钮,进行配置:也可以点击:window-》preferences-》java-》Installed JREs找到rt.jar结尾的路径,之后点击Source Attachment…点击选择External location,直接将之前复制的路径粘过来即可:

2021-08-04 23:51:31 1037

原创 太现实了!【Spring注解驱动开发

@since 3.1*/public interface Aware {}可以看到,Aware接口是Spring 3.1版本中引入的接口,在Aware接口中,并未定义任何方法。接下来,我们看看都有哪些接口继承了Aware接口,如下所示。![](https://upload-images.jianshu.io/upload_images/24195226-208cd59e6a23affc.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/.

2021-08-04 23:50:16 87

原创 太牛了!Python帮你分析孙猴子在大闹天宫时出现了几回?

jieba库常用函数精确模式全模式搜索引擎模式自定义分词添加中文分词案例首先在这里祝各位互联网的大佬们****节日快乐,永远暴富!我是灰小猿,一个超会写bug的程序猿!ieba库是Python中一个重要的第三方中文分词函数库,由于该库是第三方库,并不是Python自带的模块,因此需要通过pip命令进行安装,pip安装命令如下:pip install jiebajieba库的原理是利用一个中文词库,将待分词的内容与分词词库进行对比,通过图结构和动态规划的方法找到最大概率的词组

2021-08-04 23:48:59 149

原创 太完整了!Java树结构实际应用(平衡二叉树-AVL树

SNode newNode = new SNode(value); newNode.right = right; newNode.left = left.right; value = left.value; left = left.left; right = newNode;}# 6、应用案例-双旋转前面的两个数列,进行单旋转(即一次旋转)就可以将非平衡二叉树转成平衡二叉树,但是在某些情况下,单旋转不能完成平衡二叉树的转换。比如数列in...

2021-08-04 23:47:36 136

原创 太完整了!Java中高级核心知识全面解析(16)

finalCount.incrementAndGet(); } }); System.out.printf("实际的数据量: %d, 判断存在的数据量: %d \n", size, count.get()); // 验证10个不存在的数 count = new AtomicInteger(); while (count.get() < 10) { int key = random.nextInt(); if (existentNumbers.contains(key)) {..

2021-08-04 23:46:18 112

原创 从外包到拿下阿里offer,详解系列文章

咱先来聊聊Redis像Redis的基础入门,掌握下图这几个列出来的知识点足以了。进阶的话,就得下点功夫了,事务、主从复制、哨兵、集群等等之类的搞不明白你就上不去呀。再看美团亿级流量Redis实战,Redis分布式锁、session、缓存与数据库一致性问题、缓存雪崩等之类的都是重中之重的技术点,必须掌握,没得商量。看了这些个技术点,那么我现在就来考考你一些Redis面试问题(准备好,接招吧):为什么要用redis? /为什么要用缓存?为什么要用redis而不用map/guava做缓存?如

2021-07-30 00:37:10 138

原创 从入门到核心实战,架构师必备技能

专题5:Java序列化1、什么是java序列化,如何实现java序列化?2、保存(持久化)对象及其状态到内存或者磁盘3、序列化对象以字节数组保持-静态成员不保存4、序列化用户远程对象传输5、Serializable 实现序列化6、writeObject 和 readObject 自定义序列化策略7、序列化 ID8、序列化并不保存静态变量9、Transient 关键字阻止该变量被序列化到文件中10、序列化(深 clone 一中实现)专题6:J

2021-07-30 00:36:15 185

原创 从JDK源码学习Hashmap,2021最新版!

大数据、算法项目在任何大厂无论是面试还是工作运用都是非常广泛的,我们精选了50个百度、腾讯、阿里等大厂的大数据、算法落地经验甩给大家,千万不要做收藏党哦,空闲时间记得随时看看!如果你没有大厂项目经验,对大厂算法、大数据的项目运用不了解建议你看看!算法大数据基于知识图谱的语义理解技术及应用-百度知识图谱在人工智能应用中的重要价值日益突显。百度构建了超大规模的通用知识图谱,并在搜索、 推荐、智能交互等多项产品中广泛应用。同时,随着文本、语音、视觉等智能技术的不断深入,知识图谱在复杂知识表示、多模

2021-07-30 00:34:28 95

原创 今年最新整理的《高频Java面试题集合》,稳进大厂

一、Java 虚拟机架构 (JVM Architecture)在我看来,不管学习什么样的知识或技术,首先要做的就是从全局上去认识它,这样才能避免盲人摸象,事倍功半的情况发生。既然要学习 JVM,就要先了解它的整体架构,于是我画了个 JVM 架构图来帮助大家认识它。Java 虚拟机架构图对 JVM 还不太了解的同学第一次看到这张花里胡哨的图肯定会一脸懵逼,不用怕,其实我们只需要重点理解并掌握其中一部分 (同时也是面试重点) 就好了,比如运行时数据区、垃圾收集器、内存分配策略和类加载机制等,类文件结

2021-07-30 00:33:40 110

原创 什么是分布式系统,如何学习分布式系统?完整版开放下载

第1章:Dubbo的简史、后续的规划和整体架构大图————Dubbo高性能RPC通信框架1.1应用架构演进过程1.2 Dubbo 简介1.3 Dubbo总体大图第2章:Dubbo的环境配置和基于Dubbo开发第一款应用程序————开发第一款Dubbo 应用程序2.1配置开发环境2.2基于XML配置实现2.3基于注解实现2.4基于API实现2.5构建并运行第3章:Dubbo内置的常用注册中心的实现原理————Dubbo注册中心3.1注册中心概述3.2订阅/发布

2021-07-30 00:31:05 76

空空如也

空空如也

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

TA关注的人

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