自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 N皇后

N皇后class Solution { public int totalNQueens(int n) { int[] ans = new int[1]; int[] res = new int[n]; queen(0,n,ans,res); return ans[0]; } public void queen...

2020-05-05 21:08:43 114

原创 Java 条件等待和可重入锁实现生产者消费者工作过程

生产者消费者import java.util.concurrent.locks.Condition;import java.util.concurrent.locks.ReentrantLock;import static java.lang.Thread.sleep;public class Main{ class Depository{ int macNum...

2020-04-17 17:00:06 149

原创 牛牛找工作

package com.company;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.*;public class Main { static class Job implements Comparable&...

2020-04-15 20:54:23 123

原创 二分查找

class Solution { public int search(int[] nums, int target) { int l=0,r=nums.length-1; int mid = (l+r)>>1; while(l<r){ if(nums[mid] < target){ ...

2020-04-15 18:21:42 90

原创 牛客--放小球问题

牛客–放小球问题问题描述:n个桶中小球的个数已知,可以操作k次(每次从桶中取出一个球,或者添加一个球),每个桶有规定的最大容量,到最大容量不能放球,桶里没球了也不能拿球.求操作k次后两相邻桶之间的最大差值的平方输入示例: 5, 4, [1,2,3,4,5], [15,15,15,15,15]解释:5个桶 操作4次 桶内的小球分别是1,2,3,4,5 桶的最大容量都是15clas...

2020-04-14 21:11:38 538

原创 牛客--一样的水

50%测试案例未超时,其余超时,但是锻炼思路的一种解法import java.util.*;public class Solution { /** * * @param n int整型 水桶的个数 * @param q int整型 询问的次数 * @param a int整型一维数组 n个水桶中初始水的体积 * @param p ...

2020-04-13 16:18:21 105

原创 牛客选靓号即拼多多20200410笔试第三题

链接:https://www.nowcoder.com/questionTerminal/005af31a10834b3688911463065ab47d?orderByHotValue=0&mutiTagIds=579&page=2&onlyReference=false来源:牛客网A 国的手机号码由且仅由 N 位十进制数字(0-9)组成。一个手机号码中有至少 K 位...

2020-04-12 12:26:01 249 1

原创 牛客--矩阵最小路径和

import java.util.*;public class Main{ public static void main(String[] args){ Scanner s = new Scanner(System.in); int n = s.nextInt(); int m = s.nextInt(); int[][...

2020-04-10 16:46:34 126

原创 牛客--派对的最大快乐值

牛客–派对的最大快乐值java总共花了24M内存用了3.5s,醉了…还是c++猛…import java.util.*;public class Main{ static class Node{ //Integer leader; ArrayList<Integer> workers; int happy; ...

2020-04-10 13:10:11 520

原创 头条一面挂经

头条一面挂经以下记录的都是没答上来的问题:1.可以作为GCroots的对象: 虚拟机栈中引用的对象, 方法区中类静态属性引用的对象, 方法区中常量引用的对象 JNI中引用的对象2.循环引用怎么解决 java中不存在循环引用 c++的循环引用是用weak_ptr来解决的3.垃圾收集具体是怎么执行的? 可达性分析,oopmap4.volatile的实现原理: java的内存模...

2020-04-09 22:31:02 138

原创 leetcode84

单调栈的妙用//普通解法class Solution { public int largestRectangleArea(int[] heights) { if(heights==null||heights.length == 0) return 0; //双指针法 int left = 0; int right = heigh...

2020-04-09 11:56:06 86

原创 依赖AQS的ReentrantLock和CountDownLatch实现原理

CountDownLatch实现原理1.CountDownLatch在构造时传递的参数int值用来初始化 AQS的state值(其实是AQS的实现类Sync)2.一旦有一个线程调用await()就要去获取锁tryAcquireSharedNanos(), state不为0就获取不到. 所以入队等着3.只要有一个线程调用了countDown()就会使state-1(用CAS操作确定其原...

2020-04-09 09:16:19 326

原创 Java GC垃圾收集器

Java GC垃圾收集器常用命令:-XX:+PrintGCDetails-XX:+PrintCommandLineFlags-XX:ParallelGCThreads1.serial + serialOld-XX:+UseSerialGC 对应日志的新生代老年代名字 DefNew Tenured 2.ParNew + serialOld 将不推荐 对应日志 Pa...

2020-04-08 16:19:57 75

原创 Mysql事务和索引

Mysql事务和索引数据库ACID的特性Atom 原子Consisitance 一致Isolation 隔离Durability 持久性mysql数据库为了保证事务之间的隔离性实现了四个隔离级别:读未提交==============mvcc====================读已提交(解决了脏读) 事务开启之后ReadView可变可重复读(默认状态...

2020-04-08 14:13:02 87

原创 操作系统进程相关

操作系统进程相关进程线程处理机调度三级调度:1.作业调度(高级调度):外存中处于后备状态的作业,给它分配内存和输入/输出等必要的资源(内存与辅存之间)2.内存调度(中级调度):使进程挂起,或者使进程就绪3.进程调度(低级调度):就绪---->执行调度方式:抢占式(常用)非抢占式(实现简单,系统开销小)调度算法:1.FCFS(先来先服务)2.SJF/SPF(短作业...

2020-04-07 15:08:13 77

原创 leetcode72 字符串的编辑距离(难题)

class Solution { public int minDistance(String word1, String word2) { //动态规划:dp[i][j]表示word1中前i个字符串和word2中前j个字符串的编辑距离 int len1 = word1.length(); int len2 = word2.length();...

2020-04-06 12:13:29 117

原创 leetcode208字典树

class Trie { Trie[] childNodes = new Trie[27]; /** Initialize your data structure here. */ public Trie() { } /** Inserts a word into the trie. */ public void insert...

2020-04-06 10:17:13 74

原创 Mybatis流程梳理

Mybatis源码解读关键对象类型:DefaultSqlSessionFactory------>ConfigrationDefaultSqlSession---->Configration,Executor四大对象:Executor(SIMPLE REUSE BATCH)StatementHandlerParameterHandlerResultSetHandl...

2020-04-05 18:27:05 81

原创 Spring监听机制的解读

Spring监听机制的解读首先,明确监听机制的设计模式是观察者模式那么先复习一下观察者模式的实现方式class Listener{ void onEVentPublished(){ //在事件发生时这个方法被回调 System.out.println("Event published!!!"); }}class Event{ List<Listeners>...

2020-04-04 21:09:47 98

原创 leetcode51 n皇后问题递归解法

class Solution { public List<List<String>> solveNQueens(int n) { List<List<String>> ret = new ArrayList<>(); char[][] table = new char[n][n]; ...

2020-04-03 23:09:12 68

原创 牛客字符串转整数,注意正负号的溢出

牛客字符串转整数import java.util.*;public class Solution { public int StrToInt(String str) { if(str==null||str.equals("")) return 0; int ans = 0; int sign = 1; int i = 0...

2020-03-31 09:49:28 106

原创 只用位运算实现两数相加(考虑负数)

只用位运算实现两数相加(考虑负数)//整个程序没有出现+ - * /import java.util.*;public class Solution { public static int Add(int num1,int num2) { int bit1 = 0; int bit2 = 0; int tmp = 0;//当前位计算结果...

2020-03-30 21:32:06 512 4

原创 leetcode59旋转填入数组

class Solution { public int[][] generateMatrix(int n) { int[][] ret = new int[n][n]; int dir = 0;//控制方向0向右,1向下,2向左,3向上 int cnt = 1; int len = n*n; int row =...

2020-03-29 20:06:15 74

原创 695岛屿问题

class Solution { public int maxAreaOfIsland(int[][] grid) { int max = 0; int high = grid.length; int width = grid[0].length; for(int i=0;i<high;i++){ ...

2020-03-15 09:32:57 77

原创 摩尔投票

摩尔投票class Solution { public List<Integer> majorityElement(int[] nums) { List<Integer> ret = new ArrayList<>(); //给定一个大小为 n 的数组,找出其中所有出现超过 ⌊ n/3 ⌋ 次的元素 //...

2020-03-14 10:29:59 184

原创 Spring原理解析

Spring1.加载bean原理ApplicationContext app = new ClassPathXmlApplicationContext("applicationContext.xml"); //扫描applicationContext.xml,将其中的bean配置读入,并且用工厂生成对应的bean实例(最早期)//现在更流行用注解,一个@Bean就搞定了@Configu...

2020-02-20 17:14:24 126

原创 Spring Boot 工程目录解析

Spring Boot 工程目录解析(newbeemall)与mybatis相关的工程目录dao层的*Mapper.java这个路径下的Mapper会被扫描,是因为下面这段代码中配置了@MapperScan("ltd.newbee.mall.dao")@MapperScan("ltd.newbee.mall.dao")//这里是指示@SpringBootApplicationpub...

2020-02-15 12:42:05 225

原创 windows socket编程demo

WINDOWS SOCKET编程示例注意要点:服务端客户端代码看见没,套接字编程在代码层面全程不用知道客户端的ip和port,下面的协议栈会自己检测的。但是套接字实际上是要用到客户端的ip和port来唯一确定一个套接字的。注意要点:服务端1.加载socket库;2.建立socket;3.sever地址填充;4.绑定server的socket和地址;5.开启监听;6.accept等待...

2020-01-11 21:14:06 241

原创 JDK实现动态代理

JDK动态代理实现步骤实例如下:用途实现步骤约定好接口(自定义名字),实现这个接口的类(自定义名字)设为Client代理类 ,一定要实现InvocationHandler接口调用Proxy.newProxyInstance(Client的类加载器,接口列表,绑定的代理类对象)生成proxy实例可以通过proxy.method()调用接口中约定好的方法实例如下:public int...

2019-12-28 20:29:44 80

原创 字符串匹配之Sunday算法的实现

字符串匹配之Sunday算法的实现说一下主要思路:首先,从头开始匹配.每次检查到不匹配时不是向暴力算法那样直接往后移动一位完事.而是遵循以下规则: (为了直观用例子说明)源串:codzfor查找:def第一次从头开始查找,c!=d 匹配失败,看源串中本次匹配结尾位置的后一个字母z,如果z在查找串(def)中没出现,直接将查找串往后移动4个长度变成下面这样:codzfor----...

2019-12-26 17:22:47 108

原创 python

python的面向对象python 一切都是对象python有三种对象,type型 class型 instance型is-king-of,基类与子类关系,用__base__来求基类is-instance-of,类型与实例之间的关系,,用__class__来求具体对象的类型各种对象间的关系如下:...

2019-12-07 22:25:46 61

原创 优先队列JAVA与C++区别

JAVA优先队列package com.bbs.zebro.service;import java.util.Comparator;import java.util.PriorityQueue;import java.util.Queue;public class PriorityQueueTester { public static void main(String[] args...

2019-11-27 14:18:03 244

原创 metaclass,decorations

python遇到的黑魔法__metaclass__在python2中可以对__metaclass__进行赋值来实现对你创造的类进行一些特殊的事情,比如你想规定限定你的类里方法名称全部要大写,真么奇怪的事情怎么做到?在python 3中这个神奇的变量被移除但是可以用另一种形式使用它对上面的例子在python3里重现就是如下代码装饰器非常方便~比如我有一个函数,我让这个函数执行前做不同的事情,并且通过...

2019-11-26 21:02:20 79

原创 sublime快乐使用手册

sublime快乐使用手册host 文件后添加10.128.128.148 windows10.microdone.cn127.0.0.1 license.sublimehq.com127.0.0.1 45.55.255.55127.0.0.1 45.55.41.22310.128.144.153 windows10.microdone.cn然后注册~—– BEGIN LICENS...

2019-11-26 11:58:53 263

原创 流水调度问题(JOHNSON贪心算法)

深刻理解JOHNSON贪心算法中的核心不等式核心其实就是对于流水调度问题,用JOHNSON不等式排序就可以得到解集序列看不懂没关系PPT来了核心其实就是对于流水调度问题,用JOHNSON不等式排序就可以得到解集序列#include<iostream>#include<cstdio>#include<algorithm>#include<cmath...

2019-11-09 00:10:32 4970 2

原创 Mysql

mysql以及navicat(GUI)配置1.mysql下载完整压缩包 解压到任意位置,将压缩包中的bin文件夹设置为环境变量,不然每次命令行都得进这个文件夹来执行启动服务 命令:mysqld --install如果第3步出错,请用管理员模式打开命令行重试数据库初始化 命令:mysqld --initialize进入数据库:mysql -u root -p这个时候问你要密码,密码...

2019-09-26 19:15:04 65

原创 信息熵增的理解和证明

ID3算法中信息熵增的理解熵信息熵增熵理论:万物遵循熵增原理 即 世界各种元素总有一种有序趋于无序的趋势.有序则熵值较低,无序则熵值较高.熵的计算公式(这里仅仅讨论离散型):ShannoEnt=−pi∑i=0nlog⁡2(pi)ShannoEnt = -p_i\sum_{i=0}^{n}\log_2(p_i)ShannoEnt=−pi​i=0∑n​log2​(pi​)...

2019-05-10 13:34:01 2839

空空如也

空空如也

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

TA关注的人

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