ShineYoung

导航

 

2019年3月12日

摘要: 转载自:http://blog.csdn.net/qq_25868207/article/details/55259978 ;##ArrayList实现原理要点概括 参考文献:http://zhangshixi.iteye.com/blog/674856l ArrayList是List接口的可变数组 阅读全文
posted @ 2019-03-12 17:54 ShineYoung 阅读(155) 评论(0) 推荐(0)
 
摘要: (图片来自https://www.cnblogs.com/whgk/p/6138522.html) 先从线程私有区开始介绍 虚拟机栈 Java虚拟机栈是由一个个栈帧组成的,当一个方法被调用时,代表这个方法的栈帧入栈,当这个方法结束时,栈帧出栈。可以理解栈帧为方法的运行空间,存放存储局部变量表、操作数 阅读全文
posted @ 2019-03-12 15:42 ShineYoung 阅读(175) 评论(0) 推荐(0)
 
摘要: 虚拟机是一种抽象化的计算机,通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机有自己完善的硬体架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。Java虚拟机屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上 阅读全文
posted @ 2019-03-12 15:31 ShineYoung 阅读(89) 评论(0) 推荐(0)
 

2019年3月11日

摘要: Java IO Java的输入流和输出流 “流”是指从源“流向”目的地的数据流,Java把各种数据源和目标之间数据的传输统一抽象为流,通过对流的读写操作来实现IO操作 首先通过一张图片来了解Java IO(图片来自菜鸟教程) 看了图片之后可以知道IO操作离不开Reader,Writer,InputS 阅读全文
posted @ 2019-03-11 22:11 ShineYoung 阅读(131) 评论(0) 推荐(0)
 

2019年3月10日

摘要: HDU-1284 题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1284 这是一道背包类型的动态规划题目,题目意思是N块钱,可以有1,2,3元组成,问你有几种兑换方法,简单思考一下,假如说有n元钱,求f(n),f(n)= f(n-1)+f(n-2)+f 阅读全文
posted @ 2019-03-10 12:51 ShineYoung 阅读(135) 评论(0) 推荐(0)
 

2019年3月8日

摘要: 废话少说,先来一道题目 http://acm.hdu.edu.cn/showproblem.php?pid=2544 读题后抽象一下也就是说N是顶点M是边 然后题目要求我们求出顶点1到顶点N的最短路径 先用floyd算法解决(这个算法简单易懂,三层for循环逐个遍历,找出所有点对点之间的最短路径) 阅读全文
posted @ 2019-03-08 16:52 ShineYoung 阅读(301) 评论(0) 推荐(0)
 
摘要: 约瑟夫环问题我首先想到的就是数组模拟,其实也有想过这是有规律的,可以递归求解,但是忘了😂 1.先来说说数组模拟,思想很简单,就是m个人,报数为n的人出圈,即打个标记,遇到这个标记就跳过,直到最后一个人为止,上代码。 上面第一中方法如果m和n的数字小还好,如果很大的话要花费的时间就很长了,所以下面递 阅读全文
posted @ 2019-03-08 13:21 ShineYoung 阅读(202) 评论(0) 推荐(0)
 
摘要: 求解Java一维多项式的通用方法 比如ax^4+bx^3+cx^2+dx+e 可以化为(((ax+b)x+c)x+d)x+e 那么观察规律可以将系数放到一个数组里num[e,d,c,b,a] 通过如上代码递推求解 阅读全文
posted @ 2019-03-08 11:59 ShineYoung 阅读(537) 评论(0) 推荐(0)
 

2019年3月7日

摘要: 最近经常有操作数组的需求,排序,倒转等操作,所以深入了解一下Arrays类 equals(a,b)比较数组a和数组b是否相等 toString(a)输出数组a binarySearch(a,i)二分查找数组a中值等于i的索引位置 sort(a)把数组a从小到大排序 sort(a,cmp)cmp是排序 阅读全文
posted @ 2019-03-07 21:42 ShineYoung 阅读(117) 评论(0) 推荐(0)
 
摘要: 自旋锁 自旋锁顾名思义,它会等待一定时间(自旋),在这期中会什么都不做就是等资源被释放,好处在于没有了内核态用户态切换的效率损失,但是如果它一直不能访问到资源的话就会一直占用cpu资源,所以它会循环一段时间后进入阻塞状态。 重量级锁 synchronized就是重量级锁的实现机制,抢不到资源的进程会 阅读全文
posted @ 2019-03-07 20:28 ShineYoung 阅读(1556) 评论(0) 推荐(0)