自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 剑指offer

剑指offer

2022-08-25 21:03:33 74 1

原创 腾讯50题

腾讯50

2022-08-01 18:16:22 97

原创 hot100 哈希

leetcode hash

2022-07-25 21:18:40 79

原创 hot 100深度优先

hot100 深度优先

2022-07-18 21:29:17 101

原创 hot 100 动态规划

动态规划

2022-07-12 23:24:26 77

原创 【无标题】

Algorithm

2022-04-21 00:26:47 196

原创 并发编程1-2

理解上下文切换在多线程编程中,线程个数一般多于CPU个数,而每一个CPU同时只能被一个线程使用,为了让用户感觉线程是在同时进行的,CPU资源的分配采用了时间片轮转的策略,也就是给每个线程分配一个时间片,线程在时间片内占用CPU执行任务,当前线程时间片使用完后,就会处于就绪状态并让出CPU让其他线程使用,这就是上下文切换。同时线程还需要保存当前线程的执行现场。上下文切换的时机有,当前线程时间片使用完处于就绪状态,当前线程被其他线程中断。线程死锁线程死锁是指,两个或两个以上的线程在执行过程中,因争夺资源

2021-04-19 20:36:35 55

原创 java并发编程之美1-1

线程创建与运行线程基础继承Thread类实现Runnable接口FutureTask线程通知和等待wait()wait(long timeout)函数线程基础继承Thread类public static class MyThread extends Thread{ @Override public void run() { System.out.println("i am a student"); } } pub

2021-04-11 21:05:17 71

原创 剑指offer 青蛙跳楼梯

题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。(变态跳楼梯)解题思路1.数学归纳因为n级台阶,第一步有n种跳法:跳1级、跳2级、到跳n级跳1级,剩下n-1级,则剩下跳法是f(n-1)跳2级,剩下n-2级,则剩下跳法是f(n-2)所以f(n)=f(n-1)+f(n-2)+…+f(1)因为f(n-1)=f(n-2)...

2020-03-28 13:40:04 161

原创 springboot学习(被虐)日记 day1

springboot是怎么把我虐哭的教训一:早点规划自己的人生!**教训二:不要看太久之前的!**本系列长期更新,今天2020/3/28不知道有多少童鞋大三大四自己感觉在校成绩还不错,python、java、c艹甚至Scala都学过,但是真正在找实习甚至找工作的时候才会发现,啊,原来我就学了点皮毛上的草履虫。从10天前准备找实习开始,开始看面经,看一篇不会一篇,甚至Java面对对象是什么都说不...

2020-03-28 00:48:18 157

原创 线程池总结

一 使用线程池的好处池化技术相比大家已经屡见不鲜了,线程池、数据库连接池、Http 连接池等等都是对这个思想的应用。池化技术的思想主要是为了减少每次获取资源的消耗,提高对资源的利用率。降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。提高响应速度。当任务到达时,任务可以不需要的等到线程创建就能立即执行。提高线程的可管理性。线程是稀缺资源,如果无限制的创建,不仅会消耗系统资...

2020-03-26 20:55:48 205

原创 剑指offer 05 两个栈实现队列

两个栈实现队列题目描述思路分析题目描述用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。思路分析比如我push 1,2,3 ,pop ,pop,push4,5,pop,pop,pop结果应该为1,2,3,4,5(先入先出)每次push都在stack1 push进去,重点是每次pop的时候我们先把stack1里面的数值都pop进stack2里,比如s...

2020-03-26 17:55:35 46

原创 大白话说说synchronized关键词的三种用法

synchronized关键字的作用域synchronized关键字的作用域有二种:某个对象实例内,synchronized aMethod(){}可以防止多个线程同时访问这个对象的synchronized方法(如果一个对象有多个synchronized方法,只要一个线 程访问了其中的一个synchronized方法,其它线程不能同时访问这个对象中任何一个synchronized方法)。这时,...

2020-03-26 17:11:43 158

原创 ThreadLocal到底在干嘛?

threadlocal使用Treadlocal 简介Treadlocal 原理两种方法的比较ThreadLocal 内存泄露问题Treadlocal 简介通常情况下,我们创建的变量是可以被任何一个线程访问并修改的。如果想实现每一个线程都有自己的专属本地变量该如何解决呢? JDK中提供的ThreadLocal类正是为了解决这样的问题。 ThreadLocal类主要解决的就是让每个线程绑定自己的值...

2020-03-26 16:49:11 138

原创 剑☞offer04 重建二叉树

题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。题解先序遍历就是先输出root节点在左节点再右节点,中序遍历就是先左再root最后右节点根据先序遍历,我们可以知道这棵树的root节点,即root ...

2020-03-26 13:28:09 62

原创 理解不能的锁们

锁资料重组可重入锁不可重入锁的死锁公平锁与非公平锁公平锁非公平锁synchronized 和ReentrantLock方法区别Java多线程的wait()方法和notify()方法这两个方法是成对出现和使用的,要执行这两个方法,有一个前提就是,当前线程必须获其对象的monitor(俗称“锁”),否则会抛出IllegalMonitorStateException异常,所以这两个方法必须在同步块代...

2020-03-26 11:00:18 76

原创 剑☞offer—— 链表逆序

链表逆序输入一个链表,按链表从尾到头的顺序返回一个ArrayList。链表逆序输入一个链表,按链表从尾到头的顺序返回一个ArrayList。方法很多,因为我对链表不熟悉所以着重看了链表逆序排列,其他相对简单的方法还有Stack(我为啥没想到!),递归和放到ArrayList之后再循环逆序。链表逆序着重标记!** 先让p==null;才能让链表的尾连上null注意temp = q.ne...

2020-03-25 22:57:26 73

原创 ☞offer--2

这里写目录标题题目描述直接利用replace无脑操作不用replace 根据空格的数量移动字符,然后插入"%20"题目描述请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。直接利用replace无脑操作```javapublic class Solution { publi...

2020-03-25 21:24:37 111

原创 第一篇试水--☞offer

知识输出试水题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。解法最笨的方法 循环public class Solution { public boolean Find(int target, int [][] array) {...

2020-03-25 20:47:37 81

空空如也

空空如也

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

TA关注的人

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