- 博客(17)
- 资源 (20)
- 收藏
- 关注
原创 二分搜索
以为很麻烦,得调试一下,没想到这也太简单了????public class BinarySearch { public int search(int[] nums, int target) { int i = 0; int j = nums.length-1; int mid; while(i <= j){ mid = (i+j)/2; if(nums[mid] ==
2020-06-30 10:08:45 154
原创 LRU缓存机制
运用你所掌握的数据结构,设计和实现一个LRU (最近最少使用) 缓存机制。它应该支持以下操作: 获取数据get和 写入数据put。获取数据get(key)- 如果关键字 (key) 存在于缓存中,则获取关键字的值(总是正数),否则返回 -1。写入数据put(key, value)- 如果关键字已经存在,则变更其数据值;如果关键字不存在,则插入该组「关键字/值」。当缓存容量达到上限时,它应该在写入新数据之前删除最久未使用的数据值,从而为新的数据值留出空间。进阶:你是否可以在...
2020-06-30 09:20:00 335
原创 数据量单位
按顺序给出数据存储单位:bit、Byte、KB、MB、GB、TB、PB、EB、ZB、YB、BB、NB、DB 1Byte = 8bit 1K = 1024Byte 1MB = 1024K 1G = 1024M 1T = 1024G 1P = 1024T
2020-06-29 21:28:42 4414
原创 静态代理和动态代理
一、静态代理静态代理很简单,其实就类似于装饰者模式,再次封装一次的意思。看一下静态代理最基本、最简单的实现过程:1、(接口类)父类接口:package proxy;public interface UserManager { // 负责user方法执行 public void UserOpotion();}2、(委托类)实现父类接口,实现基本方法package proxy;public class UserManagementImpl im..
2020-06-29 09:32:19 252
原创 快速排序Java实现
按照快排的思想写了写快排,也不知道有没有bug,不过我觉得这个代码的关键点是:// 此时分为两部分,分别操作qs(nums, low, index - 1);qs(nums, index+1, high);这一部分,一开始我把low和high写错了,导致看了好久不知道哪里错了????package test;public class Test { private void qs(int []nums, int i, int j){ for(int
2020-06-29 08:26:34 332 1
原创 字符串的排列
这道题就是自己写全排序,这个在以前一直是我的痛点,虽然现在不是了????,但是还是记录一下。输入一个字符串,打印出该字符串中字符的所有排列。你可以以任意顺序返回这个字符串数组,但里面不能有重复元素。示例:输入:s = "abc"输出:["abc","acb","bac","bca","cab","cba"]class Solution { List<List> ls = new ArrayList<>(); public void
2020-06-28 20:08:01 191
原创 连续子数组的最大和
这个题不难,不过我对我的做法很满意,所以记录一下。输入一个整型数组,数组里有正数也有负数。数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。要求时间复杂度为O(n)。示例1:输入: nums = [-2,1,-3,4,-1,2,1,-5,4]输出: 6解释:连续子数组[4,-1,2,1] 的和最大,为6。class Solution { public int maxSubArray(int[] nums) { // 动态规划...
2020-06-28 20:04:27 150
原创 三数之和(递归超时了)
给你一个包含n个整数的数组nums,判断nums中是否存在三个元素a,b,c ,使得a + b + c =0 ?请你找出所有满足条件且不重复的三元组。注意:答案中不可以包含重复的三元组。示例:给定数组 nums = [-1, 0, 1, 2, -1, -4],满足要求的三元组集合为:[ [-1, 0, 1], [-1, -1, 2]]标准做法看了看解析 ,是用三指针去做的,只需要考虑全面一点,没有什么难度。我是用了递归,超时了,可能受到之前写全排列的...
2020-06-28 19:57:29 266
原创 MongoDB概述
1、什么是MongoDB?MongoDB是一个开源、高性能、无模式的文档型数据库; 设计是用于简化开发和方便扩展; NoSQL数据库; 最像关系型数据库(MySQL)的非关系型数据库; 它支持的数据结构Binary JSON:BSON,所以它既可以存储比较复杂的数据类型,又相当的灵活; MongoDB中的记录是一个文档,它是一个由字段和值对(field:value)组成的数据结构;2、MySQL和MongoDB对比3、什么时候选择MongoDB?数据量大(mysq..
2020-06-28 17:07:27 321
原创 Java实现小根堆和大根堆(PriorityQueue)
Java里面的PriorityQueue底层默认使用的堆,所以我们使用PriorityQueue就能实现堆的功能。1、小根堆实现package test;import java.util.Comparator;import java.util.PriorityQueue;/* add 增加一个元索 如果队列已满,则抛出一个IIIegaISlabEepeplian异常 remove 移除并返回队列头部的元素 如果队列为空,则抛出一个NoSuchElementExceptio
2020-06-28 08:23:01 3502 4
原创 Redis底层
0、redis中字符串的实现方式和redis对象字符串的实现方式:简单动态字符串(simple dynamic string,SDS)作为 Redis 的默认字符串表示。structsdshdr{ //记录buf数组中已使用字节的数量 //等于 SDS 保存字符串的长度 4byte intlen; //记录 buf 数组中未使用字节的数量 4byte intfree; //字节数组,用于保存字符串 字节\0结尾的字符串占用了1byte ...
2020-06-26 18:40:51 287
原创 Collection接口实现类下的默认初始容量、扩容时机、扩容策略
集合类 默认初始容量 何时扩容 扩容策略 ArrayList 10 满时 扩充为原来的2倍:10 * 2 = 20 Vector 10 满时 增量为原来的0.5倍+1:10 + 10 * 0.5 + 1 = 16 HashSet 16 加载因子0.75 扩充为原来的2倍:16 * 2 = 32 HashMap 16 加载因子0.75 扩充为原来的2倍:16 * 2 = 32 HashTable
2020-06-26 09:09:15 333
原创 SpringBoot自动装配原理
我们知道SpringBoot简化了Spring的配置,提供了一站式的J2EE解决方案,其中最重要的元素之一就是提供了自动配置功能。那SpringBoot的自动装配原理是什么呢?@SpringBootApplication注解表示一个类为启动类,它是一个复合注解。 在@SpringBootApplication中有个很重要的注解:@EnableAutoConfiguration注解,该注解也是个复合注解。 在@EnableAutoConfiguration中有个很重要的注解:@Import注解。
2020-06-25 11:36:26 143
原创 Flume详解
1、为什么选用Flume?(快、实时处理、不同介质的读取速度不一致,影响数据传输)2、Flume组成架构(主要在Agent:source、channel、sink)3、Flume Agent内部原理4、案例监听数据端口案例分析实时读取本地文件到HDFS案例实时读取目录文件到HDFS案例单数据源多出口案例5、其他Flume是Apache的顶级项目 重构后的版本统称为 Flume NG Flume...
2020-06-25 09:01:26 461
原创 MAC系统下测试IP+端口
首先给大家示范一个错误的写法:想要知道其中某个端口的系统是否可以访问通,一般的ping命令是解决不了这个问题的,因为不管在windows下还是linux或者mac下,ping命令只能跟IP地址或者域名,是不能加端口访问的。mac下的写法:...
2020-06-20 20:52:50 10336 2
原创 java中对map根据value进行排序(Integer、String均使用)
1、声明一个hashmap对象Map<Integer, Integer> map = new HashMap<Integer, Integer>();2、put数据3、通过ArrayList构造函数把map.entrySet()转换成listList<Map.Entry<Integer, Integer>> mappingList = new ArrayList<Map.Entry<Integer, Integer>>
2020-06-14 11:44:51 1680
Linux网站搭建流程
2017-12-22
数学建模教材(精品)
2017-09-27
Linux操作系统实验教程_南大版
2017-09-23
2016年考研核心考点——计算机组成原理
2017-09-23
2016年考研核心考点-----计算机网络
2017-09-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人