算法
文章平均质量分 70
阿楠不会敲代码
这个作者很懒,什么都没留下…
展开
-
哈希表详解
哈希表是数组的一种扩展,底层依赖数组支持按照下标快速访问元素的特性,可以通过hash函数将元素的键值映射为下标,然后将对应下标的数据存储在数组中的对应位置。当按照键值查询元素时,使用相同的Hash函数将key转换为数组的下标,从数组中按照下标对应的位置获取数据。哈希函数常常应用于:安全加密、唯一标识、数据校验、负载均衡、数据分片和分布式存储等,不同场景下对哈希函数的要求不同解决哈希冲突的常见方法有开放地址法和链表法开放地址法: 一旦出现Hash值冲突则通过重新位置的探索整个哈希表,时间复杂度为O(n)链原创 2022-07-01 23:39:54 · 483 阅读 · 0 评论 -
Java实现二叉树
二叉树就是每个结点最多有两个子节点,分别称为左孩子节点和右孩子节点,具体的存储方式有基于指针的链式存储和基于数组的顺序存储,最常见的是基于指针的方式(基于数组的方式浪费内存)。...原创 2022-05-03 11:30:18 · 84 阅读 · 0 评论 -
力扣牛客经典习题
练习题1.计算输入数的阶乘循环和递归(1)递归public static int func1(int n){ int res = 1; if(n==1){ return 1; } for (int i = 1; i <= n; i++) { res*=i; } return res;}(2)递归递归的条件:可以通过递归调用来缩小问题规模,且新问题与原问题有着相同的形式。(自身调用自身)存在一种能够简单情景,可以使递归在简单情境加退出。(结束递归)递归三原创 2021-11-12 20:33:05 · 1073 阅读 · 0 评论