![](https://img-blog.csdnimg.cn/20210805134207174.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
算法与数据结构
文章平均质量分 55
主要记录数据结构与算法,以及java.util中的容器类
Luo_CC
这个作者很懒,什么都没留下…
展开
-
动态规划练习入门(斐波拉契数列)
算法这一块,动态规划问题的一般形式就是求最值,在计算机问题上应用比较多,需要多探究,这是我对动态规划的一个练习入门-斐波拉契数列/** * 斐波拉契 练习动态规划 * { 1 , n=1 | n=2 * f(x) = { * { f(x-2) + f(x-1) * @author */public class Fibonacci { /** * 暴力递归 直接根据方程进行递归, * 但是这种方法 会重复计算多次 * 如原创 2021-01-28 17:25:48 · 118 阅读 · 0 评论 -
算法与数据结构(java数据结构)
数据结构:存储数据的结构算法:操作数据的方法 如何操作数据效率高,更节约资源数据结构可分为 线性结构、树形结构、图动画效果线性表数据像线一样排列 主要有:数组、链表、队列、栈等数组线性表结构,用一组连续的内存空间来存储相同类型的数据如 [1,2,3,4,5,6,7,8,9…,n]逻辑结构:数组a有n个元素,可表示为(a1,a2,a3..an)物理结构:在连续的内存空间存储数组,设置每个元素的下标进行查找数据访问: a[i] = bassAdd.原创 2020-12-31 14:10:04 · 294 阅读 · 0 评论 -
算法与数据结构(算法)
算法时间复杂度T(n) = O(f(n)) 大O计算法 代码执行次数最多原则进行计算1.O(1) 常量级可数的量时即为O(1) 如循环次数为100次也为O(1)2.O(n) 线性级时间复杂度根据n增长而增长3.O(log2n)、O(nlog2n) 对数级执行x次大于n时,2x=n -> x=log2 nwihle(i<n){ i = i*2 }空间复杂度1.O(1) 常量级可数的量时即为O(1) 如int i = 0;2.O(n) 线性级原创 2021-01-05 16:54:17 · 480 阅读 · 0 评论 -
【程序员思维】用两个鸡蛋判断鸡蛋在多少楼层扔下不会碎
题目:如果你有两个鸡蛋,并且想搞清楚在不摔破鸡蛋的前提下最高能从多高的地方往下扔鸡蛋,你会采取怎样的做法?最优的解决方案是哪种?解题思维:如果鸡蛋刚好在n层碎掉,那么说明鸡蛋在n-1层不会碎。设 楼层高度为m层 ,先用第一个鸡蛋在m/2层扔下1)如果碎掉,即最坏可能,第二个鸡蛋只能从1层到(m/2-1)层继续依次扔下,测试刚好碎掉的楼层n,这样需要操作n次2)如果未碎掉,则我们再将...原创 2021-08-05 13:57:53 · 1756 阅读 · 0 评论 -
LRU缓存,基于哈希表与链表实现
public class LRUCache<K,V> { class DLinkedNode{ K key; V value; DLinkedNode prev; DLinkedNode next; public DLinkedNode() {} public DLinkedNode(K _key, V _value) {key = _key; value = _value;} }原创 2021-05-24 16:49:48 · 149 阅读 · 0 评论 -
JAVA面试题整理大全(三、容器)
18. Java 容器都有哪些?1)Collection:一个独立元素的序列,这些元素都服从一条或者多条规则。 List必须按照插入的顺序保存元素,而set不能有重复的元素。Queue按照排队规则来确定对象产生的顺序(通常与它们被插入的顺序相同)。2)Map:一组成对的“键值对”对象,允许你使用键来查找值。原创 2020-08-07 13:18:14 · 205 阅读 · 0 评论